100个k8s高效命令大全

一、基础命令

  1. kubectl apply -f [file] :使用指定文件中的内容创建或更新资源。
  2. kubectl create -f [file] :用指定文件中的内容创建资源。
  3. kubectl delete resource [name] :删除一个资源。
  4. kubectl delete -f [file] :从指定文件中删除资源。
  5. kubectl edit resource [name] :编辑某个资源的定义。
  6. kubectl get [resource] :查看资源的列表。
  7. kubectl describe [resource] [name] :查看资源的详细信息。
  8. kubectl explain [resource] :查看资源的字段描述。
  9. kubectl api-versions :查看API版本。
  10. kubectl cluster-info :查看集群信息。
  11. kubectl config current-context:查看当前上下文的名称。
  12. kubectl config get-contexts:查看上下文的列表。
  13. kubectl config set-context [name] :设置当前上下文。
  14. kubectl config use-context [name] :切换到指定的上下文。

二、资源操作命令

15 . kubectl run [name] --image=[image] :使用指定镜像创建一个pod。

16 . kubectl scale [resource] [name] --replicas=[number] :为某个资源设置副本数。

17 . kubectl set image [resource] [name] [container]=[image] :为某个资源的某个容器设置镜像。

18 . kubectl expose [resource] [name] --port=[port] --target-port=[target-port] --type=[type] :为指定资源创建服务。

19 . kubectl label [resource] [name] [key]=[value] :为某个资源设置标签。

20 . kubectl annotate [resource] [name] [key]=[value] :为某个资源设置注释。

21 . kubectl taint [node] [key]=[value]:[effect] :在节点上设置污点。

22 . kubectl uncordon [node] :解除节点的停机维护状态。

23 . kubectl cordon [node] :标记节点为不可调度。

24 . kubectl drain [node] :排空节点以准备维护。

三、Pod操作命令

25 . kubectl exec [pod] [command] :在运行的pod中执行一个命令。

26 . kubectl logs [pod] :查看pod的日志。

27 . kubectl port-forward [pod] [localPort:remotePort] :将pod的端口转发到本地。

28 . kubectl attach [pod] :连接到运行中的容器。

29 . kubectl cp [file-path] [namespace]/[pod]:[container-path] :复制文件到pod或从pod复制文件。

四、滚动更新命令

30 . kubectl rollout status [resource] [name] :查看一个滚动更新的状态。

31 . kubectl rollout undo [resource] [name] :撤销一个滚动更新。

32 . kubectl rollout history [resource] [name] :查看一个滚动更新的历史记录。

33 . kubectl rollout restart [resource] [name] :重新启动一个滚动更新。

34 . kubectl rollout pause [resource] [name] :暂停一个滚动更新。

35 . kubectl rollout resume [resource] [name] :恢复一个滚动更新。

五、集群管理命令

36 . kubectl top [resource] [name] :查看资源的使用情况。

37 . kubectl certificate approve [name] :批准证书签发请求。

38 . kubectl certificate deny [name] :拒绝证书签发请求。

39 . kubectl auth can-i [verb] [resource] :查看当前用户是否有指定动作的权限。

40 . kubectl api-resources :输出服务端API支持的资源类型。

六、高级命令

41 . kubectl diff -f [file] :比较本地文件和远程资源之间的区别。

42 . kubectl patch [resource] [name] :更新资源的字段。

43 . kubectl replace -f [file] :通过文件名替换一个资源。

44 . kubectl kustomize [directory] :从指定目录构建kustomization目标。

45 . kubectl wait [conditions] :等待一个或多个资源满足特定条件。

七、调试与日志命令

46 . kubectl logs [pod] -f :实时查看pod的日志。

47 . kubectl logs [pod] --tail=N :查看pod的最后N行日志。

48 . kubectl logs [pod] | grep [keyword] :根据关键字查看pod的日志。

49 . kubectl debug [pod] :对指定的pod进行调试。

八、其他常用命令

50 . kubectl version :查看集群的版本信息。

51 . kubectl namespace :查看或管理命名空间。

52 . kubectl completion :输出shell自动补全代码。

53 . kubectl label nodes [node-name] [label-key]=[label-value] :给节点打标签。

54 . kubectl label nodes [node-name] [label-key]- :删除节点的标签。

55 . kubectl taint nodes [node-name] [key]=value:[effect] :给节点添加污点。

56 . kubectl taint nodes [node-name] [key]:[effect]- :删除节点的污点。

57 . kubectl edit svc/[service-name] :编辑指定的service。

58 . kubectl get pods -A :查看所有命名空间下的pod。

59 . kubectl get pods -n [namespace]:查看指定命名空间下的pod。

60 . kubectl get nodes --show-labels:查看所有节点及其标签。

61 . kubectl get services:查看集群中服务的状态。

62 . kubectl get statefulset:查看statefulset列表。

63 . kubectl describe nodes:显示集群节点资源的使用情况以及标签。

64 . kubectl describe pods:显示指定pod的详细信息。

