9、kubernetes之statefulset控制器
一、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控制器相关推荐
- .NET Core + Kubernetes:StatefulSet
在 Kubernetes 中,Pod 资源的控制器 Deployment.Replicaset.Daemonset 等常用于管理无状态应用,它们所管理的 Pod 对应的 IP.名字,启停顺序等都是随机 ...
- Kubernetes中StatefulSet介绍
原文链接:Kubernetes中StatefulSet介绍 StatefulSet 是Kubernetes1.9版本中稳定的特性,本文使用的环境为 Kubernetes 1.11.如何搭建环境可以参考 ...
- Kubernetes 进阶训练营 控制器
控制器 前面我们一起学习了 Pod 的原理和一些基本使用,但是在实际使用的时候并不会直接使用 Pod,而是会使用各种控制器来满足我们的需求,Kubernetes 中运行了一系列控制器来确保集群的当前状 ...
- 4 Kubernetes资源-Pod控制器(2)
4 Kubernetes资源-Pod控制器(2) 4.3 DaemonSet DaemonSet确保Pod在所有Node节点运行一个副本,当有Node节点添加时会自动在新的节点创建Pod.常用于每个N ...
- 4 Kubernetes资源-Pod控制器(1)
4 Kubernetes资源-Pod控制器(1) Kubernetes中Pod分为自主式和控制器管理式: YAML指定类型为Pod的均为自主式,此类Pod退出后不会被创建: YMAL指定类型为Repl ...
- kubernetes之Pod控制器详解
kubernetes之Pod控制器详解 文章目录 kubernetes之Pod控制器详解 Pod控制器介绍 ReplicaSet(RS) Deployment(Deploy) Pod控制器介绍 Pod ...
- Kubernetes(5)job控制器
文章目录 Kubernetes(5)job控制器 部署 job的并行性 定时Job Kubernetes(5)job控制器 容器按照持续运行的时间可分为两类:服务类容器和工作类容器 服务类容器通常持续 ...
- Kubernetes之StatefulSet
什么是StatefulSet StatefulSet 是Kubernetes中的一种控制器,他解决的什么问题呢?我们知道Deployment是对应用做了一个简化设置,Deployment认为一个应用的 ...
- Kubernetes(15):Pod控制器ReplicaSet和Deployment详解
文章目录 前言 第一节 Pod控制器 第二节 ReplicaSet(RS) 1. 概念和资源清单 2. 创建ReplicaSet 3. 扩缩容 3.1 方法一:直接编辑rs 3.2方法二 :命令扩缩容 ...
- kubernetes之Pod控制器
文章目录 一.ReplicaSet 1.创建 2.扩缩容 3.镜像升级 4.删除 二.Deployment 1.创建与扩容 2.镜像升级 3.版本回退 三.Horizontal Pod Autosca ...
最新文章
- TensorFlow创建DeepDream网络
- 阿里云系列——7.阿里云IIS系列详解(过程+通用+最新)
- vim折叠的使用方法
- TENSORFLOW GUIDE: EXPONENTIAL MOVING AVERAGE FOR IMPROVED CLASSIFICATION
- mysql8.0.12插件_MySQL8.0.12 安装及配置
- Android开发——Android系统启动以及APK安装、启动过程
- WIN7常用的15个快捷键组合
- python绘制国际象棋_python使用turtle绘制国际象棋棋盘
- ip对应的区域查询(asp.net版)
- vscode 历史版本1.68.1
- MACm1上lark无法使用共享屏幕问题
- 爬虫(二)—解析真实网页(猫途鹰)
- 安全圈年终大趴,FIT 2019首日盛况全程回顾
- 【Optimal Path】星门跳跃 链表+SPFA
- 关于心理的二十五种倾向(查理·芒格)-1
- 信息服务器v6,服务器ipv6设置
- 产品如何取得WFA的WiFi认证(一)总览
- 第二章 第六课 Scratch作品:摇摇晃晃的虫子(随机数和碰到边缘就反弹)
- 电镀废水的来源以及常见的处理方式,各种工艺的讲解
- ROS1云课→01简介和配置