k8s扩缩容与滚动更新
  uZXPSEdmXBBl 2023年11月05日 41 0


使用kubectl run创建应用

kubectl run kubernetes-bootcamp \

> --image=docker.io/jocatalin/kubernetes-bootcamp:v1 \

> --port=8080

k8s扩缩容与滚动更新_云原生

端口暴露出去

kubectl expose pod kubernetes-bootcamp --type="NodePort" --port 8080

k8s扩缩容与滚动更新_容器_02

使用kubectl create创建应用

kubectl create deployment kubernetes-bootcamp  \

--image=docker.io/jocatalin/kubernetes-bootcamp:v1

端口暴露出去

kubectl expose deployment/kubernetes-bootcamp \

> --type="NodePort" \

> --port 8080

k8s扩缩容与滚动更新_容器_03

run与create区别:

run为一次性的创建运行,删除后不会自动生成,没有pod控制器

create创建的,删除后还会自动生成,有pod控制器,拥有副本集控制

scale应用

默认情况下

应用只会运行一个副本,可以通过命令查看副本数

kubectl get deployments

k8s扩缩容与滚动更新_容器_04

执行如下命令将副本数增加到3个,如图所示。

kubectl scale deployments/kubernetes-bootcamp --replicas=3

k8s扩缩容与滚动更新_kubernetes_05

查看当前pod

k8s扩缩容与滚动更新_容器_06

通过curl访问应用,可以看到每次请求发送到不同的Pod,3个副本轮询处理,这样就实现了负载均衡

k8s扩缩容与滚动更新_kubernetes_07

缩减副本

kubectl scale deployment/kubernetes-bootcamp --replicas=2

k8s扩缩容与滚动更新_云原生_08

显示其中一个副本被删除了

k8s扩缩容与滚动更新_云原生_09

滚动更新

k8s扩缩容与滚动更新_云原生_10

现在将其升级为v2

kubectl set image deployments/kubernetes-bootcamp kubernetes-bootcamp=jocatalin/kubernetes-bootcamp:v2

k8s扩缩容与滚动更新_kubernetes_11

验证-更新成功

k8s扩缩容与滚动更新_云原生_12

回退到上一个版本

执行 kubectl rollout undo命令

kubectl rollout undo deployment/kubernetes-bootcamp

k8s扩缩容与滚动更新_docker_13

验证-回滚成功

k8s扩缩容与滚动更新_docker_14

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  sElzGQA8fX6P   2023年12月12日   43   0   0 Dockerredisdockerredis
  xaeiTka4h8LY   2024年05月31日   29   0   0 Dockerredis
uZXPSEdmXBBl