【云原生 | 从零开始学Kubernetes二十三、Kubernetes控制器Statefulset
该篇文章已经被专栏《从零开始学k8s》收录 上一篇文章:kubernetes持久化存储下 点击跳转

Statefulset
- Statefulset 控制器:概念、原理解读
- 有状态服务?
- 无状态服务?
- 什么是 Headless service
- 为什么要用 headless service(没有 service ip 的 service)?
- 为什么要用 volumeClaimTemplate?
- Statefulset 资源清单文件编写技巧
- Statefulset 使用案例:部署 web 站点
- Statefulset 管理 pod:扩容、缩容、更新
- 写在最后
Statefulset 控制器:概念、原理解读
StatefulSet 是为了管理有状态服务的问题而设计的 对于StatefulSet中的Pod,每个Pod挂载自己独立的存储,如果一个Pod出现故障,从其他节点启动一个同样名字的Pod,要挂载上原来Pod的存储继续以它的状态提供服务。
有状态服务?
StatefulSet 是有状态的集合,管理有状态的服务,它所管理的 Pod 的名称不能随意变化。数据持久化的目录也是不一样,每一个 Pod 都有自己独有的数据持久化存储目录。比如 MySQL 主从、redis 集群等。
- 让每个Pod独立的
- 让每个Pod独立的,保持Pod启动顺序和唯一性
- 唯一的网络标识符,持久存储
- 有序,比如mysql中的主从