2026年kubectl 配置文件(kubectl 命令)

kubectl 配置文件(kubectl 命令)https kubernetes io zh docs reference kubectl overview https kubernetes io zh docs reference kubectl kubectl kubectl annotate 更新资源所关联的注解 kubectl api resources 打印服务器上所支持的 API 资源 kubectl api versions 以 组 版本 的格式输出服务端所支持的 API 版本 kubectl



  • https://kubernetes.io/zh/docs/reference/kubectl/overview/
  • https://kubernetes.io/zh/docs/reference/kubectl/kubectl/
 
  
  • kubectl annotate - 更新资源所关联的注解
  • kubectl api-resources - 打印服务器上所支持的 API 资源
  • kubectl api-versions - 以“组/版本”的格式输出服务端所支持的 API 版本
  • kubectl apply - 基于文件名或标准输入,将新的配置应用到资源上
  • kubectl attach - 连接到一个正在运行的容器
  • kubectl auth - 检查授权信息
  • kubectl autoscale - 对一个资源对象(Deployment、ReplicaSet 或 - ReplicationController )进行扩缩
  • kubectl certificate - 修改证书资源
  • kubectl cluster-info - 显示集群信息
  • kubectl completion - 根据已经给出的 Shell(bash 或 zsh),输出 Shell 补全后的代码
  • kubectl config - 修改 kubeconfig 配置文件
  • kubectl convert - 在不同的 API 版本之间转换配置文件
  • kubectl cordon - 标记节点为不可调度的
  • kubectl cp - 将文件和目录拷入/拷出容器
  • kubectl create - 通过文件或标准输入来创建资源
  • kubectl debug - 创建用于排查工作负载和节点故障的调试会话
  • kubectl delete - 通过文件名、标准输入、资源和名字删除资源,或者通过资源和标签选择器来删除资源
  • kubectl describe - 显示某个资源或某组资源的详细信息
  • kubectl diff - 显示目前版本与将要应用的版本之间的差异
  • kubectl drain - 腾空节点,准备维护
  • kubectl edit - 修改服务器上的某资源
  • kubectl exec - 在容器中执行相关命令
  • kubectl explain - 显示资源文档说明
  • kubectl expose - 给定副本控制器、服务、Deployment 或 Pod,将其暴露为新的 kubernetes Service
  • kubectl get - 显示一个或者多个资源信息
  • kubectl kustomize - 从目录或远程 URL 中构建 kustomization
  • kubectl label - 更新资源的标签
  • kubectl logs - 输出 pod 中某容器的日志
  • kubectl options - 打印所有命令都支持的共有参数列表
  • kubectl patch - 基于策略性合并修补(Stategic Merge Patch)规则更新某资源中的字段
  • kubectl plugin - 运行命令行插件
  • kubectl port-forward - 将一个或者多个本地端口转发到 pod
  • kubectl proxy - 运行一个 kubernetes API 服务器代理
  • kubectl replace - 基于文件名或标准输入替换资源
  • kubectl rollout - 管理资源的上线
  • kubectl run - 在集群中使用指定镜像启动容器
  • kubectl scale - 为一个 Deployment、ReplicaSet 或 - - - - ReplicationController 设置一个新的规模尺寸值
  • kubectl set - 为对象设置功能特性
  • kubectl taint - 在一个或者多个节点上更新污点配置
  • kubectl top - 显示资源(CPU /内存/存储)使用率
  • kubectl uncordon - 标记节点为可调度的
  • kubectl version - 打印客户端和服务器的版本信息
  • kubectl wait - 实验性:等待一个或多个资源达到某种状态

