kubectl 命令基础
掌握与 Kubernetes Cluster 交互及管理资源所需的基本 `kubectl` 命令。
kubectl 命令基础 是 CoddyKit 上的免费 Docker & DevOps Fundamentals 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Docker & DevOps Fundamentals 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Docker & DevOps Fundamentals 课程共包含 4 节课。
认识您的 Kubernetes CLI
欢迎学习kubectl 命令基础!在本课中,您将学习如何使用 kubectl,这是一个让您能够与 Kubernetes 集群通信的命令行工具。
您可以把 kubectl 想象成管理应用程序、检查集群资源以及直接从终端调试问题的遥控器。

kubectl 如何建立连接
在 kubectl 执行任何操作之前,它需要知道要与哪个 Kubernetes 集群通信。这由一个kubeconfig 文件(通常为 ~/.kube/config)负责配置。
- 其中包含集群 IP、身份验证信息等连接详细信息。
kubectl会自动使用此文件中的默认上下文。- 您可以切换上下文来管理多个集群。
获取集群资源
kubectl get 命令非常基础且重要。它可以列出集群中的各种资源,例如容器组、节点、部署和服务。
它可以帮助您了解当前正在运行或已配置的内容。
kubectl get pods
kubectl get nodes
kubectl get services详细资源信息
get 提供摘要信息,而 kubectl describe 则提供有关特定资源的大量详细信息。其中包括事件、状态、配置等内容,对于调试问题至关重要。
kubectl describe pod my-app-pod-xyz
kubectl describe node my-node-name应用配置文件
您可以使用 YAML 文件定义 Kubernetes 资源。kubectl apply -f 命令用于根据这些文件创建或更新资源。它具有幂等性,这意味着您可以安全地多次运行它。
下面是一个简单的容器组定义:
apiVersion: v1
kind: Pod
metadata:
name: my-first-pod
spec:
containers:
- name: web
image: nginx:latest
ports:
- containerPort: 80使用 Apply 创建资源
要创建上一场景中定义的容器组,您需要将其保存为 .yaml 文件(例如 pod.yaml),然后使用 kubectl apply。
此命令会告知 Kubernetes,确保 YAML 中描述的状态与集群的实际状态一致。
kubectl apply -f pod.yaml
# After applying, verify:
kubectl get pod my-first-pod查看容器日志
进行故障排查时,检查容器日志通常是第一步。kubectl logs 命令可以获取容器组中特定容器的日志。
使用 -f 可以实时跟踪日志,就像使用 tail -f 一样。
kubectl logs my-first-pod
kubectl logs -f my-first-pod在容器组中执行命令
需要为了调试而在运行中的容器内执行命令吗?kubectl exec 正是为此而设计的。您甚至可以打开交互式 Shell。
-i:交互式-t:伪 TTY--:将kubectl选项与要运行的命令分隔开
kubectl exec -it my-first-pod -- bash
# Or run a single command:
kubectl exec my-first-pod -- ls /app删除资源
要从集群中移除资源,请使用 kubectl delete 命令。您可以按类型和名称删除资源,也可以指定用于创建资源的 YAML 文件。
使用 delete 时请务必谨慎,因为这是永久性操作!
kubectl delete pod my-first-pod
kubectl delete -f pod.yamlkubectl 命令检查
如果要获取名为 worker-node-1 的特定节点的详细信息,您会使用哪个 kubectl 命令?
回顾:您的 kubectl 工具箱
做得很好!您已经掌握了必备的 kubectl 命令:
get:列出资源。describe:获取详细信息。apply -f:根据 YAML 创建或更新资源。logs:查看容器输出。exec:在容器内运行命令。delete:移除资源。
这些命令是您日常与 Kubernetes 交互时的得力助手!
常见问题解答
「kubectl 命令基础」课时是免费的吗?
是的 — 「kubectl 命令基础」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Docker & DevOps Fundamentals 课程的其余内容,请升级到 CoddyKit PRO。 Docker & DevOps Fundamentals 课程共包含 4 节课。
「kubectl 命令基础」这节课中我会学到什么?
掌握与 Kubernetes Cluster 交互及管理资源所需的基本 `kubectl` 命令。 你通过在浏览器中直接运行的动手代码来练习 Docker & DevOps Fundamentals,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Docker & DevOps Fundamentals 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Docker & DevOps Fundamentals 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「kubectl 命令基础」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Docker & DevOps Fundamentals 课中编写并运行代码吗?
能。每节 Docker & DevOps Fundamentals 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- Kubernetes 架构
- Pod:最小单元
- kubectl 命令基础
- 使用命名空间与标签进行组织