Xidmətlərin və tətbiqlərin vəziyyətini yoxlamaq üçün hansı növ testlər mövcuddur?
sobes.tech Süni İntellekt
AI-dan cavab
Məşhur bir neçə sınaq növü mövcuddur:
-
Yaşayış Sınağı (Liveness): Tətbiqin işləyib-işləmədiyini müəyyən edir. Əgər sınaq uğursuz olarsa, Kubernetes pod-u yenidən başlatır. Dondurulmuş prosesləri aşkar etmək üçün istifadə olunur.
- HTTP Get Sınaqları: Göstərilən yol və porta HTTP GET sorğuları göndərir.
- TCP Sockets Sınaqları: Göstərilən porta qoşulma imkanını yoxlayır.
- İcra Sınaqları: Konteyner daxilində bir əmri icra edir və çıxış kodunu yoxlayır.
-
Hazır olma Sınağı (Readiness): Pod-un trafik qəbul etməyə hazır olub-olmadığını müəyyən edir. Əgər uğursuz olarsa, xidmət bu poda trafik göndərmir. Tətbiqin başlamasından və ya yeniləmədən sonra hazır olub-olmadığını müəyyən etmək üçün istifadə olunur.
- Eyni mexanizmləri istifadə edir (HTTP Get, TCP Socket, İcra).
-
Başlanğıc Sınağı (Startup): Tətbiqin başlanğıcının tamamlandığını müəyyən edir. Əgər sınaq konfiqurasiya olunubsa, Kubernetes Startup Sınağı uğurlu olana qədər Yaşayış və Hazır olma sınaqlarını həyata keçirməyəcək. Yavaş başlayan tətbiqlər üçün faydalıdır, erkən yenidən başlatmaların qarşısını alır.
- Digər sınaqlarla eyni mexanizmləri istifadə edir.
Kubernetes-də konfiqurasiya nümunəsi:
livenessProbe: # Canlılıq yoxlaması
httpGet: # HTTP vasitəsilə
path: /healthz # Yolu
port: 8080 # Port
initialDelaySeconds: 15 # İlk yoxlamadan əvvəl gecikmə
timeoutSeconds: 1 # Cavab üçün gözləmə vaxtı
readinessProbe: # Hazır olma yoxlaması
tcpSocket: # TCP vasitəsilə
port: 8080 # Port
initialDelaySeconds: 5 # İlk yoxlamadan əvvəl gecikmə
periodSeconds: 10 # Yoxlamalar arasındakı interval