meta data de esta página
¡Esta es una revisión vieja del documento!
Probes
Los probes son como comprobaciones que kubernetes nos suministra para que podamos comprobar entre otras cosas, si un pod está listo para recibir tráfico, si tienen algún problema, etc
Tenemos tres tipos:
- Readiness Probe → Se utiliza para saber cuando un contenedor está listo para aceptar tráfico
- Liveness Probe - > Se usa liveness probe para saber cuando hay que reiniciar un contenedor
- Startup Probe → Se utiliza para saber cuando la aplicación de un container se ha iniciado. (por ejemplo si es una aplicación que tarda mucho en cargar)
Readiness Probe
Liveness Probe
Ejemplo de liveness probe por http
apiVersion: v1 kind: Pod metadata: labels: test: liveness name: liveness-http spec: containers: - name: liveness image: k8s.gcr.io/liveness args: - /server livenessProbe: httpGet: path: /healthz port: 8080 httpHeaders: - name: Custom-Header value: Awesome initialDelaySeconds: 3 periodSeconds: 3
Ejemplo de liveness probe por comando
apiVersion: v1 kind: Pod metadata: labels: test: liveness name: liveness-exec spec: containers: - name: liveness image: k8s.gcr.io/busybox args: - /bin/sh - -c - touch /tmp/healthy; sleep 30; rm -rf /tmp/healthy; sleep 600 livenessProbe: exec: command: - cat - /tmp/healthy initialDelaySeconds: 5 periodSeconds: 5
ejemplo de liveness probe por tcp
apiVersion: v1 kind: Pod metadata: name: goproxy labels: app: goproxy spec: containers: - name: goproxy image: k8s.gcr.io/goproxy:0.1 ports: - containerPort: 8080 readinessProbe: tcpSocket: port: 8080 initialDelaySeconds: 5 periodSeconds: 10 livenessProbe: tcpSocket: port: 8080 initialDelaySeconds: 15 periodSeconds: 20