Statefulset:部署有状态的多副本应用

10.1.什么是Statefulset

  StatefulSet是Kubernetes提供的管理有状态应用的负载管理控制器API。        特点:   1.具有固定的网络标记(主机名)   2.具有持久化存储   3.需要按顺序部署和扩展   4.需要按顺序终止和删除   5.需要按顺序滚动和更新

10.2.statefulset的创建

  statefulset的创建顺序从0到N-1,终止顺序则相反,如果需要对satateful扩容,则之前的n个pod必须存在,如果要终止一个pod,则他的后续pod必须全部终止。

       创建statefulset

#kubectl create -f ss-nginx.yml

  查看statefulset

#kubectl get statefulset

  

  statefulset会使用一个完全一致的pod来替换被删除的pod。

  statefulset扩容和缩容时,都会删除最高索引的pod,当这个pod完全被删除后,才回删除拥有次高索引的pod。

10.3.statefulset中发现伙伴的节点

  通过DNS中SRV互相发现。

10.4.更新statefulset

#kuebctl edit statefulset kubia

  但修改后pod不会自动 被更新,需要手动delete pod后会重新调度更新。

10.5.statefulset如何处理节点失效

 
上一篇:kubernetes常用控制器之StatefulSet


下一篇:k8s-存储-pv和pvc和StatefulSet