65 . kubectl describe quota:查看集群的资源配额。

66 . kubectl describe limitrange:查看集群的资源限制。

67 . kubectl get pod -o wide | grep [keyword] :查询包含特定关键字的pod,并输出详细信息。

九、资源管理与扩展命令

68 . kubectl autoscale [resource] [name] --min=[min-replicas] --max=[max-replicas] :为资源设置自动扩缩容。

69 . kubectl scale deployment [name] --replicas=[number] :为deployment设置副本数。

70 . kubectl top node [node-name] :查看指定节点的资源使用情况。

71 . kubectl top pod [pod-name] -n [namespace] :查看指定命名空间下pod的资源使用情况。

十、特定资源类型操作命令

72 . kubectl create secret [type] [name] --from-file=[file] :创建secret资源。

73 . kubectl create configmap [name] --from-file=[file] :创建configmap资源。

74 . kubectl get secrets :查看集群中的secret资源。

75 . kubectl get configmaps :查看集群中的configmap资源。

76 . kubectl delete secret [name] :删除指定的secret资源。

77 . kubectl delete configmap [name] :删除指定的configmap资源。

十一、与存储相关的命令

78 . kubectl create persistentvolume [name] --capacity=[capacity] --accessmodes=[modes] :创建persistentvolume资源。

79 . kubectl create persistentvolumeclaim [name] --accessmodes=[modes] --storageclass=[class] --request-storage=[size] :创建persistentvolumeclaim资源。

80 . kubectl get persistentvolumes :查看集群中的persistentvolume资源。

81 . kubectl get persistentvolumeclaims :查看集群中的persistentvolumeclaim资源。

十二、与网络相关的命令

82 . kubectl create networkpolicy [name] --pod-selector=[selector] :创建networkpolicy资源以控制pod间的网络通信。

83 . kubectl get networkpolicies :查看集群中的networkpolicy资源。

十三、与RBAC(基于角色的访问控制)相关的命令

84 . kubectl create role [name] --verb=[verbs] --resource=[resources] --namespace=[namespace] :创建role资源。

85 . kubectl create rolebinding [name] --role=[role-name] --user=[username] --namespace=[namespace] :创建rolebinding资源以将role绑定到用户。

86 . kubectl get roles :查看集群中的role资源。

87 . kubectl get rolebindings :查看集群中的rolebinding资源。

十四、CronJob与定时任务相关命令

88 . kubectl create cronjob [name] --image=[image] --schedule="[cron expression]":创建CronJob资源,用于按指定计划运行容器。

89 . kubectl get cronjobs:查看集群中所有的CronJob资源。

90 . kubectl describe cronjob [name]:查看指定CronJob的详细信息。

十五、高级配置与管理命令

91 . kubectl proxy :启动一个代理服务器,可以通过浏览器访问Kubernetes API。

92 . kubectl api-resources --verbs=list,watch,create,update,patch,delete :列出所有支持特定操作的API资源。

93 . kubectl plugin list :列出所有已安装的kubectl插件。

94 . kubectl completion bash :生成bash自动补全脚本。

95 . kubectl config set-cluster [cluster-name] --server=[server] --certificate-authority=[cert-path] :设置集群信息。

96 . kubectl config set-credentials [user-name] --client-certificate=[cert-path] --client-key=[key-path] --token=[token] :设置用户凭据。

97 . kubectl config set-context [context-name] --cluster=[cluster-name] --user=[user-name] --namespace=[namespace] :设置上下文。

十六、自定义资源定义(CRD)相关命令

98 . kubectl apply -f [crd-yaml-file] :应用自定义资源定义(CRD)文件,创建新的资源类型。

99 . kubectl get crd :列出所有已定义的自定义资源。

100 . kubectl get [crd-plural] :查看特定自定义资源的实例列表,其中[crd-plural]是CRD定义中的plural字段值。

相关推荐
Hello_Embed7 小时前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中7 小时前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust
Magnetic_h8 小时前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
研梦非凡9 小时前
ICCV 2025|从粗到细:用于高效3D高斯溅射的可学习离散小波变换
人工智能·深度学习·学习·3d
limengshi13839210 小时前
机器学习面试:请介绍几种常用的学习率衰减方式
人工智能·学习·机器学习
知识分享小能手10 小时前
React学习教程,从入门到精通,React 组件核心语法知识点详解(类组件体系)(19)
前端·javascript·vue.js·学习·react.js·react·anti-design-vue
周周记笔记11 小时前
学习笔记:第一个Python程序
笔记·学习
优雅鹅11 小时前
ARM、AArch64、amd64、x86_64、x86有什么区别?
arm开发·学习
..过云雨12 小时前
05.【Linux系统编程】进程(冯诺依曼体系结构、进程概念、进程状态(注意僵尸和孤儿)、进程优先级、进程切换和调度)
linux·笔记·学习
咸甜适中12 小时前
rust语言 (1.88) egui (0.32.2) 学习笔记(逐行注释)(二十八)使用图片控件显示图片
笔记·学习·rust·egui