一、探针区别
livenessProbe:健康状态检查,周期性检查服务是否存活,检查结果失败,将重启容器
readinessProbe:可用性检查,周期性检查服务是否可用,不可用将从service的endpoints中移除
探针检测方法
二、liveness探针的exec使用
编写yaml文件
[root@k8s-master check]# cat nginx_pod_exec.yaml
iapiVersion: v1
kind: Pod
metadata:
name: exec
spec:
containers:
- name: nginx
image: 10.0.0.11:5000/nginx:1.13
ports:
- containerPort: 80
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
timeoutSeconds: 5
successThreshold: 1
failureThreshold: 1
启动:
[root@k8s-master check]# kubectl create -f nginx_pod_exec.yaml
查看:
[root@k8s-master check]# kubectl describe pod exec
-------------------
vi nginx_pod_httpGet.yamliapiVersion: v1kind: Podmetadata:name: httpgetspec:containers:- name: nginximage: 10.0.0.11:5000/nginx:1.13ports:- containerPort: 80livenessProbe:httpGet:path: /index.htmlport: 80initialDelaySeconds: 3periodSeconds: 3
liveness探针的tcpSocket使用
vi nginx_pod_tcpSocket.yamliapiVersion: v1kind: Podmetadata:name: tcpSocketspec:containers:- name: nginximage: 10.0.0.11:5000/nginx:1.13ports:- containerPort: 80args:- /bin/sh- -c- tail -f /etc/hostslivenessProbe:tcpSocket:port: 80initialDelaySeconds: 10periodSeconds: 3
readiness探针的httpGet使用
vi nginx-rc-httpGet.yamliapiVersion: v1kind: ReplicationControllermetadata:name: readinessspec:replicas: 2selector:app: readinesstemplate:metadata:labels:app: readinessspec:containers:- name: readinessimage: 10.0.0.11:5000/nginx:1.13ports:- containerPort: 80readinessProbe:httpGet:path: /qiangge.htmlport: 80initialDelaySeconds: 3periodSeconds: 3
有问题请加博主微信进行沟通!
全部评论