K8S有状态服务-StatefulSet使用最佳实践
介绍
StatefulSet是一种给Pod提供唯一标志的控制器,它可以保证部署和扩展的顺序。
Pod一致性:包含次序(启动、停止次序)、网络一致性。此一致性与Pod相关,与被调度到哪个node节点无关。
稳定的次序:对于N个副本的StatefulSet,每个Pod都在[0,N)的范围内分配一个数字序号,且是唯一的。
稳定的网络:Pod的hostname模式为$(statefulset名称)-$(序号)。
稳定的存储:通过VolumeClaimTemplate为每个Pod创建一个PV。删除、减少副本,不会删除相关的卷。
阿里云云盘支持动态挂载的功能,可以通过VolumeClaimTemplate方式部署statefulset应用。
部署Statefulset服务
volumeClaimTemplates:表示一类PVC的模板,系统会根据Statef