zoukankan      html  css  js  c++  java
  • kubernetes集群系列资料08--deployment介绍

    一、deployment案例

    vim nginx-deployment.yaml
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
        name: nginx-deployment
    spec:
        replicas: 3
        template:                   #以下为嵌套pod的字段;
            metadata:
                labels:
                    tier: nginx
            spec:
                containers:
                - name: nginx
                  image: hub.atguigu.com/library/nginx:latest
                  ports:
                  - containerPort: 80   #由于k8s的网络为扁平化网络,直接可通过IP访问,因此无需声明端口。
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    kubectl apply -f nginx-deployment.yaml --record #--record参数可以记录命令,以便查看每次revision的变化。尽量加上该参数,如果不加,则 kubectl rollout history 查询历史版本时CHANGE-CAUSE的值皆为none。
    kubectl get deployment;kubectl get rs;kubectl get pod --show-labels   #创建deployment会自动创建对应的RS和pod出来。
    kubectl get pod -o wide #查看pod运行节点及IP;
    curl 10.244.2.36:80     #测试nginx服务是否能访问。
    kubectl scale deployment nginx-deployment --replicas=5 #对指定nginx-deployment进行扩容,此时,pod的RS不会发生变化;
    kubectl scale deployment nginx-deployment --replicas=2 #对指定nginx-deployment进行缩容,此时,pod的RS不会发生变化;
    kubectl get deployment;kubectl get rs;kubectl get pod   #查看扩容结果;
    # kubectl autoscale deployment nginx-deployment --min=2 --max=15 --cpu-percent=80 #如果集群支持HPA的化,还可以为deployment设置为自动扩展。
    kubectl exec nginx-deployment-567c69b49f-4vzqg -it -- /usr/sbin/nginx -v    #查看nginx版本为1.21.0;
    kubectl set image deployment/nginx-deployment nginx=nginx:1.19.1             #更新镜像为nginx:1.19.1;也可直接edit其yaml文件中image版本。此时,pod的RS会发生变化;
    kubectl exec nginx-deployment-5c5c5d7bdc-f9bvz -it -- /usr/sbin/nginx -v    #查看nginx更新后的版本为1.19.1;
    kubectl rollout undo deployment/nginx-deployment    #回滚nginx上一个版本
    kubectl rollout status deployment/nginx-deployment  #查看rollout的状态及更新流程(按照更新策略更新)。如果rollout成功完成,将会返回一个0的exit code。
    kubectl rollout history deployment/nginx-deployment #查看rollout的历史。
    kubectl rollout pause deployment/nginx-deployment   #暂停deployment的更新。
    kubectl rollout undo deployment/nginx-deployment --to-revision=2    #回滚nginx指定版本;
    kubectl exec nginx-deployment-567c69b49f-5mnx7 -it -- /usr/sbin/nginx -v    #查看nginx更新后的版本为1.21.0;
    kubectl get rs      #查看rs,包含历史RS;
    kubectl describe deployments #查看deployment详细信息,包含变更events;
    

      

  • 相关阅读:
    mybatis框架-用类映射返回结果
    ArrayLLis 线程不安 实验
    快速求幂运算笔记
    nyoj 56 阶乘中素数的个数
    求正整数n所有可能的和式的组合(如;4=1+1+1+1、1+1+2、1+3、2+1+1、2+2
    synchronize学习
    nyoj 找球号三(除了一个数个数为基数,其他为偶数,编程之美上的)
    递归判断一个数是否递增
    快速排序c++
    x&-x
  • 原文地址:https://www.cnblogs.com/chalon/p/14897611.html
Copyright © 2011-2022 走看看