statefulset

statefulset petset

数据库集群是有状态的集群服务,在kubernetes中,我们使用StatefulSet进行部署。

通过PV/PVC实现稳定的存储,
使用Headless Service 的特殊Service来实现稳定的网络身份,
使用StatefulSet可以使用序号命名规则给pod命名。


如果有pod由于某种原因down掉了,kubernetes会新创建一个跟原来pod同样名字,网络身份一样,同时还能匹配原来pod用到的存储,实现状态保存。


部署步骤
1、创建Volume,为每个数据库分配一个固定目录,并放上需要的数据文件。
2、建立pv,每个pv使用对应的Volume。(pv个数和启动的pod数量相同)
3、建立pvc,每个pvc绑定到对应的pv (pvc的个数和pv的数量相同)
4、新建一个headless服务

5、使用StatefulSet启动pod,将数据文件映射到对应pod的目录中。




你可能感兴趣的:(kubernetes)