news 2026/8/6 13:58:57

K8s 全网高频常用命令大全

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
K8s 全网高频常用命令大全

目录

一、基础资源查看命令

二、Pod 排错核心命令(生产故障必备)

三、应用发布、更新、回滚、扩缩容

四、YAML资源管理(创建/编辑/导出/删除)

五、ConfigMap / Secret 配置管理

六、节点运维、调度、污点管理

七、RBAC 权限管理命令

八、容器运行时 containerd 常用命令

九、命令简写 & 别名技巧(提高效率)


一、基础资源查看命令

# 查看所有命名空间
kubectl get ns

# 查看全部Pod(所有命名空间)
kubectl get pods -A

# 指定命名空间查看Pod,详细信息(节点IP、宿主机)
kubectl get pods -n xxx -o wide

# 查看各类核心资源
#查看deployment部署

kubectl get deploy -n xxx

#简写

kubectl get deploy -n xxx

#查看service服务

kubectl get svc -n xxx

#查看daemonset守护集

kubectl get daemonset -n xxx

#简写

kubectl get ds -n xxx

#查看statefulset有状态应用

kubectl get statefulset -n xxx

#简写

kubectl get sts -n xxx

#查看configmap配置

kubectl get cm -n xxx

#查看secret密钥

kubectl get secret -n xxx

#一次性查看以上全部资源

kubectl get deploy,svc,ds,sts,cm,secret -n xxx


# 查看Service后端就绪Pod端点(排错必用)
kubectl get endpoints svc-name -n xxx

# 查看集群事件(按时间排序,排错第一步)
kubectl get events -n xxx --sort=.lastTimestamp
kubectl get events -A --sort=.lastTimestamp

# 查看集群节点状态
kubectl get nodes -o wide

# 查看K8s API资源及字段
kubectl api-resources
kubectl explain deployment.spec

# yaml格式输出完整资源

kubectl get pod pod-name -n xxx -o yaml

# json格式输出

kubectl get pod pod-name -n xxx -o json

# jsonpath提取字段,示例获取PodIP

kubectl get pods -n xxx -o jsonpath='{.items[*].status.podIP}'

# 自定义列输出

kubectl get pods -n xxx -o custom-columns="POD:.metadata.name,NODE:.spec.nodeName"

# 只打印资源名称

kubectl get pods -n xxx -o name

# 追加:资源使用率(依赖metrics‑server)

kubectl top pods -n xxx

kubectl top pods -n xxx --sort-by=cpu

kubectl top nodes

kubectl top nodes --sort-by=memory

# 追加:标签查看、筛选

# 显示资源标签

kubectl get pods -n xxx --show-labels

# 根据标签筛选Pod

kubectl get pods -n xxx -l app=demo

kubectl get pods -n xxx -l app=demo,env=prod

# 根据字段筛选,查找调度到node01的Pod

kubectl get pods -n xxx --field-selector spec.nodeName=node01

# 筛选异常状态Pod

kubectl get pods -n xxx --field-selector status.phase!=Running

# 追加集群基础信息

kubectl cluster-info

二、Pod 排错核心命令(生产故障必备)

# 查看Pod详细事件、报错、启动原因
kubectl describe pod pod-name -n xxx

# 查看当前容器日志
kubectl logs pod-name -n xxx

# 查看上一次崩溃日志(CrashLoopBackOff 专属)
kubectl logs pod-name --previous -n xxx

# 实时跟踪日志
kubectl logs -f pod-name -n xxx

# 进入Pod容器终端
kubectl exec -it pod-name -n xxx -- bash
kubectl exec -it pod-name -n xxx -- sh

# 临时网络调试Pod(排查网络、DNS、端口连通性)
kubectl run netshoot --rm -it --image=nicolaka/netshoot -n xxx -- bash

#本地端口转发Pod

kubectl port-forward pod/pod-name -n xxx 8080:80

#本地端口转发Service

kubectl port-forward svc/demo-svc -n xxx 8080:80

三、应用发布、更新、回滚、扩缩容

# 副本扩缩容
kubectl scale deployment app --replicas=3 -n xxx

# 滚动更新镜像
kubectl set image deployment/app 容器名=镜像地址:版本 -n xxx

# 查看发布历史版本
kubectl rollout history deployment app -n xxx

# 回滚至上一版本
kubectl rollout undo deployment app -n xxx

# 回滚到指定版本
kubectl rollout undo deployment app --to-revision=2 -n xxx

# 查看滚动更新实时状态
kubectl rollout status deployment app -n xxx

# =追加patch修改资源,无需编辑yaml

kubectl patch deployment app -n xxx -p '{"spec":{"replicas":5}}'

四、YAML资源管理(创建/编辑/导出/删除)

# 应用YAML创建/更新资源
kubectl apply -f xxx.yaml

# 批量应用文件夹内所有YAML
kubectl apply -f ./yaml/

