Kubernets(8:自检)

  • 2019 年 10 月 6 日
  • 笔记

查看详细日志

kubectl describe pod liveness

创建liveness 探测

image.png

用户通过Liveness探测可以告诉Kubernetes什么时候通过重启容器实现自愈;Readiness探测则是告诉Kubernetes什么时候可以将容器加入到Service负载均衡池中,对外提供服务。

创建readiness探测

image.png

创建httpd容器,并加入探测

image.png

readinessProbe

httpGet schema path port (1)容器启动10秒之后开始探测。 (2)如果http://[container_ip]:8080/healthy返回代码不是200~400,表示容器没有就绪,不接收Service web-svc的请求。 (3)每隔5秒探测一次。 (4)直到返回代码为200~400,表明容器已经就绪,然后将其加入到web-svc的负载均衡中,开始处理客户请求。 (5)探测会继续以5秒的间隔执行,如果连续发生3次失败,容器又会从负载均衡中移除,直到下次探测成功重新加入。

创建app并带探测

image.png

滚动更新根据maxSurge和maxUnavailable来控制副本更替的数量

  1. maxSurge 此参数控制滚动更新过程中副本总数超过DESIRED的上限。 maxSurge可以是具体的整数(比如3),也可以是百分百,向上取整。maxSurge默认值为25%。 在上面的例子中,DESIRED为10,那么副本总数的最大值为roundUp(10 + 10 * 25%) =13,所以我们看到CURRENT就是13。
  2. maxUnavailable 此参数控制滚动更新过程中,不可用的副本相占DESIRED的最 大比例。maxUnavailable可以是具体的整数(比如3),也可以是百分百,向下取整。maxUnavailable默认值为25%。 在上面的例子中,DESIRED为10,那么可用的副本数至少要为10 – roundDown(10 * 25%)= 8,所以我们看到AVAILABLE是8。

maxSurge值越大,初始创建的新副本数量就越多; maxUnavailable值越大,初始销毁的旧副本数量就越多。

指定滚动更新时的策略

image.png