kubectl 簡介

kubectl 是 Kubernetes 的瑞士軍刀 CLI,功能強大。

本書主要關注使用 kubectl 宣告式管理 Kubernetes 中的應用程式,但也涵蓋了其他 kubectl 的功能。

命令系列

大多數 kubectl 命令通常屬於以下幾個類別之一:

型別用途描述
宣告式資源管理部署和運維 (例如:GitOps)使用資源配置宣告式地管理 Kubernetes 工作負載
命令式資源管理僅用於開發使用命令列引數和標誌執行命令來管理 Kubernetes 工作負載
列印工作負載狀態除錯列印關於工作負載的資訊
與容器互動除錯Exec、attach、cp、logs
叢集管理叢集操作節點驅逐和隔離

宣告式應用程式管理

管理資源的首選方法是透過稱為資源配置的宣告式檔案,與 `kubectl apply` 命令一起使用。此命令讀取本地(或遠端)檔案結構,並修改叢集狀態以反映宣告的意圖。

列印工作負載狀態

使用者需要檢視工作負載狀態。

  • 列印資源的彙總狀態和資訊
  • 列印資源的完整狀態和資訊
  • 從資源中列印特定欄位
  • 查詢匹配標籤的資源

除錯工作負載

kubectl 透過提供以下命令來支援除錯:

  • 列印容器日誌
  • 列印叢集事件
  • 執行或附加到容器
  • 將叢集中容器的檔案複製到使用者的檔案系統

叢集管理

有時,使用者可能需要對叢集節點執行操作。kubectl 支援命令來驅逐節點上的工作負載,以便可以將其退役或進行除錯。

Porcelain (便捷命令)

對於開發,使用者可能覺得使用資源配置過於繁瑣,並更願意使用類 shell 工作流命令式地與叢集互動。kubectl 提供了 porcelain 命令來生成和修改資源。

  • 生成和建立資源,例如 Deployments、StatefulSets、Services、ConfigMaps 等。
  • 設定資源的欄位
  • 在文字編輯器中編輯(即時)資源
最後修改於 2024 年 4 月 30 日上午 10:31 (太平洋標準時間): kubectl/introduction.md 中一些術語使用小寫 (92ccce607e)