一、StatefulSet 有状态副本集

  • 必要的三个组件:headless service、StatefulSet、volumeClaimTemplate
  • 准备pv
apiVersion: v1
kind: PersistentVolume
metadata:name: pv001labels:name: pv001
spec:nfs:path: /data/volumes/v1server: 192.168.100.1accessModes: ["ReadWriteOnce"]capacity:storage: 5Gi
---
apiVersion: v1
kind: PersistentVolume
metadata:name: pv002labels:name: pv002
spec:nfs:path: /data/volumes/v2server: 192.168.100.1accessModes: ["ReadWriteOnce"]capacity:storage: 5Gi
---
apiVersion: v1
kind: PersistentVolume
metadata:name: pv003labels:name: pv003
spec:nfs:path: /data/volumes/v3server: 192.168.100.1accessModes: ["ReadWriteOnce"]capacity:storage: 5Gi
---
apiVersion: v1
kind: PersistentVolume
metadata:name: pv004labels:name: pv004
spec:nfs:path: /data/volumes/v4server: 192.168.100.1accessModes: ["ReadWriteOnce"]capacity:storage: 5Gi
---
apiVersion: v1
kind: PersistentVolume
metadata:name: pv005labels:name: pv005
spec:nfs:path: /data/volumes/v5server: 192.168.100.1accessModes: ["ReadWriteOnce"]capacity:storage: 5Gi
  • 创建3个有状态副本(使用nginx模拟)
apiVersion: v1
kind: Service
metadata:name: myapplabels:app: myapp
spec:ports:- port: 80name: webclusterIP: Noneselector:app: myapp-pod
---
apiVersion: apps/v1
kind: StatefulSet
metadata:name: myapp
spec:serviceName: myappreplicas: 3selector:matchLabels:app: myapp-podtemplate:metadata:labels:app: myapp-podspec:containers:- name: myappimage: dongfeimg/myapp:v1ports:- containerPort: 80name: webvolumeMounts:- name: myappdatamountPath: /usr/share/nginx/htmlvolumeClaimTemplates:- metadata:name: myappdataspec:accessModes: ["ReadWriteOnce"]resources:requests:storage: 5Gi

二、滚动更新

  • 扩容/缩容
# kubectl scale sts myapp --replicas=5
# kubectl patch sts myapp -p '{"spec":{"replicas":2}}'
  • 更新
# kubectl patch sts myapp -p '{"spec":{"updateStrategy":{"rollingUpdate":{partition":4}}}}'  #修改更新分区;
# kubectl set image sts/myapp myapp=dongfeimg/myapp:v2  

更新分区:"partition":4

代表pod序号大于等于4的pod做滚动更新,更新时倒序更新

转载于:https://www.cnblogs.com/L-dongf/p/11442253.html

9、kubernetes之statefulset控制器相关推荐

  1. .NET Core + Kubernetes:StatefulSet

    在 Kubernetes 中,Pod 资源的控制器 Deployment.Replicaset.Daemonset 等常用于管理无状态应用,它们所管理的 Pod 对应的 IP.名字,启停顺序等都是随机 ...

  2. Kubernetes中StatefulSet介绍

    原文链接:Kubernetes中StatefulSet介绍 StatefulSet 是Kubernetes1.9版本中稳定的特性,本文使用的环境为 Kubernetes 1.11.如何搭建环境可以参考 ...

  3. Kubernetes 进阶训练营 控制器

    控制器 前面我们一起学习了 Pod 的原理和一些基本使用,但是在实际使用的时候并不会直接使用 Pod,而是会使用各种控制器来满足我们的需求,Kubernetes 中运行了一系列控制器来确保集群的当前状 ...

  4. 4 Kubernetes资源-Pod控制器(2)

    4 Kubernetes资源-Pod控制器(2) 4.3 DaemonSet DaemonSet确保Pod在所有Node节点运行一个副本,当有Node节点添加时会自动在新的节点创建Pod.常用于每个N ...

  5. 4 Kubernetes资源-Pod控制器(1)

    4 Kubernetes资源-Pod控制器(1) Kubernetes中Pod分为自主式和控制器管理式: YAML指定类型为Pod的均为自主式,此类Pod退出后不会被创建: YMAL指定类型为Repl ...

  6. kubernetes之Pod控制器详解

    kubernetes之Pod控制器详解 文章目录 kubernetes之Pod控制器详解 Pod控制器介绍 ReplicaSet(RS) Deployment(Deploy) Pod控制器介绍 Pod ...

  7. Kubernetes(5)job控制器

    文章目录 Kubernetes(5)job控制器 部署 job的并行性 定时Job Kubernetes(5)job控制器 容器按照持续运行的时间可分为两类:服务类容器和工作类容器 服务类容器通常持续 ...

  8. Kubernetes之StatefulSet

    什么是StatefulSet StatefulSet 是Kubernetes中的一种控制器,他解决的什么问题呢?我们知道Deployment是对应用做了一个简化设置,Deployment认为一个应用的 ...

  9. Kubernetes(15):Pod控制器ReplicaSet和Deployment详解

    文章目录 前言 第一节 Pod控制器 第二节 ReplicaSet(RS) 1. 概念和资源清单 2. 创建ReplicaSet 3. 扩缩容 3.1 方法一:直接编辑rs 3.2方法二 :命令扩缩容 ...

  10. kubernetes之Pod控制器

    文章目录 一.ReplicaSet 1.创建 2.扩缩容 3.镜像升级 4.删除 二.Deployment 1.创建与扩容 2.镜像升级 3.版本回退 三.Horizontal Pod Autosca ...

最新文章

  1. TensorFlow创建DeepDream网络
  2. 阿里云系列——7.阿里云IIS系列详解(过程+通用+最新)
  3. vim折叠的使用方法
  4. TENSORFLOW GUIDE: EXPONENTIAL MOVING AVERAGE FOR IMPROVED CLASSIFICATION
  5. mysql8.0.12插件_MySQL8.0.12 安装及配置
  6. Android开发——Android系统启动以及APK安装、启动过程
  7. WIN7常用的15个快捷键组合
  8. python绘制国际象棋_python使用turtle绘制国际象棋棋盘
  9. ip对应的区域查询(asp.net版)
  10. vscode 历史版本1.68.1
  11. MACm1上lark无法使用共享屏幕问题
  12. 爬虫(二)—解析真实网页(猫途鹰)
  13. 安全圈年终大趴,FIT 2019首日盛况全程回顾
  14. 【Optimal Path】星门跳跃 链表+SPFA
  15. 关于心理的二十五种倾向(查理·芒格)-1
  16. 信息服务器v6,服务器ipv6设置
  17. 产品如何取得WFA的WiFi认证(一)总览
  18. 第二章 第六课 Scratch作品:摇摇晃晃的虫子(随机数和碰到边缘就反弹)
  19. 电镀废水的来源以及常见的处理方式,各种工艺的讲解
  20. ROS1云课→01简介和配置

热门文章

  1. 快进来看王冰冰!用Python写了一个青年大学习提醒系统
  2. MySQL:Left Join 这个坑,千万别踩!
  3. 你不专业并且自以为是,所以被坑
  4. CodeReview 常见代码问题( 下 )
  5. Android性能优化系列---管理你的app内存(一)
  6. 运维工程师最容易出的状况,咋就找不到问题根因呢?
  7. 看过来,说的就是你!
  8. Google出品,必属精品
  9. shell基础之shell相关概念
  10. PhpStorm之三种视图模式