https://blog.csdn.net/weixin_28820113/article/details/148380309
HTTP探测实战(最常用)
向容器发送 HTTP 请求,若返回状态码为 200-399,则表示检查成功
[root@master ~/probe]# cat readiness.yaml kind: Pod apiVersion: v1 metadata:name: nginxlabels:app: nginx spec:containers:- name: nginximage: nginxreadinessProbe:httpGet:# http请求的端口port: 80# http请求的路径path: /# http请求的主机# host: 127.0.0.1# 请求方式scheme: HTTP# 超时时间,指定5秒timeoutSeconds: 5# 探针检查成功后,需要连续3次检查失败才认为容器出现问题failureThreshold: 3# 探针检查失败后,需要连续1次检查成功才认为容器恢复正常successThreshold: 1# 探针检查的执行间隔时间,指定3秒periodSeconds: 3# 容器启动后等待15秒再开始执行探针检查initialDelaySeconds: 15[root@master ~/probe]# kubectl apply -f readiness.yaml pod/nginx created
创建service
[root@master ~/probe]# cat service.yaml apiVersion: v1 kind: Service metadata:name: nginx-service spec:type: ClusterIPselector:# 选择标签为 app: nginx 的 Podapp: nginxports:- name: httpprotocol: TCP# Service的端口port: 80# Pod 上的端口targetPort: 80 [root@master ~/probe]# kubectl apply -f service.yaml service/nginx-service created
检查Pod、Service、EndPoint资源,发现EndPoint关联的是Pod的IP,符合预期
[root@master ~/probe]# kubectl get po,svc,ep -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES pod/nginx 1/1 Running 0 4m2s 100.95.185.232 node02 <none> <none>NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR service/nginx-service ClusterIP 10.96.1.43 <none> 80/TCP 112s app=nginxNAME ENDPOINTS AGE endpoints/nginx-service 100.95.185.232:80 112s