Sunucu Ayarları
Ayarlar → Sunucu Ayarları, kurulumun açılışta okuduğu ayarları gösterir ve değiştirir: portlar ve adresler, HTTPS’i kimin sunduğu, script ve rapor sınırları, kayıtların ne kadar saklanacağı, küme, Sistem Sağlığı eşikleri. Bunlar bir alanın (space) değil, kurulumun ayarlarıdır: tek süreç, tek port, tek sertifika her alan için geçerlidir.
Kim açabilir
Section titled “Kim açabilir”| Yetki | Ne sağlar |
|---|---|
VIEW_SERVER_SETTINGS | Sayfayı açmak ve Sunucu güncellemesi kartını görmek |
UPDATE_SERVER_SETTINGS | Kaydetmek, sertifikayı değiştirmek, küme denetimini çalıştırmak, servisi yeniden başlatmak, Sunucu güncellemesi kartında bir güncellemeyi indirmek ve kurmak (Güncelleme) |
İkisi de kurulum genelindedir ve varsayılan alanın yönetici rolünde bulunur. Bir kiracı alanının yöneticisi bu sayfayı görmez.
Ayarları kurulumun dışında başka biri yönetiyorsa (örneğin barındırılan bir hizmet), sayfa kapatılmış olabilir; bu durumda ayarlar yerine bunu söyleyen bir cümle görünür.
Sayfa nasıl okunur
Section titled “Sayfa nasıl okunur”Her ayar, çalışan değeriyle birlikte, ayar dosyasının o ayar için tuttuğu değerle yan yana gösterilir:
| Etiket | Anlamı |
|---|---|
| Yeniden başlatma bekliyor | Dosyada kaydedilmiş, ama servis henüz bu değerle açılmadı. Sayfanın üstündeki bildirim bunları sayar: “N ayar sonraki yeniden başlatmada değişecek.” |
| Kilitli | Değer, ayar dosyasının önüne geçen bir yerden geliyor: bir servis parametresi (-D...) ya da bir ortam değişkeni. Etiket nereden geldiğini söyler (örneğin “Ayar dosyasının önüne geçen INS_RABBIT_HOST ortam değişkeniyle verilmiş.”). Bu ayar sayfadan değiştirilemez; servis yapılandırmasından değiştirin ya da orada kaldırıp yönetimi sayfaya bırakın. |
| Varsayılan | Hiçbir yer bu ayarı vermiyor; ürünün kendi varsayılanı çalışıyor. |
Düzenleme çekmecesinde (Düzenle) her alanın altında ayarın anahtarı (örneğin server.port) yazar; servis yapılandırmasında aynı adla verilebilir. Varsayılanı kullan ayarı dosyadan çıkarır, böylece bir alttaki kaynağa — çoğunlukla ürünün varsayılanına — düşer. Parola gibi gizli değerler hiçbir zaman geri gösterilmez: alan yalnızca Ayarlı — değiştirmek için yazın ya da Ayarlanmadı der.
Sekmeler
Section titled “Sekmeler”Görünümde her bölüm bir kart, düzenleme çekmecesinde bir sekmedir; sıra aşağıdaki gibidir.
Kurulumun kendisi için belirlediği ayarlar, ardından Sistem Sağlığı eşikleri ve Saklama süreleri.
| Ayar | Anahtar | Açıklama |
|---|---|---|
| Güncelleme denetimi | ins.update.enabled | Günde bir kez sürüm kaynağına daha yeni bir sürüm çıkıp çıkmadığını sorar ve sürümün altında gösterir; varsayılan olarak açıktır. İnternet erişimi olmayan bir sahada kapatın. Kaynağın adresi (ins.update.url) sayfada yoktur: INS_UPDATE_URL ile ya da bir yapılandırma dosyasında ayarlanır — bkz. Güncelleme. |
| Script süre sınırı | ins.script.execution-timeout | Bundan uzun süren bir script durdurulur (örneğin 300s, 10m). |
| Script komut sınırı | ins.script.max-statement-count | Bir script çalışmasının yürütebileceği en fazla komut. Artırmak sınırı uzağa taşır, kaldırmaz. |
| PDF tarayıcı yolu | ins.report.html.pdf.browser-path | HTML raporları PDF’e çeviren tarayıcı. Boşsa sırasıyla Edge, Chrome, Chromium aranır. |
| PDF tarayıcı argümanları | ins.report.html.pdf.extra-arguments | O tarayıcıya verilecek ek bayraklar, boşlukla ayrılmış. |
| PDF dönüştürme süre sınırı (ms) | ins.report.html.pdf.timeout-ms | Bir raporun PDF’e dönüşmesi için toplam süre, sıra beklemesi dahil. |
| Aynı anda PDF dönüştürme sayısı | ins.report.html.pdf.max-concurrent | Her dönüştürme kendi tarayıcısını açar (~200 MB bellek); yalnızca belleği yeten bir makinede artırın. |
| Rapor yazıcısı (IPP) | ins.report.print.ipp-uri | Zamanlanmış raporların yazdırıldığı yazıcı ya da baskı sunucusu, ipp:// veya ipps:// adresi olarak. Boşsa makinedeki CUPS’un varsayılanı kullanılır; Windows’ta CUPS yoktur, rapor yazdıran bir Windows kurulumu bunu doldurmalıdır. |
| Cihaz gözatma süre sınırı (ms) | ins.connection.browse.max-duration-ms | Bir cihaz gözatmasının (SNMP, OPC UA, IEC 61850, S7, OPC DA/XML) en uzun süresi, en çok 10 dakika. Gözatma sürerken kümede lider devri bekler; makul tutun. |
| İzleme kullanıcısı / İzleme parolası | spring.security.actuator.username / password | Bir izleme aracının sağlık ayrıntılarını okuduğu hesap. Bu olmadan da durum satırı okunur — bkz. Dış izleme. Parolayı ortam değişkeninde vermek daha iyidir. |
Sistem Sağlığı başlığı altında makinenin eşikleri. Sistem Sağlığı bunları açılışta okur, bu yüzden bir değişiklik bir sonraki yeniden başlatmada devreye girer.
| Ayar | Anahtar | Varsayılan | Açıklama |
|---|---|---|---|
| Disk dolu eşiği | management.health.diskspace.threshold | 5GB | Bunun altındaki boş alanda disk fiilen doludur: Disk alanı denetimi Çalışmıyor olur, e-posta gider ve dış izleme alarm verir. Sıfırdan büyük bir boyut (5GB, 500MB). Yaklaşık 50 GB’tan küçük bir diskte, boş disk uyarısından önce gelmemesi için düşürün. |
| Boş disk uyarısı (%) | ins.health.machine.disk-free-warning-percent | 10 | Boş alan diskin bu oranının altına düşünce Boş disk alanı uyarır. 1–99. |
| Kullanılan bellek uyarısı (%) | ins.health.machine.memory-in-use-warning-percent | 90 | Makinede kullanılan bellek uyarı süresi boyunca bu oranın üstünde kalınca uyarır. 1–99. |
| CPU uyarısı (%) | ins.health.machine.system-cpu-warning-percent | 90 | Makinenin CPU yükü uyarı süresi boyunca bu oranın üstünde kalınca uyarır. 1–99. |
| Uyarı süresi | ins.health.machine.warning-window | 15m | Bellek ya da CPU’nun uyarı vermeden önce eşiğin üstünde ne kadar kalması gerektiği; 1 dakika ile 24 saat arası. |
Saklama başlığı altında dokuz gün sayısı: olay günlüğü, oluşan alarmlar, oturum açma denemeleri, yapılandırma / elle yapılan işlem / oluşan alarm denetim kayıtları, gönderilen e-postalar, gönderilen SMS’ler ve sohbet mesajları. Her biri 1–36500 gün; boş bırakılırsa süresiz saklanır.
Erişim ve HTTPS
Section titled “Erişim ve HTTPS”Tarayıcının uygulamayı açtığı adresler, HTTPS’i kimin sunduğu, ardından portlar ve dinleme adresleri.
| Ayar | Anahtar | Açıklama |
|---|---|---|
| Uygulama adresi | ins.app.url | Tarayıcıların uygulamayı açtığı adres. Bildirim e-postalarındaki bağlantı da buradan kurulur. |
| Sandbox adresi | ins.sandbox.url | Sandbox portuyla birlikte uygulama adresi; custom HTML ve animasyonlar buradan yüklenir. |
| HTTPS | server.ssl.enabled | Üç seçenek: HTTPS’i bu uygulama sunar, HTTPS önde bir proxy’de sonlanır, Önde bir proxy, bu sunucuya da HTTPS. |
| Güvenilen proxy’ler | ins.http.trusted-proxies | Öndeki proxy’ler, IP ya da CIDR olarak. İletilen istemci adresine yalnızca bunlardan geldiğinde güvenilir. |
| Uygulama dinleme adresi | server.address | Ana portun bağlandığı adres; boşsa tüm arayüzler. Aynı makinedeki bir proxy’nin arkasında 127.0.0.1. |
| Uygulama portu | server.port | Uygulamanın portu. |
| Sandbox dinleme adresi / Sandbox portu | server.sandbox.address / server.sandbox.port | Sandbox bağlantısının adresi ve portu. |
| Iframe kaynakları | ins.iframe.allowed-hosts | Uygulamanın kendi adresleri dışında, onu gömebilen ve onun gömebileceği kaynaklar. |
| İzin verilen host deseni | ins.allowed-hosts | localhost, 127.x ve 10.66.66.x varsayılanlarının yerini alır; hâlâ kullanılıyorlarsa onları da ekleyin. |
Ayarların altında, ayarlar yüklenemese bile çalışan üç araç:
- Sertifika — sunucunun şu an sunduğu sertifika ve tarayıcının Uygulama adresinde gördüğü sertifika (tarayıcılar güvenir mi, adresi kapsıyor mu, kaç gün kaldı). Değiştir ile bir PKCS#12 (
.p12,.pfx) ya da JKS dosyası yüklenir; önce denetlenir, kullanılabilirse yeniden başlatma olmadan hemen devreye girer (açık oturumlar yeniden bağlanır). Önceki dosya yedek olarak saklanır. - Proxy testi — kendi isteğinizin sunucuya nasıl ulaştığı: hangi proxy’den, proxy güvenilir mi, hangi protokolle.
- Proxy örnekleri — bu sayfadaki değerlerle doldurulmuş Caddy, nginx ve IIS yapılandırmaları; Kopyala ile alınır.
Güvenlik
Section titled “Güvenlik”Kimin imza atması gerektiği, oturumun ne kadar sürdüğü, ardından script’lerin ve bağlantıların nereye ulaşabileceği.
| Ayar | Anahtar | Açıklama |
|---|---|---|
| İmza gerektiren işlemler | ins.auth.esign.required-operations | Elektronik imza olmadan reddedilen işlemler; Tümü (*) hepsi demektir. |
| Oturum süresi (gün) | ins.auth.refresh-token-duration-days | Parola yeniden sorulmadan önce bir oturumun ne kadar sürdüğü. |
| Kilitlenmeden önceki başarısız oturum açma sayısı | ins.auth.attempt.max-auth-attempts | Hesap kilitlenmeden önce art arda yanlış parola sayısı. |
| Kilit süresi (dakika) | ins.auth.attempt.lockout-duration-mins | Kilitlenen hesabın beklemesi gereken süre. |
| Dizin (LDAP) ile oturum açma | ins.ldap.enabled | Kapalıyken hiçbir oturum açma dizine ulaşmaz; bağlantının kendisi LDAP ekranındadır. Yerel hesaplar kendi parolalarıyla girmeye devam eder. |
| Script hata ayıklayıcı | ins.script.debugger.enabled | Debug Script yetkisi olanların kaydedilmiş bir script’i yazma yapmadan adım adım izlemesi. |
| Script’lerin erişebileceği adresler | ins.rest.allowed-hosts | ins.rest(...) çağrılarının gidebileceği adresler. |
| Script’lerin kullanabileceği HTTP yöntemleri | ins.rest.allowed-methods | Boşsa hiçbir yöntem kullanılamaz. |
| Veri kaynaklarının bağlanabileceği adresler | ins.datasource.allowed-hosts | |
| Script’lerin ping atabileceği adresler / portlar | ins.ping.allowed-hosts / ins.ping.allowed-ports | Boşsa hiçbir adrese / porta ping atılamaz. |
| Yayınların gönderilebileceği adresler | ins.broadcast.allowed-hosts | |
| OPC XML-DA’nın bağlanabileceği adresler | ins.opcxml.allowed-hosts | |
| E-posta OAuth belirteç adresleri | ins.mail.oauth.allowed-hosts | Bir e-posta hesabının OAuth2 belirteç adresinin bulunabileceği sunucular. |
İçerik kuralları
Section titled “İçerik kuralları”Custom HTML sayfalarının içerik güvenlik politikası (script-src, style-src, font-src, connect-src, img-src; anahtarlar ins.custom-html.csp.*) ve animasyon / faceplate eleman çerçevelerinin gösterebileceği görsel kaynakları (Eleman görsel kaynakları, ins.element.csp.img-src). Kaynaklar boşlukla ayrılır.
Custom HTML düzenleyicisinin Dış kaynakları yerelleştir özelliği bir CDN dosyasını yalnızca adı tam yazılmış bir sunucudan indirebilir (https://cdn.jsdelivr.net); *.gstatic.com gibi bir joker sayfanın kendisi için çalışır ama indirme için açılmaz. Google Fonts için iki sunucu gerekir: fonts.googleapis.com ve fonts.gstatic.com.
Üç parça: Düğümler, Broker, Redis. Her ayarın anlamı Yedekli Mimari sayfasındadır.
Bağlantıları test et, formdaki değerleri — kaydedilmemişler dahil — bir sonraki açılışın göreceği gibi denetler ve hiçbir şey kaydetmez: “Bir sonraki başlatma kabul edilir.” ya da kümeli açılmayı engelleyen nedenler. Bölümün altındaki Canlı küme durumu şu an çalışanı gösterir.
Bilgi kartları
Section titled “Bilgi kartları”Sayfanın en altında, salt okunur:
- Veri depoları — veritabanı adresi ve kullanıcısı, Redis sunucusu ve portu, InfluxDB adresi ve veritabanı, sürecin çalıştığı haliyle. Bunlar bu sayfadan değiştirilmez: uygulama bunlar olmadan açılamaz, yanlış bir adres kaydedilirse düzeltecek sayfa kalmaz. Veritabanı parolası hiç gösterilmez.
- Ayar dosyası — sayfanın yazdığı dosyanın yolu (
config/application.yml).
Kaydetmek ne yapar
Section titled “Kaydetmek ne yapar”- Önce her değer denetlenir. Geçersiz bir değer, kilitli bir ayar ya da kümeli açılmayı engelleyecek bir küme değişikliği kaydın tamamını reddeder: hiçbir şey yazılmaz, yarım uygulanmış bir form dosyaya ulaşmaz. Hatalı alan kırmızıyla işaretlenir.
- Önceki dosya saklanır (
config/application.yml.bak), yenisi yazılır. Sayfanın sahiplenmediği ayarlar korunur, ama dosyadaki yorum satırları korunmaz. - İmzalanır ve denetim kaydına yazılır. Her kayıt eski ve yeni değerleriyle tek bir denetim satırıdır (gizli değerler değer olarak değil, “ayarlı / yeni değer” olarak). İmza gerektiren işlemler bunu içeriyorsa elektronik imza istenir.
- Bir sonraki yeniden başlatmada devreye girer. Değişen satırlar o zamana kadar Yeniden başlatma bekliyor gösterir.
- Açılış korumasını kurar (aşağıda).
Değiştirilemeyen ayarlar bilinçli olarak sayfada yoktur: veritabanı bağlantısı, INS_MASTER_KEY ve diğer açılış sırları, JVM seçenekleri (heap, saat dilimi) ve kota (kendi ekranı vardır: Kota Politikaları).
Şimdi yeniden başlat
Section titled “Şimdi yeniden başlat”Bekleyen değişiklik bildiriminde, servis yöneticisinin servisi yeniden başlatacağı kanıtlanabiliyorsa Şimdi yeniden başlat düğmesi çıkar. Düğme temiz bir kapanış yapar — süren istekler biter, bağlantılar kendi yollarıyla durur, yazmalar yarıda kesilmez — ve servisi yeniden başlatmayı servis yöneticisine bırakır. Sayfa servis yeniden yanıt verdiğinde kendiliğinden bağlanır ve sonucu söyler:
- “Servis yeni değerlerle yeniden başladı.”
- “Servis yeniden başladı, ancak yeni değerlerle değil…” — yeni değerler açılışı engelledi ve önceki ayar dosyası geri yüklendi (açılış koruması).
- Servis uzun süre yanıt vermezse, sunucuda kontrol etmeniz söylenir.
Yeniden başlatma sırasında oturum açmış kullanıcıların bağlantısı ve cihaz haberleşmesi kısa bir süre kesilir. Bir kümede yalnızca isteği yanıtlayan düğüm yeniden başlar; diğerlerine dokunulmaz. Yeniden başlatma da kayıt gibi imzalanır ve denetim kaydına yazılır.
Hangi kurulumda sunulur
Section titled “Hangi kurulumda sunulur”| Kurulum | Düğme ne zaman çıkar |
|---|---|
| Windows, kurulum programının servisi | Kurulum programının kurduğu servis (NSSM) olduğu gibi uygundur: çıkışta servisi yeniden başlatacak şekilde kurulur. |
| Linux, systemd | Servis bir systemd biriminden doğrudan başlatılmışsa ve birim çıkışta yeniden başlatıyorsa. [Service] bölümünde Restart=on-failure ya da Restart=always yeterlidir (örneğin RestartSec=5 ile). ExecStart Java’yı kendisi başlatmalıdır (ya da onu exec eden bir betik); Java’yı alt süreç olarak çalıştıran bir sarmalayıcı betik uygun değildir. |
Docker, elle java -jar, başka bir servis yöneticisi | Sunulmaz: servisi her zamanki gibi sunucuda yeniden başlatın. |
[Service]Restart=on-failureRestartSec=5Düğme sunulmadığında sayfa nedenini söyler — örneğin “systemd, bu süreç kapandıktan sonra … birimini yeniden başlatmaz; birimde Restart=on-failure ya da Restart=always olmalı.” — ve “Geçerli olmaları için servisi sunucuda yeniden başlatın.” der. Denetim düğmeye basıldığında yeniden yapılır.
Açılış koruması
Section titled “Açılış koruması”Sayfanın kabul ettiği bir değer yine de açılışı engelleyebilir: başka bir programın tuttuğu bir port, yanlış yazılmış bir küme adresi, makinede olmayan bir dinleme adresi. Servis yöneticisi servisi tekrar tekrar başlatır ve her deneme aynı şekilde düşer.
Açılış koruması bunu kendiliğinden geri alır:
- Bir kayıt korumayı kurar. Servis bu ayarlarla hazır duruma gelirse değişiklik kanıtlanmış sayılır ve koruma kalkar.
- Üç başarısız açılıştan sonraki açılışta — dosya hâlâ sayfanın yazdığı haliyse — önceki ayar dosyası geri yüklenir ve servis en son çalışan ayarlarla açılır.
- Sayfa bunu bir sonraki kayda kadar gösterir: ”… tarihinde hizmet, kaydedilen ayarlarla N denemede başlayamadı; bu yüzden önceki ayar dosyası geri yüklendi.” ve Geri alınanlar: ayarların adları. Değeri düzeltip yeniden kaydedin.
Koruma yalnızca sayfanın kaydettiğini geri alır; dosyayı elle düzenlediyseniz ya da değer bir -D veya ortam değişkeninden geliyorsa dokunmaz. Açılışları yalnızca sayar: veritabanının kapalı olması gibi değişiklikle ilgisiz bir nedenle üç kez üst üste açılamayan servis de değişikliği geri alır — sayfa ve log bunu söyler, değişiklik bir kayıt uzaktadır.
Okunamayan ayar dosyası
Section titled “Okunamayan ayar dosyası”config/application.yml elle düzenlenip bozulduysa sayfa yine açılır, ama kırmızı bir bildirim dosyayı, satırı, sütunu ve nedeni söyler; Düzenle kapalıdır ve kayıt reddedilir, böylece elle yazılan dosyanın üzerine yazılmaz. Dosyayı elle düzeltin (ya da application.yml.bak’ı geri koyun) — bir sonraki yeniden başlatmadan önce: servis okuyamadığı bir dosyayla açılmaz.
Aralık dışı değerler
Section titled “Aralık dışı değerler”Sayı ve süre ayarları ürün tarafından da denetlenir — sayfadan, -D’den, ortam değişkeninden ya da elle düzenlemeden gelsin. Aralık dışındaki bir değer açılışı durdurmaz: yerine güvenli bir değer kullanılır — saklama sürelerinde süresiz saklama (hiçbir şey silinmez), diğerlerinde ürünün varsayılanı — ve açılışta bir ERROR satırı yazılır:
Setting ins.retention.event-log-days=0 is outside its valid range (1..36500); it is ignored and keep forever (nothing is deleted) is used instead.Bir dağıtımdan sonra açılış logunda is outside its valid range arayın; temiz bir açılışta bu satır yoktur.
İlgili
Section titled “İlgili”- Sistem Sağlığı — eşiklerin neyi uyardığı ve dış izleme
- Yapılandırma — ana anahtar, sırlar ve servis yapılandırması
- Yedekli Mimari — küme ayarlarının anlamı
- Uygulama E-postası — bildirimlerin gönderildiği hesap