• Deployment 大全 20220423


    deployment 大全


    1)、部署
    kubel apply -f xxx.yaml

    apiVersion: apps/v1
    kind: Deployment
    metadata:
    name: web
    ### namespace : default
    spec:
    replicas: 3 #pod副本数量
    selector:
    matchLabels:
    app: nginx
    template:nginx
    metadata:
    labels:
    app: web #pod副本标签
    spec:
    containers:
    - name: nginx
    image: nginx:1.16
    ports:
    - containerPort: 80

    2)、镜像升级
    ####滚动升级################1.16 -->1.17 --> 1.18
    ###kubel set image deployment/web nginx=nginx:1.17


    ###kubectl get pods
    ###kubectl delete deployment web
    ###kubectl get services
    ###kubectl delete service web
    ###kubectl get pods,service

     

     


                             i)、###部署deployment.yaml

    vi deployment.yaml


    ######deployment、service

    demo.yaml


    kubectl apply -f  deployment.yaml
    ##kubectl get pods,service

    端口暴露

     

    http://192.168.254.149:30787/


                       ii)、###升级nginx:1.17      方式一
    vi deployment.yaml


    image: nginx:1.17 ###1.16--->1.17
    kubectl apply -f deployment.yaml


    ##kubectl get pods,service


    http://192.168.254.149:30787/

    iii)、###升级过程 查看
    kubectl describe deployment web


                                        iiii)、###升级nginx:1.18 方式二 ###1.17--->1.18

                                         #### kubectl   set image       deployment    web   <容器名称>=镜像名称 

            a、####查看容器名称
            #spec:
            ##containers:
            ## - name: nginx

                                      

                            b、####升级

                           kubectl set image       deployment    web       nginx=nginx:1.18

     

     http://192.168.254.149:30787/

    3)、升级回滚

    kubectl rollout history deployment/web ###查看历史发布版本

    #### ###1.18--->1.17
    kubectl rollout undo deployment/web ###回滚上一个版本
    ##kubectl get pods,service


    http://192.168.254.149:30787/

     

    ####kubectl rollout history deployment/web #####
    kubectl rollout undo deployment/web --to-revision=2 ###回滚历史指定版本

    #### ###1.17--->1.18
    vi deployment.yaml


    ##kubectl apply -f deployment.yaml --record
    ##kubectl rollout history deployment web

     


    ##kubectl get pods,service

    kubectl rollout history deployment/web 

    ## ###1.18--->1.19
    kubectl set image deployment web nginx=nginx:1.19 --record=true
    ##kubectl rollout history deployment web

    ## ###1.18--->1.19
    kubectl set image deployment web nginx=nginx:1.19 --record=true
    ##kubectl rollout history deployment web


    ## ###1.18--->1.16
    kubectl rollout undo deployment/web --to-revision=1

     

     

    4)、镜像扩/宿容
    i)、水平扩####replicas 副本数

            a)、####修yaml的repli cas值,再apply -f
    ## kubectl get pods
    ##kubectl get pods -w ####实时


    vi deployment.yaml
    ######replicas=6


    kubectl apply -f deployment.yaml --record

    kubectl   get pods -w  ####实时

     

     

    修yaml的repli cas=8值,再apply -f   如下

    ##kubectl rollout history  deployment   web###查看历史

     


              b)、#####kubectl scale deployment web --replicas=3

     kubectl   get pods -w  ####实时

    5)、镜像下线

                                                    a)、#####kubectl delete -f deployment.yaml
    ####kubectl delete service web

                                         b)、#####kubectl delete deployment web
    #####kubectl delete svc/web

    注:kubectl  delete  pod   webxxxxxx###deployment会根据replicas值自动恢复

  • 相关阅读:
    python分包写入文件,写入固定字节内容,当包达到指定大小时继续写入新文件
    java 封装及this 用法
    [效率提升] 记一次使用工具编辑正则表达式快速输出匹配结果
    java用星星符号打印出一个直角三角形
    java按行和列进行输出数据
    java 三种循环及注意事项
    数据的运算,求和,两数求最大,三数求最大,两数是否相等
    采用位异或方式将两个变量数值调换
    今天遇到一件开心事,在eclipse编写的代码在命令窗口中编译后无法运行,提示 “错误: 找不到或无法加载主类”
    定义 java 基本数据类型
  • 原文地址:https://www.cnblogs.com/smallfa/p/16181312.html
Copyright © 2020-2023  润新知