k8s常见的命令集锦

Kubernetes(K8s)是一个开源的容器编排系统,它提供了一系列的命令行工具 kubectl 来管理和操作集群中的资源。以下是一些常见的 kubectl 命令集锦:

  1. kubectl get:用于获取集群中的资源对象信息,如pods、nodes、services等。可以指定资源类型、命名空间和输出格式等。

  2. kubectl describe:用于查看资源对象的详细信息,包括其状态、事件历史、容器状态等。可以指定资源类型、名称和命名空间等。

  3. kubectl logs:用于查看Pod中容器的日志。可以指定Pod名称、容器名称和日志选项等。

  4. kubectl exec:用于在Pod中的容器内执行命令。可以指定Pod名称、容器名称和要执行的命令等。

  5. kubectl run:用于在集群中创建一个新的资源对象,如Pod、Deployment、Service等。可以指定资源类型、名称、镜像等信息。

  6. kubectl delete:用于删除集群中的资源对象。可以指定资源类型、名称和命名空间等。

  7. kubectl apply:用于通过YAML或JSON文件应用配置到集群中。可以指定文件名和命名空间等。

  8. kubectl create:用于通过YAML或JSON文件创建资源对象。可以指定文件名和命名空间等。

  9. kubectl label:用于给资源对象添加或更新标签。可以指定资源类型、名称、标签键和标签值等。

  10. kubectl annotate:用于给资源对象添加或更新注解。可以指定资源类型、名称、注解键和注解值等。

  11. kubectl rollout:用于管理Deployment、StatefulSet和DaemonSet等资源的滚动更新和回滚。可以指定资源类型、名称和更新选项等。

  12. kubectl cluster-info:用于获取集群的基本信息,如版本、API服务器地址等。

  13. kubectl config:用于管理kubectl的配置文件,如查看当前配置、设置上下文、切换集群等。

  14. kubectl apply -f <filename>: 应用一个配置文件到集群中。这个文件可以是一个或多个 Kubernetes 资源定义。

  15. kubectl exec -it <pod-name> -- <command>: 在一个正在运行的 Pod 中交互式地执行一个命令。

  16. kubectl rolling-update <deployment-name> -f <new-deployment-file>: 滚动更新一个 Deployment 的配置。

  17. kubectl scale --replicas=<number> <deployment-name>: 扩展或缩小一个 Deployment、ReplicaSet 或 ReplicationController 的副本数量。

  18. kubectl expose <resource-type> <resource-name> --port=<port> --type=<type>: 创建一个 Service 来暴露一个 Pod、Deployment 或其他资源。

  19. kubectl cp <file-path> <namespace>/<pod-name>:<pod-file-path>: 在本地和 Pod 之间复制文件。

  20. kubectl port-forward <pod-name> <local-port>:<pod-port>: 将本地端口转发到 Pod 的端口。

  21. kubectl proxy: 运行一个代理服务器,用于访问 Kubernetes API。

  22. kubectl auth can-i <verb> <resource>: 检查当前用户是否有权执行某个操作。

  23. kubectl get events --namespace=<namespace>: 获取指定命名空间中的事件信息。

  24. kubectl cluster-info dump: 将集群的状态信息输出到一个文件中,用于调试和诊断。

  25. kubectl describe <resource-type> <resource-name>: 显示资源的详细信息,包括其状态、配置和事件历史。

  26. kubectl label <resource-type> <resource-name> <key>=<value>: 更新资源的标签。

  27. kubectl taint nodes <node-name> <key>=<value>: 给节点添加或更新污点(taint),用于控制 Pod 的调度。

  28. kubectl cordon <node-name>: 标记节点为不可调度,阻止新的 Pod 被调度到该节点。

  29. kubectl uncordon <node-name>: 取消节点的不可调度状态,允许新的 Pod 被调度到该节点。

这些命令只是 kubectl 的一部分,实际上 kubectl 提供了非常丰富的功能来管理和监控 Kubernetes 集群。您可以随时查阅 Kubernetes 官方文档或使用 kubectl --help 命令来获取完整的命令列表和详细的帮助信息。

相关推荐
阿里云云原生1 天前
实战揭秘:如何通过 AI Agent Skill 让 K8s 应用自动接入云监控?
云原生
ba_pi1 天前
k8s删除pod
linux·容器·kubernetes
木雷坞1 天前
Qdrant Docker 部署教程:数据卷、API Key 和集合初始化
运维·docker·容器·知识图谱
张忠琳1 天前
【client-go v0.36.1】tools/cache 深度分析(下篇)— RealFIFO 深度、集成架构、生命周期、设计模式总结
云原生·kubernetes·cache·informer·client-go
张忠琳1 天前
【client-go v0.36.1】(store Part 2)Store 超深度分析 — threadSafeMap 核心、索引体系、RV追踪、事务机制
云原生·kubernetes·informer·store·client-go
sbjdhjd1 天前
04(上)| k8s中的微服务
微服务·云原生·kubernetes·开源·云计算·excel·kubelet
梦想的颜色1 天前
硬核|Docker从入门到精通:镜像构建、仓库推送、Compose编排、生产部署全攻略
运维·服务器·docker·容器·部署·环境·镜像
SXJR1 天前
使用docker 部署向量数据库Milvus
数据库·docker·容器·milvus·向量数据库
这个DBA有点耶1 天前
时序数据库深度对比:2026 年主流 TSDB 架构演进与选型指南
数据库·sql·云原生·架构·运维开发·时序数据库
qq_452396231 天前
第二篇:《K8s 集群搭建:Minikube、kubeadm、Kind 对比与实操》
容器·kubernetes·kind