Milyen típusú tesztek léteznek a szolgáltatások és alkalmazások állapotának ellenőrzésére?
sobes.tech MI
Válasz az MI-től
Számos gyakori próbatípus létezik:
-
Életképességi próba (Liveness): Meghatározza, hogy az alkalmazás működik-e. Ha a próba sikertelen, a Kubernetes újraindítja a podot. Használják lefagyott folyamatok felismerésére.
- HTTP Get Próbák: HTTP GET kéréseket küld a megadott útvonalra és portra.
- TCP Socket Próbák: Ellenőrzi, hogy lehet-e csatlakozni a megadott portra.
- Exec Próbák: Parancsot futtat a konténeren belül, és ellenőrzi a visszatérési kódot.
-
Készség próba (Readiness): Meghatározza, hogy a pod készen áll-e a forgalom fogadására. Ha a próba sikertelen, a szolgáltatás nem irányít forgalmat erre a podra. Az alkalmazás indítása vagy frissítése utáni készenlét meghatározására használják.
- Ugyanazokat a mechanizmusokat használja, mint a Liveness Próbák (HTTP Get, TCP Socket, Exec).
-
Indítási próba (Startup): Meghatározza, hogy az alkalmazás inicializálása befejeződött-e. Ha a próba konfigurálva van, a Kubernetes nem hajt végre Liveness és Readiness próbákat, amíg a Startup próba sikeresen nem teljesül. Hasznos lassan induló alkalmazásokhoz, hogy elkerüljék a korai újraindításokat.
- Ugyanazokat a mechanizmusokat használja, mint a többi próba.
Kubernetes konfigurációs példája:
livenessProbe: # Életképesség ellenőrzése
httpGet: # HTTP-n keresztül
path: /healthz # Útvonal
port: 8080 # Port
initialDelaySeconds: 15 # Késleltetés az első ellenőrzés előtt
timeoutSeconds: 1 # Válasz várakozási idő
readinessProbe: # Készség ellenőrzése
tcpSocket: # TCP-n keresztül
port: 8080 # Port
initialDelaySeconds: 5 # Késleltetés az első ellenőrzés előtt
periodSeconds: 10 # Ellenőrzések közötti időköz