k8s扩缩容与滚动更新

使用kubectl run创建应用

复制代码
kubectl run kubernetes-bootcamp \

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

> --port=8080

端口暴露出去

复制代码
kubectl expose pod kubernetes-bootcamp --type="NodePort" --port 8080

使用kubectl create创建应用

复制代码
kubectl create deployment kubernetes-bootcamp  \

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

端口暴露出去

复制代码
kubectl expose deployment/kubernetes-bootcamp \

> --type="NodePort" \

> --port 8080

run与create区别:

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

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

scale应用

默认情况下

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

复制代码
kubectl get deployments

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

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

查看当前pod

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

缩减副本

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

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

滚动更新

现在将其升级为v2

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

验证-更新成功

回退到上一个版本

执行 kubectl rollout undo命令

复制代码
kubectl rollout undo deployment/kubernetes-bootcamp

验证-回滚成功

相关推荐
霁月的小屋11 小时前
Docker 工程化实践(六):Docker Compose 管理多容器应用
运维·docker·容器
江湖有缘12 小时前
Docker实战 | 使用Docker部署EasyNode服务器面板工具
服务器·docker·容器
心机之蛙qee12 小时前
Docker Compose 多容器编排
java·docker·容器
上海安当技术13 小时前
老系统零改造接入:旁路代理统一认证实战
java·servlet·架构·kubernetes·jenkins
ShiXZ21313 小时前
Docker 安装 Elasticsearch 7.17.6 完整教程
elasticsearch·docker·容器
名字还没想好☜14 小时前
Kubernetes Pod 调度实战:nodeSelector、亲和性与 taint/toleration 把 Pod 放到指定节点
运维·云原生·容器·kubernetes·调度
念何架构之路14 小时前
moby-BuildKit(builder-next)
学习·docker·容器
风曦Kisaki14 小时前
Kubernetes(K8s)笔记Day04:控制器(ReplicaSet 与Deployment),滚动更新及回滚,滚动更新策略,Pod 的 DNS 策略
linux·运维·笔记·docker·容器·kubernetes
张忠琳14 小时前
【NVIDIA】k8s-device-plugin v0.19.3 辅助命令模块深度分析之七
云原生·容器·架构·kubernetes·nvidia
剧号14 小时前
互联网大厂Java面试全解析:Java SE 11, Spring Boot及微服务实战问答
java·微服务·面试·kafka·kubernetes·springboot·分布式系统