kubectl 简介

kubectl 是 Kubernetes 的命令行界面,类似于瑞士军刀,可以做很多事情。

虽然本书重点介绍使用 kubectl 在 Kubernetes 中以声明式方式管理应用程序,但它也涵盖了其他 kubectl 功能。

命令族

大多数 kubectl 命令通常属于以下几个类别之一

类型用途描述
声明式资源管理部署和操作(例如 GitOps)使用资源配置以声明式方式管理 Kubernetes 工作负载
命令式资源管理仅限开发运行命令以使用命令行参数和标志管理 Kubernetes 工作负载
打印工作负载状态调试打印有关工作负载的信息
与容器交互调试Exec、attach、cp、logs
集群管理集群操作清空和隔离节点

声明式应用程序管理

管理资源的首选方法是通过称为资源配置的声明式文件,这些文件与 kubectl Apply 命令一起使用。此命令读取本地(或远程)文件结构,并修改集群状态以反映声明的意图。

打印有关工作负载的状态

用户需要查看工作负载状态。

  • 打印资源的摘要状态和信息
  • 打印资源的完整状态和信息
  • 打印资源中的特定字段
  • 查询与标签匹配的资源

调试工作负载

kubectl 通过提供以下命令来支持调试

  • 打印容器日志
  • 打印集群事件
  • 执行或附加到容器
  • 将集群中容器中的文件复制到用户的文件系统

集群管理

有时,用户可能需要对集群的节点执行操作。kubectl 支持命令来清空节点上的工作负载,以便可以对其进行停用或调试。

Porcelain

用户可能会发现使用资源配置对于开发来说过于冗长,并且更喜欢以类似 shell 的工作流程命令式地与集群交互。kubectl 提供了用于生成和修改资源的 Porcelain 命令。

  • 生成和创建资源,例如部署、有状态集、服务、配置映射等。
  • 设置资源上的字段
  • 在文本编辑器中编辑(实时)资源
上次修改时间:2024 年 4 月 30 日下午 10:31 PST:在 kubectl/introduction.md 中使用一些术语的小写形式 (92ccce607e)