持续集成部署-k8s-资源调度:StatefulSet
- 1. StatefulSet 简介
- 2. 定义一个有状态服务
- 3. 扩容缩容与滚动更新
- 4. 删除更新
- 5. 级联删除与非级联删除
1. StatefulSet 简介
在 Kubernetes
(K8s)中,StatefulSet
是一种控制器对象,用于管理有状态应用程序的部署和扩展。与Deployment
不同,StatefulSet
旨在为有状态的应用程序提供唯一标识和稳定的网络标识。
StatefulSet
的概念和作用如下:
-
唯一标识:StatefulSet为每个Pod实例分配唯一的持久标识符,称为稳定的网络标识(
Stable Network Identity
)。这个标识可以是一个固定的DNS名称或稳定的网络地址,使得有状态的应用程序能够在重新部署或扩展时保持其标识不变。这对于需要固定标识的应用程序(如数据库)非常重要。 -
有序部署和扩展:
StatefulSet
确保Pod
实例以顺序方式创建、更新和删除。它按照定义中的顺序依次处理