0Pricing
Docker & DevOps Fundamentals · 课时

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 命令基础 — 插图 1

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.yaml

kubectl 命令检查

如果要获取名为 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 反馈 — 无需本地设置。

此课程中的所有课时

  1. Kubernetes 架构
  2. Pod:最小单元
  3. kubectl 命令基础
  4. 使用命名空间与标签进行组织
← 返回 Docker & DevOps Fundamentals