在 Windows 上安裝與設定 kubectl

開始之前

您必須使用 kubectl 版本,該版本與您的叢集在一個次要版本差異之內。例如,v1.32 用戶端可以與 v1.31、v1.32 和 v1.33 控制平面通訊。使用最新相容版本的 kubectl 有助於避免無法預見的問題。

在 Windows 上安裝 kubectl

以下是在 Windows 上安裝 kubectl 的方法

在 Windows 上安裝 kubectl 二進位檔案(透過直接下載或 curl)

  1. 您有兩個選項可在您的 Windows 裝置上安裝 kubectl

    • 直接下載

      直接從Kubernetes 發行頁面下載適用於您特定架構的最新 1.32 修補程式發行二進位檔案。請務必為您的架構選取正確的二進位檔案(例如,amd64、arm64 等)。

    • 使用 curl

      如果您已安裝 curl,請使用此命令

      curl.exe -LO "https://dl.k8s.io/release/v1.32.0/bin/windows/amd64/kubectl.exe"
      
  2. 驗證二進位檔案(選用)

    下載 kubectl 總和檢查碼檔案

    curl.exe -LO "https://dl.k8s.io/v1.32.0/bin/windows/amd64/kubectl.exe.sha256"
    

    根據總和檢查碼檔案驗證 kubectl 二進位檔案

    • 使用命令提示字元手動比較 CertUtil 的輸出與下載的總和檢查碼檔案

      CertUtil -hashfile kubectl.exe SHA256
      type kubectl.exe.sha256
      
    • 使用 PowerShell 自動化驗證,使用 -eq 運算子取得 TrueFalse 結果

       $(Get-FileHash -Algorithm SHA256 .\kubectl.exe).Hash -eq $(Get-Content .\kubectl.exe.sha256)
      
  3. kubectl 二進位檔案資料夾附加或前置到您的 PATH 環境變數。

  4. 測試以確保 kubectl 的版本與下載的版本相同

    kubectl version --client
    

    或使用此選項取得版本的詳細檢視

    kubectl version --client --output=yaml
    

使用 Chocolatey、Scoop 或 winget 在 Windows 上安裝

  1. 若要在 Windows 上安裝 kubectl,您可以使用 Chocolatey 套件管理員、Scoop 命令列安裝程式,或 winget 套件管理員。

    choco install kubernetes-cli
    

    scoop install kubectl
    

    winget install -e --id Kubernetes.kubectl
    
  2. 測試以確保您安裝的版本是最新的

    kubectl version --client
    
  3. 導覽至您的 home 目錄

    # If you're using cmd.exe, run: cd %USERPROFILE%
    cd ~
    
  4. 建立 .kube 目錄

    mkdir .kube
    
  5. 變更為您剛建立的 .kube 目錄

    cd .kube
    
  6. 設定 kubectl 以使用遠端 Kubernetes 叢集

    New-Item config -type file
    

驗證 kubectl 組態

為了讓 kubectl 尋找與存取 Kubernetes 叢集,它需要 kubeconfig 檔案,當您使用 kube-up.sh 建立叢集或成功部署 Minikube 叢集時,會自動建立該檔案。依預設,kubectl 組態位於 ~/.kube/config

檢查 kubectl 是否已正確設定,方法是取得叢集狀態

kubectl cluster-info

如果您看到 URL 回應,則 kubectl 已正確設定為存取您的叢集。

如果您看到類似以下的訊息,則 kubectl 未正確設定或無法連線到 Kubernetes 叢集。

The connection to the server <server-name:port> was refused - did you specify the right host or port?

例如,如果您打算在您的筆記型電腦(本機)上執行 Kubernetes 叢集,您將需要先安裝 Minikube 之類的工具,然後重新執行上述命令。

如果 kubectl cluster-info 傳回 url 回應,但您無法存取您的叢集,若要檢查其是否已正確設定,請使用

kubectl cluster-info dump

疑難排解「找不到驗證提供者」錯誤訊息

在 Kubernetes 1.26 中,kubectl 移除了下列雲端提供者的受管理 Kubernetes 產品的內建驗證。這些提供者已發行 kubectl 外掛程式以提供雲端特定的驗證。如需指示,請參閱下列提供者文件

(也可能有其他原因會看到相同的錯誤訊息,與該變更無關。)

選用的 kubectl 組態與外掛程式

啟用 Shell 自動完成

kubectl 為 Bash、Zsh、Fish 和 PowerShell 提供自動完成支援,這可以為您節省大量輸入時間。

以下是設定 PowerShell 自動完成的程序。

PowerShell 的 kubectl 完成腳本可以使用命令 kubectl completion powershell 產生。

若要在您所有的 Shell 工作階段中執行此操作,請將以下行新增至您的 $PROFILE 檔案

kubectl completion powershell | Out-String | Invoke-Expression

此命令將在每次 PowerShell 啟動時重新產生自動完成腳本。您也可以將產生的腳本直接新增至您的 $PROFILE 檔案。

若要將產生的腳本新增至您的 $PROFILE 檔案,請在您的 powershell 提示字元中執行以下行

kubectl completion powershell >> $PROFILE

重新載入您的 Shell 之後,kubectl 自動完成應該會開始運作。

安裝 kubectl convert 外掛程式

Kubernetes 命令列工具 kubectl 的外掛程式,可讓您在不同 API 版本之間轉換資訊清單。這對於將資訊清單移轉至具有較新 Kubernetes 發行版本的非棄用 API 版本特別有幫助。如需詳細資訊,請造訪 移轉至非棄用 API

  1. 使用命令下載最新發行版本

    curl.exe -LO "https://dl.k8s.io/release/v1.32.0/bin/windows/amd64/kubectl-convert.exe"
    
  2. 驗證二進位檔案(選用)。

    下載 kubectl-convert 總和檢查碼檔案

    curl.exe -LO "https://dl.k8s.io/v1.32.0/bin/windows/amd64/kubectl-convert.exe.sha256"
    

    根據總和檢查碼檔案驗證 kubectl-convert 二進位檔案

    • 使用命令提示字元手動比較 CertUtil 的輸出與下載的總和檢查碼檔案

      CertUtil -hashfile kubectl-convert.exe SHA256
      type kubectl-convert.exe.sha256
      
    • 使用 PowerShell 自動化驗證,使用 -eq 運算子取得 TrueFalse 結果

      $($(CertUtil -hashfile .\kubectl-convert.exe SHA256)[1] -replace " ", "") -eq $(type .\kubectl-convert.exe.sha256)
      
  3. kubectl-convert 二進位檔案資料夾附加或前置到您的 PATH 環境變數。

  4. 驗證外掛程式是否已成功安裝。

    kubectl convert --help
    

    如果您沒有看到錯誤訊息,表示外掛程式已成功安裝。

  5. 安裝外掛程式後,請清理安裝檔案

    del kubectl-convert.exe
    del kubectl-convert.exe.sha256
    

接下來的步驟

上次修改時間:2024 年 8 月 25 日 8:53 AM PST:更新 kubectl 下載選項 (bf96dbe898)