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

验证-回滚成功

相关推荐
富士康质检员张全蛋28 分钟前
云原生|kubernetes|kubernetes的etcd集群备份策略
云原生·kubernetes·etcd
慧一居士44 分钟前
Kubernetes 中kind类型和各类型详细配置完整示例介绍
云原生·kubernetes·yaml配置
云手机管家2 小时前
CDN加速对云手机延迟的影响
运维·服务器·网络·容器·智能手机·矩阵·自动化
孤的心了不冷2 小时前
【Docker】CentOS 8.2 安装Docker教程
linux·运维·docker·容器·eureka·centos
头疼的程序员3 小时前
docker学习与使用(概念、镜像、容器、数据卷、dockerfile等)
学习·docker·容器
淡水猫.3 小时前
hbit资产收集工具Docker(笔记版)
运维·docker·容器
水淹萌龙9 小时前
k8s 中使用 Service 访问时NetworkPolicy不生效问题排查
云原生·容器·kubernetes
alden_ygq11 小时前
K8S cgroups详解
容器·贪心算法·kubernetes
旧故新长12 小时前
访问 Docker 官方镜像源(包括代理)全部被“重置连接”或超时
运维·docker·容器
matrixlzp13 小时前
K8S Gateway AB测试、蓝绿发布、金丝雀(灰度)发布
kubernetes·gateway·ab测试