步骤 | 巡检建议中的正确逻辑 (第一张图) | 您输入的错误命令 (第二张图) | 分析与修正 |
|---|---|---|---|
1. 获取节点名 | hostname或使用变量 ${nodename} | $(matrix01) | 错误: $(matrix01)是命令替换语法,会尝试执行名为 matrix01的命令。您的主机名是 matrix01,应该直接作为字符串使用。 |
2. 管道符号 | 竖线 \| | 字母 l(小写L) | 核心错误:您多次将管道符号 \|打成了字母 l,导致命令流中断。 |
3. grep 参数 | grep -B 1000 | grep-8 1000 | 错误:参数 -B前应有空格,且是字母 B,不是数字 8。-B表示显示匹配行之前的行。 |
4. 命令结构 | 一系列管道连接的命令 | 命令片段混乱,如 talil, H{a=$0} | 错误:存在拼写错误(如 tail打成 talil)和不合法的语法(如 H{a=$0})。整体命令结构已损坏。 |
5. 变量引用 | ${nodename} | $(matrix01) | 错误:在后续处理中,应用变量 ${nodename},而非固定的 matrix01或错误的命令替换。 |
matrix01节点上)依次执行:export nodename=$(hostname)
echo "当前节点名称: $nodename"kubectl describe node ${nodename} | grep -A 1000 "Non-terminated Pods" | grep -B 1000 "Allocated resources" | tail -n +4 | awk 'NR>1{print "'${nodename}' " a}{a=$0}END{}' | sed 's/[][] */ /g'kubectl describe node的输出中,精准提取出“非终止状态的Pod”列表及其资源分配情况,并进行格式化处理。matrix01这台服务器上操作。kubectl配置,能访问到对应的Kubernetes集群。kubectl get node确认能否列出节点,并检查 matrix01是否在列表中且状态为 Ready。kubectl describe node matrix01 \| grep -A 1000 "Non-terminated Pods",看是否有输出,逐步定位问题。kubectl get pod -o wide \| grep matrix01查看。|、空格和参数格式。
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论