当前位置: 首页 > backend >正文

2024 CKA模拟系统制作 | Step-By-Step | 11、题目搭建-查看可用节点数量

目录

一、题目

二、考点分析

1. Kubernetes节点状态与污点(Taint)理解

2. 命令行工具与文本处理

三、考点详细讲解

1. 节点状态与污点详解

2. 节点信息过滤逻辑

四、实验环境搭建步骤

五、总结


免费获取题库配套 CKA_v1.31_模拟系统

一、题目

您必须在以下Cluster/Node上完成此考题:    

  Cluster                                       Master node                                   Worker node

   mk8s                                          master                                              node01

设置配置环境:

[candidate@node01]$  kubectl config use-context mk8s

.

Context

查看可用节点数量

.

Task

检查有多少 nodes 已准备就绪(不包括被打上Taint:NoSchedule 的节点),并将数量写入

/opt/KUSC00402/kusc00402.txt

二、考点分析

1. Kubernetes节点状态与污点(Taint)理解

  • 核心考点:掌握Kubernetes节点状态(STATUS)和污点的过滤逻辑。

    • 节点状态Ready 表示节点健康可用,NotReady 表示节点不可用。

    • 污点(Taint)NoSchedule 污点会阻止新的Pod调度到该节点(已有Pod不受影响)。

  • 关键要求

    • 仅统计 STATUS=Ready 的节点。

    • 排除所有带有 NoSchedule 污点的节点。

2. 命令行工具与文本处理

  • 核心考点:使用 kubectl 结合 grepawk 或 jsonpath 过滤节点信息。

  • 关键操作

    • 提取节点的 STATUS 字段。

    • 检查节点的 TAINTS 字段是否包含 NoSchedule

    • 统计符合条件的节点数量并写入文件。

三、考点详细讲解

1. 节点状态与污点详解

  • 节点状态(STATUS)

状态含义
Ready节点正常运行,可接收Pod调度
NotReady节点异常(如kubelet故障、网络中断、资源不足)
  • 污点(Taint)类型

污点效果作用
NoSchedule禁止调度新Pod到该节点(已有Pod不受影响)
PreferNoSchedule尽量避免调度新Pod到该节点
NoExecute驱逐已有Pod(若Pod未声明容忍该污点)

2. 节点信息过滤逻辑

  • 目标:统计同时满足以下条件的节点数量:

    1. STATUS=Ready

    2. 污点中不包含 NoSchedule

  • 过滤步骤

    1. 使用 kubectl get nodes 获取所有节点信息。

    2. 筛选 STATUS 列为 Ready 的节点。

    3. 排除 TAINTS 列包含 NoSchedule 的节点。

四、实验环境搭建步骤

#创建文件,实验室存储实验结果
mkdir -p /opt/KUSC00402
chmod 777 /opt/KUSC00402

五、总结

关键知识点
  1. 节点状态判断:通过 kubectl get nodes 查看 STATUS 列。

  2. 污点过滤:使用 jsonpath 和 awk 排除 NoSchedule 污点。

  3. 结果输出:将统计结果写入指定文件。

速查命令
# 查看节点污点
kubectl describe node <节点名称> | grep Taints# 统计符合条件的节点数量
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name} {.status.conditions[?(@.type=="Ready")].status} {.spec.taints[*].effect}{"\n"}{end}' \| awk '$2 == "True" && !/NoSchedule/ {count++} END {print count}'

CKA高仿真环境简单演示视频

http://www.xdnf.cn/news/9553.html

相关文章:

  • Mysql基础增删改查语句
  • XCTF-web-file_include
  • 智慧财务系统:企业数字化转型的核心引擎
  • [yolov11改进系列]基于yolov11引入混合标准卷积与深度可分离卷积GSConv用于轻量化网络的python源码+训练源码
  • Android获取设备信息
  • github actions入门指南
  • .NET 9正式发布,亮点是.NET Aspire和AI
  • Linux `vi/vim` 编辑器深度解析与高阶应用指南
  • Golang | 搜索哨兵-对接分布式gRPC服务
  • vue修改配置文件.env.development不生效
  • 2025-05-28 学习记录--Python-文件
  • 对象检测新纪元:D-FINE 模型超越 YOLO,带来更精准的实时检测!
  • 6.2 Q1|哈尔滨医科大学GBD发文 | 1990 年至 2019 年颗粒物污染导致的中风全球趋势和负担
  • Python后端开发实战:从0到1搭建高可用API服务
  • 医疗器械企业批记录数字化转型实操指南
  • LeetCode hot100-6
  • C# 基于 Windows 系统与 Visual Studio 2017 的 Messenger 消息传递机制详解:发布-订阅模式实现
  • Python 包管理工具 uv的一些常用指令
  • AWS 创建VPC 并且添加权限控制
  • CloudCompare——点云统计滤波
  • element ui 表格 勾选复选框后点击分页不保存之前的数据问题
  • Service Worker介绍及应用(实现Web Push机制)
  • 【AI学习笔记】Coze平台实现生成小红书热门多图笔记
  • Metasploit工具使用详解(上)丨小白WEB安全入门笔记
  • 电子电路:什么是C类放大器?
  • ⚡️ Linux 系统安装与配置 Git
  • Windows SMB压缩在低速或者高延迟环境可以帮助提供性能增益
  • Linux驱动学习笔记(十)
  • vue-04(深入了解 props:验证、类型和默认值)
  • Django实现文件上传