2024 CKA模拟系统制作 | Step-By-Step | 9、题目搭建-扩容deployment副本数量
目录
一、题目
二、考点分析
1. 核心操作目标
2. 关键知识点
3. 易错点
三、考点详细讲解
1. Deployment扩缩容机制
2. 控制器工作原理
3. 状态验证与故障排查
四、实验环境搭建步骤
1. 部署名为presentation的Deployment:
五、常见问题排查
1. Deployment不存在
2. Pod无法达到Running状态
六、总结
免费获取题库配套 CKA_v1.31_模拟系统
一、题目
您必须在以下Cluster/Node上完成此考题:
Cluster Master node Worker node
uk8s master node01
.
设置配置环境:
[candidate@node01]$ kubectl config use-context uk8s
.
Context
利用deployment增加正在运行的应用pod数量
.
Task
将 deployment presentation 扩展至 4个 pods
二、考点分析
1. 核心操作目标
-
扩展Deployment副本数:将名为
presentation
的Deployment管理的Pod数量从当前值调整到4个。 -
理解Deployment控制器原理:Deployment通过ReplicaSet控制Pod副本数量,确保实际状态与期望状态一致。
2. 关键知识点
-
副本扩缩容方法:通过命令或修改定义文件调整副本数。
-
控制器机制:Deployment如何通过ReplicaSet管理Pod生命周期。
-
状态验证:检查Pod数量、状态及事件。
3. 易错点
-
命名空间忽略:若Deployment不在默认命名空间,需指定
-n
参数。 -
资源限制:集群资源不足可能导致Pod无法调度(Pending状态)。
-
命令语法错误:
kubectl scale
参数顺序或拼写错误。
三、考点详细讲解
1. Deployment扩缩容机制
-
副本数(Replicas):
Deployment通过spec.replicas
字段定义期望的Pod数量。Kubernetes会持续监控实际Pod数量,并通过ReplicaSet自动创建或删除Pod以满足期望值。 -
扩缩容方式:
方法 | 命令示例 | 适用场景 |
---|---|---|
命令直接扩容 | kubectl scale deploy presentation --replicas=4 | 快速临时调整 |
修改YAML文件 | 编辑Deployment YAML中的 replicas 字段后应用 | 持久化配置变更 |
2. 控制器工作原理
-
Deployment与ReplicaSet关系:
-
滚动更新:当Deployment配置变更(如镜像版本)时,会创建新的ReplicaSet并逐步替换旧Pod。
3. 状态验证与故障排查
-
关键命令:
# 查看Deployment状态
kubectl get deployment presentation
# 查看Pod详情(包括所在节点、IP、状态)
kubectl get pods -l app=presentation
# 查看事件日志(定位Pending等异常原因)
kubectl describe deployment presentation
四、实验环境搭建步骤
1. 部署名为presentation的Deployment:
kubectl create deployment presentation --image=nginx# 查看初始副本数(默认1个)
kubectl get deployment presentation
五、常见问题排查
1. Deployment不存在
-
错误现象:
-
解决方案:
-
检查Deployment名称拼写:
kubectl get deployments
。 -
确认命名空间:若Deployment不在默认命名空间,使用
-n <namespace>
。
-
2. Pod无法达到Running状态
-
可能原因:
-
镜像拉取失败:检查镜像名称是否正确(如
nginx
拼写错误)。 -
资源不足:集群CPU/内存不足,需释放资源或扩容节点。
-
节点故障:重启节点或迁移Pod。
-
-
诊断命令:
# 查看Pod详细状态
kubectl describe pod presentation-xxxxx
# 查看集群资源分配
kubectl top nodes
六、总结
通过本题,重点掌握:
-
Deployment扩缩容:使用
kubectl scale
快速调整副本数。 -
控制器原理:理解Deployment通过ReplicaSet管理Pod的机制。
-
状态验证:通过
kubectl get
和describe
命令监控应用状态。
关键命令速查表:
# 扩容
kubectl scale deployment <DEPLOYMENT_NAME> --replicas=<NUMBER># 查看Deployment
kubectl get deployment <DEPLOYMENT_NAME># 查看Pod
kubectl get pods -l app=<LABEL>
CKA高仿真环境简短演示视频