Sobes.tech
Senior

Πες μας για τον κύκλο ζωής ενός pod στο Kubernetes. Τι είναι οι δοκιμές liveness και readiness;

sobes.tech AI

Απάντηση από AI

Ο κύκλος ζωής ενός pod στο Kubernetes περιλαμβάνει τα ακόλουθα βασικά στάδια:

  1. Pending — το pod έχει δημιουργηθεί, αλλά τα κοντέινερς δεν έχουν ξεκινήσει ακόμα.
  2. Running — τα κοντέινερς τρέχουν και λειτουργούν.
  3. Succeeded — τα κοντέινερς ολοκλήρωσαν με επιτυχία.
  4. Failed — τα κοντέινερς τερματίστηκαν με σφάλμα.
  5. Unknown — η κατάσταση δεν μπορεί να προσδιοριστεί.

Liveness probe — έλεγχος αν το κοντέινερ είναι ζωντανό. Αν ο έλεγχος αποτύχει, το kubelet το επανεκκινεί. Αυτό βοηθά στον εντοπισμό καταστάσεων όπου το κοντέινερ "παγώνει" ή βρίσκεται σε μη λειτουργική κατάσταση.

Readiness probe — έλεγχος αν το κοντέινερ είναι έτοιμο να δεχθεί κυκλοφορία. Αν ο έλεγχος αποτύχει, το pod εξαιρείται από τις υπηρεσίες και τους φορτοδιανομείς, αλλά το κοντέινερ δεν επανεκκινείται. Αυτό επιτρέπει τον έλεγχο πότε η εφαρμογή είναι έτοιμη να εξυπηρετήσει αιτήματα.

Παράδειγμα διαμόρφωσης probes:

livenessProbe:
  httpGet:
    path: /healthz
    port: 8080
  initialDelaySeconds: 15
  periodSeconds: 20

readinessProbe:
  httpGet:
    path: /ready
    port: 8080
  initialDelaySeconds: 5
  periodSeconds: 10