Junior
Millised on teenuste ja rakenduste oleku kontrollimiseks olemas testitüübid?
sobes.tech AI
Vastus AI-lt
On olemas mitu levinud proovivormi:
-
Elususe proov: Määrab, kas rakendus töötab. Kui proov ei õnnestu, taaskäivitab Kubernetes pordi. Kasutatakse hangunud protsesside tuvastamiseks.
- HTTP Get Proovid: saadab HTTP GET päringuid määratud teele ja pordile.
- TCP Socket Proovid: kontrollib ühendusvõimalust määratud pordiga.
- Exec Proovid: täidab käsu konteineris ja kontrollib tagastuskoodi.
-
Valmiduse proov: Määrab, kas pood on valmis liiklust vastu võtma. Kui proov ei õnnestu, ei suuna teenus sellele pordile liiklust. Kasutatakse rakenduse valmisoleku määramiseks pärast käivitamist või uuendamise ajal.
- Kasutab samu mehhanisme nagu Elususe Proovid (HTTP Get, TCP Socket, Exec).
-
Startup Proov: Määrab, kas rakenduse initsialiseerimine on lõppenud. Kui proov on seadistatud, ei täida Kubernetes Elususe ja Valmiduse proovide teste enne, kui Startup Proov õnnestub. Kasulik aeglaselt käivitatavate rakenduste jaoks, et vältida enneaegseid taaskäivitusi Elususe Proovi.
- Kasutab samu mehhanisme nagu teised proovivormid.
Kubernetese konfiguratsiooni näide:
livenessProbe: # Elususe kontroll
httpGet: # HTTP kaudu
path: /healthz # Tee
port: 8080 # Port
initialDelaySeconds: 15 # Viivitus enne esimest kontrolli
timeoutSeconds: 1 # Vastuse ootamise aeg
readinessProbe: # Valmiduse kontroll
tcpSocket: # TCP kaudu
port: 8080 # Port
initialDelaySeconds: 5 # Viivitus enne esimest kontrolli
periodSeconds: 10 # Kontrollide vaheline intervall