# 导出现有资源YAML(用于备份、复用)
kubectl get deploy app -n xxx -o yaml > deploy.yaml

# 在线直接编辑资源
kubectl edit deployment app -n xxx

# 删除资源
kubectl delete -f xxx.yaml
kubectl delete pod pod-name -n xxx

# 强制删除卡死Terminating状态Pod
kubectl delete pod pod-name -n xxx --grace-period=0 --force

# 删除命名空间下全部Pod(不删deployment控制器)

kubectl delete pods --all -n xxx

# 删除命名空间下全部资源(谨慎操作)

kubectl delete all --all -n xxx

# 追加dryrun,预生成yaml不实际创建资源

kubectl run testpod --image=nginx -n xxx --dry-run=client -o yaml > pod.yaml

五、ConfigMap / Secret 配置管理

# 文件方式创建ConfigMap
kubectl create configmap app-config -n xxx --from-file=app.conf

# 创建私有仓库镜像拉取Secret
kubectl create secret docker-registry regsecret -n xxx \
--docker-server=仓库地址 \
--docker-username=用户名 \
--docker-password=密码

# 查看配置资源详情
kubectl describe cm app-config -n xxx
kubectl describe secret regsecret -n xxx

六、节点运维、调度、污点管理

# 禁止新Pod调度到当前节点
kubectl cordon node01

# 驱逐节点所有业务Pod,准备机器维护(忽略DaemonSet)
kubectl drain node01 --ignore-daemonsets

# 维护完成,恢复节点调度
kubectl uncordon node01

# 给节点打污点(禁止调度)
kubectl taint nodes node01 key=value:NoSchedule

# 删除节点污点
kubectl taint nodes node01 key-

# 追加查看节点污点

kubectl describe node node01 | grep Taints

# 追加节点标签操作

kubectl label nodes node01 env=prod

kubectl label nodes node01 env-

七、RBAC 权限管理命令

# 创建命名空间只读Role
kubectl create role pod-read --verb=get,list --resource=pods -n xxx

# 绑定用户与Role(命名空间级授权)
kubectl create rolebinding test-rb --role=pod-read --user=test -n xxx

# 创建集群级只读权限
kubectl create clusterrole cluster-pod-read --verb=get,list --resource=pods

# 全局绑定集群权限
kubectl create clusterrolebinding crb-test --clusterrole=cluster-pod-read --user=test

# 追加RBAC查询、权限校验

kubectl get roles -n xxx

kubectl get rolebindings -n xxx

kubectl get clusterroles

kubectl get clusterrolebindings

# 校验当前账号是否具备操作权限

kubectl auth can-i create pods -n xxx

八、容器运行时 containerd 常用命令

# 查看节点运行容器
crictl ps

# 查看本地镜像
crictl images

# 清理无用镜像、缓存
crictl prune

九、命令简写 & 别名技巧(提高效率)

常用简写对照表

  • pods → po
  • deployment → deploy
  • service → svc
  • namespace → ns
  • configmap → cm

永久配置别名(k代替kubectl)

echo "alias k='kubectl'" >> /etc/profile
source /etc/profile

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/6 13:55:41

实战派创业指南:如何用AI产品矩阵快速打开本地市场?

理论再美好,也需要实战来验证。加盟江苏好客搜,不仅仅是获得几款先进的AI产品,更是获得了一套经过500多家代理商验证过的、可复制的市场打法。本文将为你揭示如何利用好客搜的产品矩阵,快速在本地市场站稳脚跟,实现业务…

作者头像 李华
网站建设 2026/8/6 13:53:03

Android Studio中文界面革新:开启无障碍开发新时代

Android Studio中文界面革新:开启无障碍开发新时代 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本) 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack 还在为Android Stu…

作者头像 李华
网站建设 2026/8/6 13:51:49

OpenClaw AI智能体框架在CentOS9上的生产级部署与飞书集成

1. 项目概述OpenClaw作为一款新兴的开源AI智能体框架,正在企业自动化领域快速崛起。最近在帮一家电商客户部署OpenClaw到他们的CentOS9生产环境时,我深刻体会到这套系统与飞书集成的商业价值——原本需要3人轮班的客服工单系统,现在80%的常规…

作者头像 李华
网站建设 2026/8/6 13:47:58

BetterNCM安装器:3分钟完成网易云音乐插件一键安装与配置

BetterNCM安装器:3分钟完成网易云音乐插件一键安装与配置 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer 还在为网易云音乐功能单一而烦恼吗?BetterNCM-Install…

作者头像 李华
网站建设 2026/8/6 13:46:08

04 watch 与 Vue 响应式数据流

watch 与 Vue 响应式数据流 一、为什么需要 watch computed 适合根据已有状态计算结果,例如: const isRealtimeMode computed(() > displayMode.value realtime );但有些需求不是“得到一个新值”,而是“状态变化后执行一项操作”&am…

作者头像 李华