controller —— SatefulSet 部署有状态应用

1、无状态和有状态应用
  • 无状态
    • Pod都是一样的
    • 没有顺序要求
    • 不需要考虑应用在哪个node运行
    • 随意进行伸缩和扩展
  • 有状态
    • 无状态的特性在有状态应用都需要进行考虑
    • 每个Pod都是独立的,保持Pod启动顺序和唯一性
      • 唯一网络标签符,持久存储
      • 有序(如mysql主从,先启动主Pod,在启动从Pod)
2、部署有状态应用
  • 无头service(让cluster-ip=none,不用IP进行约定,使用唯一标识,生一个特定规则一个域名,通过域名进行操作)
    • ClusterIP: None
  • SatefulSet部署有状态应用
    • 查看Pod,有三个Pod,每个Pod都拥有唯一的名称
      • 查看创建无头service
        • deplyment和statefulset区别:有身份的(唯一标识)
          • 根据主机名 + 按照一定规则生成的域名组成
            • 每个Pod有唯一主机名
            • 唯一域名:
              • 格式:主机名称.service名称.名称空间.svc.cluster.local
              • nginx-statefulset-0.nginx.default.svc.cluster.local
         
        Loading...
        目录