zoukankan      html  css  js  c++  java
  • K8S Deployment 命令

    创建 Deployment

    kubectl create -f https://kubernetes.io/docs/user-guide/nginx-deployment.yaml --record
    deployment "nginx-deployment" created

    将kubectl的 --record 的 flag 设置为 true可以在 annotation 中记录当前命令创建或者升级了该资源。这在未来会很有用,例如,查看在每个 Deployment revision 中执行了哪些命令。

    然后立即执行 get 将获得如下结果:

    kubectl get deployment  

    NAME                  DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
    alpine-fbgweb         1         1         1            1           12h
    alpine-lnp            1         1         1            1           3d
    demo-deployment       3         3         3            3           15h
    jenkins               1         1         1            1           3d
    nginx-dm              2         2         2            2           13d
    nginx1-7-deployment   1         1         1            1           15h
    nginx1-8-deployment   1         1         1            1           15h

    更新Deployment

    扩容:

    kubectl scale deployment nginx-deployment --replicas 10

    如果集群支持 horizontal pod autoscaling 的话,还可以为Deployment设置自动扩展:

    kubectl autoscale deployment nginx-deployment --min=10 --max=15 --cpu-percent=80 

    更新镜像也比较简单:

    kubectl set image deployment/nginx-deployment nginx=nginx:1.9.1

    回滚到上一个版本:

    kubectl rollout undo deployment/nginx-deployment

    也可以使用 --revision参数指定某个历史版本:

     kubectl rollout undo deployment/nginx-deployment --to-revision=2
    deployment "nginx-deployment" rolled back

    历史记录

    kubectl rollout history deployment/alpine-fbgweb   

    REVISION        CHANGE-CAUSE
    1               kubectl apply --filename=/data/scripts/app/fbgweb.yaml --record=true
    2               kubectl apply --filename=/data/scripts/app/fbgweb.yaml --record=true

    创建 Deployment 的时候使用了--record参数可以记录命令,我们可以很方便的查看每次 revision 的变化。

    查看单个revision 的详细信息:

    kubectl rollout history deployment alpine-fbgweb --revision=1

    [root@master scripts]# kubectl rollout history deployment alpine-fbgweb --revision=1
    deployments "alpine-fbgweb" with revision #1
    Pod Template:
      Labels:       app=alpine-fbgweb
            pod-template-hash=469852024
      Annotations:  kubernetes.io/change-cause=kubectl apply --filename=/data/scripts/app/fbgweb.yaml --record=true
      Containers:
       alpine-fbgweb:
        Image:      192.168.0.153:5000/fbgweb:2017-11-13-13-49-30
        Port:       80/TCP
        Environment:        <none>
        Mounts:
          /etc/localtmie from tz-config (rw)
      Volumes:
       tz-config:
        Type:       HostPath (bare host directory volume)
        Path:       /usr/share/zoneinfo/Asia/Shanghai 
  • 相关阅读:
    vue比较模板来跟新数据
    iframe自适应高度
    springmvc接口ios网络请求
    spring mvc实现接口参数统一更改
    spring mvc实现自定义注解
    基于redis集群实现的分布式锁,可用于秒杀,定时器。
    java使用javax.mail进行免费的邮件发送
    前端图片压缩上传(纯js的质量压缩,非长宽压缩)
    java项目中的路径获取,request
    阿里云(腾讯云类似)服务器控制台配置开放所有的端口
  • 原文地址:https://www.cnblogs.com/Tempted/p/7831604.html
Copyright © 2011-2022 走看看