CKAD-2026-金丝雀部署

说明,这道题是k8s的ckad 2026年的考试题,这道题没什么难度,先把现有的deployment复制一份,修改下deployment的名字,再去修改副本数。

最短口诀(4 个字)

名、数、标、留

  • :改 Deployment 名字

  • :改副本数

  • :改 app 标签(selector + template 两处)

  • :保留 run 标签不动

为了测试新的应用程序发布,您需要准备一个金丝雀部署。

Task

namespace goshawk 中名为 chipmunk-service 的 Service 指向名为 current-chipmunk-deployment 的 Deployment 创建的 5 个 Pod。

你可以在 /home/student/中找到 current-chipmunk-deployment 的清单文件。

1、在同一 namespace 中创建一个相同的 Deployment,名为 canary-chipmunk-deployment

2、修改 Deployment,以便:

在 namespace goshawk 中运行的 Pod 的最大数量为 10 个

chipmunk.service 流量的 40%流向 Pod canary-chipmunk-deployment

使用-h 帮助更方便。 kubectl -h kubectl scale -h

答题

【1】 按照题目要求,在master 节点上执行,切换到题目要求节点

ssh ckad00000

【2】 开始修改配置文件

备份一下,防止改错

cp /home/student/current-chipmunk-deployment.yaml bak.yaml

编辑文件

vi /home/student/current-chipmunk-deployment.yaml

创建金丝雀,修改以下红色字体

bash 复制代码
apiVersion: apps/v1
kind: Deployment
metadata:
  name: canary-chipmunk-deployment #这个根据题目要求修改
  namespace: goshawk #检查一下对不对
spec:
  replicas: 5
  selector:
    matchLabels:
      app: canary #修改为canary
      run: chipmunk #这个是 current-chipmunk-deployment 和 canary-chipmunk-deployment 都有的公共标签。
  template:
    metadata:
      labels:
        app: canary #修改为canary
        run: chipmunk #这个是 current-chipmunk-deployment 和 canary-chipmunk-deployment 都有的公共标签
    spec:
      containers:
      - name: chipmunk
        image: nginx

编辑完后,按 ESC,再按 :wq 保存退出

【3】 创建

kubectl apply -f /home/student/current-chipmunk-deployment.yaml

【4】 按照题目要求,修复副本数

总共 10 个 Pod,将 60%流量给当前版本 Pod,就是 current-chipmunk-deployment 扩容至 6 个 pod

kubectl scale deployment current-chipmunk-deployment --replicas=6 -n goshawk

将 40%流量给金丝雀版本 Pod,就是 canary-chipmunk-deployment 扩容至 4 个 pod

kubectl scale deployment canary-chipmunk-deployment --replicas=4 -n goshawk

【5】 检查

kubectl get pod -n goshawk

相关推荐
@CLoudbays_Martin1129 分钟前
Linux 服务器如何查看是否被植入后门?
linux·服务器·网络·安全·github·ssl
拾光Ծ39 分钟前
【Linux网络】深入理解网络层:从IP协议格式,子网划分到NAT与路由机制
linux·网络·网络协议·tcp/ip·计算机网络
zho_uzhou1 小时前
ubuntu服务端运行vue网页步骤
linux·服务器·vue.js·ubuntu
Archy_Wang_18 小时前
LVS+KeepAlived+Nginx实现企业级业务高可靠部署的实战教程
运维·nginx·lvs
张文君9 小时前
docker使用代理拉取镜像
运维·docker·容器
ltl10 小时前
纠删码原理与存储效率
linux
ltl10 小时前
MinIO 原理和架构:机制、AGPL 与上游 archived 风险
linux
陌路2010 小时前
Docker教程从入门到精通(0基础)
运维·docker·容器
林浩杨_10 小时前
linux搜索命令(grep+sed)
linux·命令模式
W.W.H.10 小时前
将驱动编译成模块并安装到rootfs
linux·物联网·wifi·rootfs·驱动