美文网首页
【k8s-12】--作业副本与水平扩展

【k8s-12】--作业副本与水平扩展

作者: 一个热爱生活的好少年 | 来源:发表于2018-12-27 16:23 被阅读0次

    deployment在k8s中完整的实现:水平扩展/收缩
    例子:更新一个deployment的pod模板(修改了容器的镜像),那么deployment就需要遵循”滚动更新“的方式,来实现升级容器。这个时候就需要ReplicaSet。

    image.png

    水平扩展实现:通过Deployment Controller只需要修改她控制的ReplicaSet的pod副本数即可。


    image.png

    我们如何检查nginx-deployments创建后的状态信息:


    image.png

    1.DESIRED:客户期望的pod副本数
    2.CURRENT:当前处于running的pod
    3.UP-TO-DATE:处于最新版本的pod
    4.AVAILABLE:当前已经可用的pod

    如何实时查看Deployment对象的状态变化:

    [root@k8s-master-lzy /]# kubectl rollout status  deployment/nginx-deployment
    deployment "nginx-deployment" successfully rolled out
    [root@k8s-master-lzy /]# 
    

    滚动更新中:


    image.png

    如果之前在水平扩张的时候报错。目前已经有一个前pod删除并且异常,如何恢复之前pod。
    kubectl rollout undo deployment/nginx-deployment,可以回滚到上个版本


    image.png

    总结:Deployment是个两层的控制器。用re的个数描述应用的版本,用RE的属性来保证pod的副本数量。
    在滚动更新中,哪个pod先下线无法随便选择,自定义的控制器可以。

    相关文章

      网友评论

          本文标题:【k8s-12】--作业副本与水平扩展

          本文链接:https://www.haomeiwen.com/subject/wxaccqtx.html