k8s-ReplicaSet及Deployment

k8s-ReplicaSet及Deployment

概念集合

Pod里是容器,Pod被ReplicaSet管理,
ReplicaSet控制pod的数量;ReplicaSet被Deployment管理,
Deployment控制pod应用的升级、回滚,当然也能控制pod的数量。
Service提供一个统一固定入口,负责将前端请求转发给Pod。

ReplicaSet

    副本控制器
        作用:管理pod副本,保证pod的数量在预设的个数,当pod副本被删除时,会重新创建新的pod副本
        官方不推荐,使用Deployment代替

Deployment

作用:

除了能够调佣ReplicaSet之外还可以提供滚动升级及回滚的功能

功能

        1、创建ReplicaSet和Pod
            2、滚动升级(不停止旧服务的状态下升级)和回滚应用(将应用回滚到之前的版本)
            3、平滑地扩容和缩容
            4、暂停和继续Deployment

案例

apiVersion: apps/v1
kind: Deployment
metadata:
 name: mydm
spec:
 replicas: 3
 selector:
  matchLabels:
   app: myapp-blue #匹配模板中label
 template:
  metadata:
   labels:
    app: myapp-blue
  spec:
   containers:
   - name: myapp-blue
     image: busybox:1.28
     imagePullPolicy: IfNotPresent
     ports:
     - containerPort: 80

查看

deplyment
                kubectl get  deploy
------------------------------
            raplicaset
                kubectl get rs

扩缩容

            修改对应的yaml文件中的replicas的数量

滚动更新

修改对应的yaml文件中的image信息

回滚

查看历史版本
kubectl  rollout history deployment name
---------------------------
回滚操作
                kubectl rollout undo deployment name --to-revision=1(name)

自定义更新策略

灰色发布

###     maxSurge
​
###     maxUnavailable

类型

按数量

1.maxUnavailable: [0, 副本数]
​
                2. maxSurge: [0, 副本数]
                    注意:两者不能同时为0。
                

按比例

maxUnavailable: [0%, 100%] 向下取整,比如10个副本,5%的话==0.5个,但计算按照0个;
​
        2. maxSurge: [0%, 100%] 向上取整,比如10个副本,5%的话==0.5个,但计算按照1个;
        注意:两者不能同时为0。

maxUnavailable:和期望的副本数比,不可用副本数最大比例(或最大值),这个值越小,越能保证服务稳定,更新越平滑;


maxSurge:和期望的副本数比,超过期望副本数最大比例(或最大值),这个值调的越大,副本更新速度越快。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值