Advanced - Kubectl
kubectl 是 Kubernetes 的命令列工具,用於與 Kubernetes 叢集互動。透過 kubectl,使用者可以管理叢集中的資源、部署應用程式、檢查狀 態以及進行故障排除。
什麼是 kubectl?
kubectl 是 Kubernetes 提供的主要 CLI 工具,能夠讓使用者透過簡單的命令與 Kubernetes API 伺服器進行互動。
功能特色
- 管理叢集資源(Pod、Service、Deployment 等)。
- 部署與滾動更新應用程式。
- 監控叢集的狀態。
- 除錯與排解問題。
安裝 kubectl
在 macOS
brew install kubectl
在 Linux
sudo apt-get update
sudo apt-get install -y kubectl
在 Windows
choco install kubernetes-cli
安裝設定
最常見的方式是透過 kubeconfig 檔案(預設在家目錄底下.kube/config)來設定 kubectl。 如果是使用 GKE 或是 Amazon EKS 或 Azure AKS 這樣的雲端服務,他們的命令列工具會自動生成適當的 kubeconfig 檔案。 使用 kubectl get nodes,就可以看到 kubernetes 叢集中的節點列表,這代表你已經成功設定並連接到叢集。
基本語法
kubectl [command] [TYPE] [NAME] [flags]
command:動作,例如get、describe、apply等。TYPE:資源類型,例如pod、service、deployment等。NAME:資源名稱(可選),名稱區分大小寫,若省略則顯示全部。flags:額外的選項,例如--namespace。
常用指令
檢視叢集資源
-
列出所有 Pod:
kubectl get pods顯示所有 Pod 的狀態,如
Running、Pending等。 -
列出所有資源(包括 Pod、Service 等):
kubectl get all -
顯示詳細資訊:
kubectl describe pod <POD_NAME>