kubernetes之八–kubernetes ReplicaSet

1. 简介

在可靠性要求较高的情况下,使用单一的pod不能满足要求。比如pod损坏的情况下、或者在应用更新时要求服务不中断情况下。ReplicaSet就是用来定义管理一群相同pods,而这些pods运行在群集中的不同节点。 ReplicaSet也定义了pod使用哪个容器镜像和在群集中运行多少个pod的实例。 这些属性又叫做满意状态。

同样,它也负责把不是满意状态的校正为满意状态。
这里写图片描述

在上图中,ReplicaSet rs-api负责管理pod pod-api,如果有一个Pod由于某种原因损坏或者不能使用,那么Replicaset 会重新矫正它到一个满意的状态。

2. 复制副本规格
(1)创建文件名为replicaset.yaml文件,内容如下。

apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: rs-web
spec:
selector:
matchLabels:
app: web
replicas: 3
template:
metadata:
labels:
app: web
spec:
containers:
– name: nginx
image: nginx:alpine
ports:
– containerPort: 80

(2)创建ReplicaSet

$ kubectl create -f replicaset.yaml
replicaset “rs-web” created

(3)列出群集中所有的ReplicaSets

$ kubectl get rs
NAME DESIRED CURRENT READY AGE
rs-web 3 3 3 51s

(4)列出所有的Pods。

$ kubectl get pods
NAME READY STATUS RESTARTS AGE
rs-web-6qzld 1/1 Running 0 4m
rs-web-frj2m 1/1 Running 0 4m
rs-web-zd2kt 1/1 Running 0 4m

3. 自我修复(实验)
(1)随便kill掉一个pod,来校验replicaSet的自我修复。

$ kubectl delete po/rs-web-6qzld
pod “rs-web-6qzld” deleted

(2)再次查看Pods.

这里写图片描述

(3)查看自我修复的详细信息

这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱尚维

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值