Health Check için sunucunun farklı bir IP'sini/portunu kontrol edebilir miyim (Use Different IP for Health Check)?
Kısa cevap
Evet. Kurum Servisinin (ya da Backend Group'un) formunda Details altındaki Use Different IP for Health Check alanında Different Address seçilip IP ve port girilir; health check trafiğin gittiği adres yerine bu adrese yapılır, veri trafiği değişmez. Varsayılan Backend Address'tir. WEB-CLI'da --useDifferentIp true, --differentIp.ip ve --differentIp.port alanları kullanılır; Scenario türünde her alt denetim HC Address alanıyla ayrı bir adrese yöneltilebilir.
Sorun: Uygulamanın Sağlığı Başka Bir Adreste Yayınlanıyor
Bazı uygulamalar sağlık bilgisini trafik portundan farklı bir yönetim portunda (ör. 8081) ya da ayrı bir izleme adresinde yayınlar. Health check trafik adresine yapılırsa bu bilgi okunamaz; denetimin başka bir IP ve porta gitmesi gerekir.
Çözüm: 3 Yöntem
Yöntem 1 ve Yöntem 2 aynı ayarı farklı arayüzlerden yapar ve denetimin tamamını başka adrese yöneltir; Yöntem 3 yalnızca bir senaryonun seçilen alt denetimini yöneltir.
| Durumunuz | Uygun yöntem |
|---|---|
| Kurum Servisi ya da Backend Group'un bütün denetimi başka adrese gitsin | Yöntem 1: Different Address |
| Aynı ayarı WEB-CLI'dan yapıyorum | Yöntem 2: WEB-CLI |
| Senaryonun yalnızca bir alt denetimi başka adrese gitsin | Yöntem 3: Scenario → HC Address |
Yöntem 1: Different Address Önerilen
- Nasıl çalışır Health check girilen IP ve porta yapılır; veri trafiği Address alanındaki adrese gitmeye devam eder. Denetim, Kurum Servisinin Route Table'ı üzerinden gönderilir.
- Nerede açılırLoad Balancer → Backend Services (ya da Backend Groups) → Edit → Details → Use Different IP for Health Check
- Gereksinim Denetlenecek adresin IP olması (alan adı kabul edilmez) ve portun girilmesi; adresin Kurum Servisinin Route table'ından erişilebilir olması; bir Health Check profilinin atanmış olması
- vService tipi Tümü
- Backend Group'ta Alan grup düzeyindedir; gruptaki her sunucu için aynı adres denetlenir ve aynı sonuç bütün sunuculara yansır
Adım adım yapılandırma
Load Balancer → Backend Services yolu izlenir; Kurum Servisine sağ tıklanıp Edit seçilir. Backend Group için Load Balancer → Backend Groups ekranında aynı işlem yapılır.
Formun altındaki Details anahtarı açılır; anahtar varsayılan olarak kapalıdır.
Use Different IP for Health Check alanında Different Address seçilir; alanın varsayılan değeri Backend Address'tir.
Açılan alanlara denetlenecek IP (ör. 192.0.2.24) ve port (ör. 9000) girilir. Port zorunludur; alan adı kabul edilmez.
Formun altındaki Edit butonuna tıklanır. Cluster'da değişiklik varsayılan olarak eş cihaza kendiliğinden aktarılır; Manual Sync Mode açıksa Synchronize ile gönderilir.
Doğrulama
Önizlemenin Details sekmesindeki Use Different IP for Health Check satırı girilen adresi gösterir (Details satırları); Health Check kartında durum görülür.
192.0.2.24 : 9000 · OK (yeşil)Denetlenen sunucuda yeni porta gelen bağlantılar dinlenir.
tcpdump -n 'tcp dst port 9000'Period aralığıyla TR7'den gelen bağlantılarYöntem 2: WEB-CLI
- Nasıl çalışır Farklı adres Kurum Servisi (ya da Backend Group) kaydına
--useDifferentIp true,--differentIp.ipve--differentIp.portalanlarıyla yazılır. - Nerede açılır WEB-CLI →
lb backend update/lb backend-group update(lb backend · Health check alanları) - Gereksinim WEB-CLI erişimi; Kurum Servisi kimliği (
lb backend list) - vService tipi Tümü
Adım adım yapılandırma
Kurum Servisi için:
lb backend update id <backend-kimliği> --useDifferentIp true --differentIp.ip 192.0.2.24 --differentIp.port 9000Backend Group için kimlik lb backend-group list çıktısından alınır:
lb backend-group update id <grup-kimliği> --useDifferentIp true --differentIp.ip 192.0.2.24 --differentIp.port 9000--differentIp.port mutlaka yazılır; port yazılmayan farklı adreste health check yapılmaz.
Doğrulama
Kurum Servisi kaydı görüntülenir.
lb backend show <backend-kimliği>useDifferentIp true, differentIp 192.0.2.24 ve 9000Yöntem 3: Scenario → HC Address
- Nasıl çalışır Scenario türündeki her alt denetimin HC Address alanı Backend Address ya da Static Address olabilir; Static Address seçilen alt denetim, Kurum Servisinin adresi yerine girilen adrese (IP ya da alan adı) ve porta gider. Diğer alt denetimler Kurum Servisinin adresine gitmeye devam eder.
- Nerede açılırLoad Balancer → Profiles → Health Checks → Scenario profili → alt denetim → HC Address (Senaryo içindeki denetimlerin alanları)
- Gereksinim Scenario türünde bir profil
- vService tipi Tümü
Adım adım yapılandırma
Load Balancer → Profiles → Health Checks yolu izlenir; mevcut Scenario profili seçilip Edit'e tıklanır. Profil yoksa Add'e tıklanır, Name girilir ve Check Type alanında Scenario seçilir.
Scenario alanında ilgili alt denetimin üzerine tıklanır; yeni alt denetim için alanın yanındaki + butonuna tıklanır.
HC Address anahtarı açılır; Static Address girişinde adres ve port yazılır (Ping türünde yalnızca adres istenir).
Penceredeki Add (mevcut alt denetimde Edit) butonuna tıklanır; alt denetim senaryoya eklenir.
Formun altındaki Edit (yeni profilde Add) butonuna tıklanır. Yeni profil Kurum Servisinin Health Check alanında seçilir ve Kurum Servisi formu Edit ile kaydedilir.
Doğrulama
Profil önizlemesinin Details sekmesindeki Scenario satırında koşul ağacı ve alt denetimler görünür (Seçilen profilin önizlemesi); Backend Services listesinde Health göstergesine bakılır.
OK (yeşil)Sık Yapılan Hatalar
- Different Address alanına alan adı yazmak. Arayüz yalnızca IP kabul eder; port da zorunludur.
- Use frontend port açıkken denetimin de frontend portuna gideceğini sanmak. Health check Address (ya da Different Address) portunu kullanır.
- Grupta sunucu başına ayrı adres beklemek. Grup düzeyindeki farklı adres bütün sunucular için tek adrestir; sunucu başına ayrı denetim için tekil Kurum Servisleri kullanılır.
- Kaynak adresi değiştirmeyi beklemek. Bu alan yalnızca denetimin hedefini değiştirir; kaynak IP Health Check Source IP alanından seçilir (Health Check paketleri hangi kaynak IP'den gider; bunu değiştirebilir miyim?).
Dokümantasyonda nasıl yapılır
