首页 > 其他 > 详细

什么是StatefulSet

时间:2019-10-12 11:48:37      阅读:66      评论:0      收藏:0      [点我收藏+]

简单说来,StatefulSet其实就是一种升级版的Deployment,大体工作原理如下

1.为每个Pod名字按顺序编号,按顺序启动

# kubectl get po -o wide -l app=nginx
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
web-0 1/1 Running 0 21s 10.244.0.44 vm-0-8-ubuntu <none>
web-1 1/1 Running 0 14s 10.244.0.45 vm-0-8-ubuntu <none>

删除重建的Pod会使用之前的一模一样的名字

2.通过HeadlessService为Pod编号,在DNS服务器中生成带有编号的DNS记录,从而可以达到通过Pod名字定位到相应的服务

pod-name>.<svc-name>.<namespace>.svc.cluster.local

实现了网络标识的稳定

3.为每个Pod绑定名称对应的PVC,规则如下

<PVC名字>-<StatefulSet名称>-<编号>

在Pod重建的时候会重新绑定上之前的PVC,因为PV和PVC不会被删除,数据还在,所以Statefulset的存储状态是稳定的

总的来说,StatefulSet实现了:1.保证网络标识的稳定 2.保证存储状态的稳定。适合用来部署有状态的应用,而Deloyment认为所有的Pod都是完全一样的,更适合用来操作无状态的应用

什么是StatefulSet

原文:https://www.cnblogs.com/chenqionghe/p/11660359.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!