Middle
Milleks kasutatakse proove Kubernetesis?
sobes.tech AI
Vastus AI-lt
Kubernetes kasutab katsetusi konteinerite oleku määramiseks ja podide elutsükli haldamiseks. Need võimaldavad klasteril automaatselt reageerida rakenduste oleku muutustele, tagades nende kättesaadavuse ja stabiilsuse.
On kolm peamist katsetustüüpi:
- Liveness probe (Elususe katse): Määrab, kas rakendus töötab konteineris. Kui elususe katse lõpeb veaga, taaskäivitab Kubernetes konteineri.
- Readiness probe (Valmiduse katse): Määrab, kas konteiner on valmis liiklust vastu võtma. Kui valmiduse katse lõpeb veaga, eemaldab Kubernetes ajutiselt pordi nimekirjast, mis suunab liiklust sellele.
- Startup probe (Alguskatse): Määrab, kas rakenduse käivitamine on lõppenud. Seda saab kasutada aeglaselt algavatele rakendustele. Kui startup probe on edukas, algavad järgmised kontrollid (elususe/valmiduse) ajakava järgi. Kui see ebaõnnestub määratud aja jooksul, tapab Kubernetes konteineri ja taaskäivitab selle.
Katsetusi saab rakendada erinevatel viisidel:
- ExecAction: Käivitab käsu konteineris. Edukust määrab tagastuskood (0 - edu, muu - viga).
# ExecAction näide elususe katse jaoks livenessProbe: exec: command: - cat - /tmp/healthy initialDelaySeconds: 5 periodSeconds: 5 - HTTPGetAction: Saadab HTTP GET päringu määratud pordile ja teele konteineris. Edukust määrab HTTP olekukood (tavaliselt 2xx või 3xx).
# HTTPGetAction näide valmiduse katse jaoks readinessProbe: httpGet: path: /ready port: 8080 initialDelaySeconds: 5 periodSeconds: 5 failureThreshold: 3 - TCPSocketAction: Püüab luua ühenduse TCP socketiga määratud pordil konteineris. Edukust määrab edukas ühenduse loomine.
# TCPSocketAction näide elususe katse jaoks livenessProbe: tcpSocket: port: 8080 initialDelaySeconds: 15 periodSeconds: 20
Õige katsetuste kasutamine on kriitiline rakenduste usaldusväärsuse ja vastupidavuse tagamiseks Kubernetes keskkonnas.