云容器实例 CCI-业务探针(Readiness probe):Readiness Probe的工作原理
Readiness Probe的工作原理
如果调用kubectl describe命令查看Service的信息,您会看到如下信息。
$ kubectl describe svc nginx -n $namespace_name
Name: nginx
......
Endpoints: 192.168.113.81:80,192.168.165.64:80,192.168.198.10:80
......
可以看到一个Endpoints,Endpoints同样也是Kubernetes的一种资源对象,可以查询得到。
$ kubectl get endpoints -n $namespace_name
NAME ENDPOINTS AGE
nginx 192.168.113.81:80,192.168.165.64:80,192.168.198.10:80 14m
这里的192.168.113.81:80是Pod的IP:Port,通过如下命令可以查看到Pod的IP,与上面的IP一致。
# kubectl get pods -o wide -n $namespace_name NAME READY STATUS RESTARTS AGE IP nginx-55c54cc5c7-49chn 1/1 Running 0 1m 192.168.198.10 nginx-55c54cc5c7-x87lb 1/1 Running 0 1m 192.168.165.64 nginx-55c54cc5c7-xp4c5 1/1 Running 0 1m 192.168.113.81
通过Endpoints就可以实现Readiness Probe的效果,当Pod还未就绪时,将Pod的IP:Port在Endpoints中删除,Pod就绪后再加入到Endpoints中,如下图所示。