kubectl命令中可以使用的缩写,具体如下:

  • certificatesigningrequests (缩写 csr)
  • componentstatuses (缩写 cs)
  • configmaps (缩写 cm)
  • customresourcedefinition (缩写 crd)
  • daemonsets (缩写 ds)
  • deployments (缩写 deploy)
  • endpoints (缩写 ep)
  • events (缩写 ev)
  • horizontalpodautoscalers (缩写 hpa)
  • ingresses (缩写 ing)
  • limitranges (缩写 limits)
  • namespaces (缩写 ns)
  • networkpolicies (缩写 netpol)
  • nodes (缩写 no)
  • persistentvolumeclaims (缩写 pvc)
  • persistentvolumes (缩写 pv)
  • poddisruptionbudgets (缩写 pdb)
  • pods (缩写 po)
  • podsecuritypolicies (缩写 psp)
  • replicasets (缩写 rs)
  • replicationcontrollers (缩写 rc)
  • resourcequotas (缩写 quota)
  • serviceaccounts (缩写 sa)
  • services (缩写 svc)
  • statefulsets (缩写 sts)
  • storageclasses (缩写 sc)

创建一个资源从一个文件或标准输入,与apply 区别是如果容器已经存在会报错

 
  

kubectl apply (-f FILENAME | -k DIRECTORY)

 
  

在集群中运行一个指定的镜像

 
  

创建Service对象以将应用程序"暴露"于网络中

 
  
 
  

显示一个或更多resources资源

 
  

显示集群信息

 
  

描述资源对象

 
  

pod扩容与缩容

 
  

如果一个容器已经在运行,这时需要对一些容器属性进行修改,又不想删除容器,或不方便通过replace的方式进行更新。kubernetes还提供了一种在容器运行时,直接对容器进行修改的方式,就是patch命令。

 
  

查看服务器上支持的API资源

 
  
 
  
 
  

选项

  • -c, --container="": 容器名。
  • -f, --follow[=false]: 指定是否持续输出日志。 --interactive[=true]: 如果为true,当需要时提示用户进行输入。默认为true。 --limit-bytes=0: 输出日志的最大字节数。默认无限制。
  • -p, --previous[=false]: 如果为true,输出pod中曾经运行过,但目前已终止的容器的日志。 --since=0: 仅返回相对时间范围,如5s、2m或3h,之内的日志。默认返回所有日志。只能同时使用since和since-time中的一种。 --since-time="": 仅返回指定时间(RFC3339格式)之后的日志。默认返回所有日志。只能同时使用since和since-time中的一种。 --tail=-1: 要显示的最新的日志条数。默认为-1,显示所有的日志。 --timestamps[=false]: 在日志中包含时间戳。
 
  

更新(增加、修改或删除)资源上的 label(标签)

  • label 必须以字母或数字开头,可以使用字母、数字、连字符、点和下划线,最长63个字符。
  • 如果--overwrite 为 true,则可以覆盖已有的 label,否则尝试覆盖 label 将会报错。
  • 如果指定了--resource-version,则更新将使用此资源版本,否则将使用现有的资源版本。

语法

 
  

例子

 
  
 
  

kubectl apply <file.yaml> --save-config创建或更新部署,并将部署另存为数据。 --save-config[=false]:如果为true,则当前对象的配置将保存在其注释中。当您将来要对此对象执行kubectl apply时,这非常有用。

 
  

kubectl apply 每次更新应用时 Kubernetes 都会记录下当前的配置,保存为一个 revision(版次),这样就可以回滚到某个特定 revision。 默认配置下,Kubernetes 只会保留最近的几个 revision,可以在 Deployment 配置文件中通过 revisionHistoryLimit 属性增加 revision 数量。 使用也很简单,在更新的时候加上--record就可以了。

举个栗子

如下做两个httpd的yaml,分别为httpd.v1.yml,httpd.v2.yml,分别对应不同的 httpd 镜像 2.4.16,2.4.17: image.png

 
  

注意:

  • record类似一个栈,先执行的apply会放到记录的最下端。也就是说你的上一个版本一定是2.
  • record记录的是apply的命令,所以如果每次执行的命令是一样的话,会覆盖掉。

官方文档:请此处

  • 默认master是不能调度应用pod的。如果要允许master调度应用pod(即做master,也做为node节点使用)。可以使用如下命令:
 
  
  • 要恢复master仅做master,不做node,命令如下:
今天的文章 
  2026年kubectl 配置文件(kubectl 命令)分享到此就结束了,感谢您的阅读。 
  

                    
编程小号
上一篇 2025-07-29 23:51
下一篇 2025-05-31 14:46

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/34379.html