Arka uç düğüm durumunu izlemek için bir hizmette sağlık denetimleri yapılandırın. Ağ geçidi, API kullanılabilirliğini sağlamak amacıyla sağlıklı olmayan düğümleri otomatik olarak devre dışı bırakır veya yalıtır. Panik eşiği, aşırı durumlarda temel hizmet yeteneklerinin korunmasını sağlar.
Kullanım senaryoları
Etkin sağlık denetimi: Ağ geçidi, TCP veya HTTP istekleri göndererek hizmet düğümlerini yoklar. Sağlıklı olmayan düğümler otomatik olarak devre dışı bırakılır ve kurtarıldıktan sonra tekrar kullanıma alınır. Bu yöntem, birden çok çoğaltmaya sahip hizmetler için API kullanılabilirliğini artırır.
Pasif sağlık denetimi: Ağ geçidi, sağlıklı olmayan düğümleri tespit etmek için canlı trafiği izler. Yüksek hata oranına sahip düğümler geçici olarak yalıtılır ve kurtarıldıktan sonra otomatik olarak tekrar kullanıma alınır.
Panik eşiği: Çok az sayıda sağlıklı düğüm kaldığında trafiği tüm düğümlere yönlendirerek yerel hataların küme çapında kesintilere yol açmasını engeller.
Yordam
Bir hizmet oluşturduğunuzda TCP sağlık denetimleri varsayılan olarak etkindir.
API Gateway konsolu üzerinde oturum açın.
Sol gezinme bölmesinde öğelerini tıklayın. Üst gezinme çubuğunda bir bölge seçin.
Instance sayfasında hedef örnek kimliğine tıklayın.
Sol gezinme bölmesinde Service seçeneğine tıklayın. Ardından Services sekmesine tıklayın.
-
Hedef hizmet için Actions sütunundaki Health Check Configuration seçeneğine tıklayın. Sağlık denetimi türüne göre Enable seçeneğini belirleyin ve yapılandırmayı tamamlayın.
Etkin sağlık denetimi
Configure Health Check panelinde Active Health Check seçeneğini etkinleştirin, parametreleri yapılandırın ve OK düğmesine tıklayın.
Parameter
Example
Description
Health check protocol
HTTP
-
TCP: Sunucu bağlantı noktasının yanıt verip vermediğini test etmek için SYN paketleri gönderir.
-
HTTP: Sunucu uygulamasının sağlıklı olup olmadığını kontrol etmek için tarayıcı simülasyonlu bir HTTP isteği gönderir.
Health check path
/
Sağlık denetimi isteği için URI yolu. En iyi sonuçlar için statik bir sayfa kullanın.
Normal status codes
http_2xx
Başarılı bir sağlık denetimini gösteren HTTP durum kodları.
Response timeout
2
Sağlık denetimi yanıtı için maksimum bekleme süresi. Yanıt alınamazsa yoklama başarısız olur. Birim: saniye.
Health check interval
2
Ardışık sağlık denetimi yoklamaları arasındaki süre. Birim: saniye.
Healthy threshold
2
Sağlıklı olmayan bir düğümün sağlıklı olarak işaretlenmesi için gereken ardışık başarılı denetim sayısı.
Unhealthy threshold
2
Sağlıklı bir düğümün sağlıklı olmayan olarak işaretlenmesi için gereken ardışık başarısız denetim sayısı.
Pasif sağlık denetimi
Configure Health Check panelinde Passive Health Check seçeneğini etkinleştirin, parametreleri yapılandırın ve OK düğmesine tıklayın.
Parameter
Example
Description
Failure rate threshold
80
Bir düğümün istek hata oranı bu eşiğe ulaşırsa sistem düğümü hizmet havuzundan çıkarır. Birim: %.
Detection interval
30
Sistemin her düğümün hata oranını hesapladığı süre aralığı. Birim: saniye.
Initial isolation duration
30
Çıkarma işleminden sonraki temel yalıtım süresi. Gerçek süre =k * base_ejection_timeşeklindedir; buradak1'den başlar, her çıkarma işleminde artar ve ardışık başarılı denetimlerden sonra azalır. Birim: saniye.NotPasif sağlık denetimi için ağ geçidi motor sürümünün 2.1.9 veya üzeri olması gerekir.
Pasif sağlık denetimi yapılandırmasının güncellenmesi, sağlık denetimi durumunu sıfırlar ve yalıtılmış tüm düğümleri hizmete geri döndürür.
-
Panik eşiği
Panik eşiği, sistem yükü yüksek olduğunda veya bazı düğümler arızalandığında temel hizmet yeteneklerini korumak amacıyla kullanılabilirlik ile doğruluk arasında denge kurar.
Çalışma mantığı:
Sağlıklı düğüm yüzdesi panik eşiğinden yüksekse sağlık denetimleri normal şekilde çalışır. Sadece sağlıklı düğümler trafik alır.
Sağlıklı düğüm yüzdesi panik eşiğine eşit veya daha düşükse sistem panik moduna geçer. Sağlık denetimleri atlanır ve istekler sağlıklı olmayan veya çıkarılmış düğümler dahil olmak üzere tüm düğümlere eşit olarak dağıtılır.
Trafiğin sağlıklı olmayan düğümlere yönlendirilmesi genel hata toleransını ve kullanılabilirliği artırır.
Panik eşiği varsayılan olarak %1'dir. Sağlıklı düğümler bu yüzdeye veya altına düştüğünde sistem panik moduna geçer ve istekleri tüm düğümlere yönlendirir.
Bu eşiği iş gereksinimlerinize ve olağanüstü durum kurtarma yeteneklerinize göre ayarlayın.
Sağlık denetimi hatalarını giderin
Genel sağlık denetimi hataları
Aşağıdaki adımları uygulayın:
-
Başarısız bir TCP sağlık denetimi, düğüme bağlantı kurulamadığı anlamına gelir. Şunları doğrulayın:
Düğümün var olduğunu.
Eşzamanlı bağlantıların düğüm kapasitesini aşmadığını.
Bir HTTP sağlık denetimi başarısız olursa bağlantıyı doğrulamak için TCP'ye geçiş yapın. TCP başarılı olursa sağlık denetimi yolunu doğrulayın. Uç noktayı test etmek için curl veya Postman kullanın.
Yeni hizmetler için sağlık denetimi hataları
Aşağıdaki adımları uygulayın:
-
Ağ geçidinin ve hizmet örneğinin aynı VPC içinde bulunduğundan emin olun. Farklı VPC'lerde bulunuyorsa bunları Cloud Enterprise Network (CEN) veya özel bir bağlantı üzerinden birbirine bağlayın.
NotAğ geçidi, Nacos veya ZooKeeper aracılığıyla kaydedilen şirket içi hizmetleri desteklemez.
Ağ geçidi ve hizmet örneği VPC'lerinin aynı olduğunu veya birbirine bağlı olduğunu doğrulayın.
Güvenlik grubu yetkilendirmesinin yapılandırıldığını doğrulayın. ACK hizmetleri için Güvenlik grubu kurallarını yapılandırın bölümünde açıklandığı gibi konteyner kümesinin güvenlik grubuna yetki verin.
Sağlıklı olmayan örnek bir genel IP adresi kullanıyorsa ağ geçidinin VPC'si için genel NAT ağ geçidinin etkinleştirildiğini doğrulayın.