kubectl 簡介
kubectl 是 Kubernetes cli 版本的瑞士刀,可以做很多事情。
雖然本書重點在使用 kubectl 以宣告方式管理 Kubernetes 中的應用程式,但也涵蓋了其他 kubectl 功能。
命令系列
大多數 kubectl 命令通常屬於幾個類別之一
類型 | 用途 | 說明 |
---|---|---|
宣告式資源管理 | 部署和操作 (例如 GitOps) | 使用資源組態以宣告方式管理 Kubernetes 工作負載 |
命令式資源管理 | 僅限開發 | 執行命令以使用命令列引數和旗標來管理 Kubernetes 工作負載 |
列印工作負載狀態 | 偵錯 | 列印關於工作負載的資訊 |
與容器互動 | 偵錯 | Exec、attach、cp、logs |
叢集管理 | 叢集操作 | 排空和隔離節點 |
宣告式應用程式管理
管理資源的偏好方法是透過稱為資源組態的宣告式檔案,與 kubectl Apply 命令一起使用。此命令會讀取本機 (或遠端) 檔案結構,並修改叢集狀態以反映宣告的意圖。
套用
套用是在 Kubernetes 叢集中管理資源的偏好機制。列印關於工作負載的狀態
使用者需要檢視工作負載狀態。
- 列印摘要狀態和關於資源的資訊
- 列印完整狀態和關於資源的資訊
- 從資源列印特定欄位
- 查詢符合標籤的資源
偵錯工作負載
kubectl 透過提供以下命令來支援偵錯
- 列印容器日誌
- 列印叢集事件
- Exec 或附加到容器
- 將叢集中容器的檔案複製到使用者的檔案系統
叢集管理
有時,使用者可能需要對叢集節點執行操作。kubectl 支援從節點排空工作負載的命令,以便可以停用或偵錯節點。
Porcelain
使用者可能會發現使用資源組態對於開發而言過於冗長,並且偏好使用類似 shell 的工作流程命令式地操作叢集。kubectl 提供 porcelain 命令來產生和修改資源。
- 產生 + 建立資源,例如部署、StatefulSet、服務、ConfigMap 等。
- 在資源上設定欄位
- 在文字編輯器中編輯 (即時) 資源
Porcelain 僅適用於開發
Porcelain 命令對於在開發叢集中實驗工作負載來說可以節省時間,但不應在生產環境中使用。上次修改時間:2024 年 4 月 30 日 10:31 AM PST:Use lower cases for some terms in kubectl/introduction.md (92ccce607e)