kubectl 介绍
kubectl 是 Kubernetes CLI 版本的瑞士军刀,功能非常强大。
虽然本书重点介绍如何使用 kubectl 以声明式方式管理 Kubernetes 中的应用,但它也涵盖了 kubectl 的其他功能。
命令族
大多数 kubectl 命令通常属于以下几种类别之一
类型 | 用途 | 描述 |
---|---|---|
声明式资源管理 | 部署和操作(例如 GitOps) | 使用资源配置声明式地管理 Kubernetes 工作负载 |
命令式资源管理 | 仅用于开发 | 使用命令行参数和标志运行命令来管理 Kubernetes 工作负载 |
打印工作负载状态 | 调试 | 打印工作负载相关信息 |
与容器交互 | 调试 | Exec、attach、cp、logs |
集群管理 | 集群操作 | 排空和禁用节点 |
声明式应用管理
管理资源的首选方法是使用 kubectl 的 Apply 命令操作声明式文件,这些文件被称为资源配置。此命令读取本地(或远程)的文件结构,并修改集群状态以反映声明的意图。
Apply
Apply 是在 Kubernetes 集群中管理资源的首选机制。打印工作负载状态
用户需要查看工作负载状态。
- 打印资源的摘要状态和信息
- 打印资源的完整状态和信息
- 打印资源的特定字段
- 查询与标签匹配的资源
调试工作负载
kubectl 通过提供以下命令支持调试:
- 打印容器日志
- 打印集群事件
- Exec 或附着到容器
- 从集群中的容器复制文件到用户文件系统
集群管理
有时,用户可能需要对集群节点执行操作。kubectl 支持从节点排空工作负载的命令,以便可以停用或调试节点。
瓷器命令
用户可能会发现使用资源配置进行 开发 过于繁琐,更喜欢使用类似 shell 的工作流以 命令式 方式操作集群。kubectl 提供瓷器命令用于生成和修改资源。
- 生成 + 创建诸如 Deployments、StatefulSets、Services、ConfigMaps 等资源。
- 设置资源的字段
- 在文本编辑器中编辑(实时)资源
瓷器命令仅用于开发
瓷器命令在开发集群中实验工作负载时可以节省时间,但不应在生产环境中使用。最后修改时间:太平洋标准时间 2024 年 4 月 30 日 上午 10:31:在 kubectl/introduction.md 中使用小写术语 (92ccce607e)