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

相关推荐
元直数字电路验证9 分钟前
云计算实验笔记(四):容器编排(Container Orchestration)
运维·笔记·docker·云计算
kukubuzai28 分钟前
Docker Note
linux·运维·docker
网络研究院44 分钟前
Proton Drive采用OpenPGP加密,上传速度提升300%
服务器·网络·安全·proton drive·openpgp
Ltd Pikashu1 小时前
insmod 加载内核模块 —— sys_init_module 源码剖析
linux·kernel·insmod
大貔貅喝啤酒1 小时前
pip 国内镜像源大全【测试 / 自动化开发常备】
运维·自动化·pip·国内镜像源
遇见小修修1 小时前
选择诚信上门修电脑服务,应参考哪些判断标准?
服务器·电脑·负载均衡
hj2862511 小时前
Linux网络基础一
linux·运维
世人万千丶1 小时前
鸿蒙PC异常解决:Install Failed: error: failed to install bundle.
服务器·华为·开源·harmonyos·鸿蒙
云计算磊哥@1 小时前
运维开发宝典023-WEB网站服务
运维·前端·运维开发
likerhood1 小时前
服务器使用 vLLM 部署 Qwen2.5-Coder-7B-CL 笔记
服务器·笔记·vllm