在 Azure Stack Hub 的 Linux 上安裝 AKS 引擎

您可以使用 Azure Stack Hub 中的 Linux 電腦來裝載 AKS 引擎,以部署和管理 Kubernetes 叢集。 在本文中,我們將探討如何準備用戶端 VM 來管理已連線和已中斷連線 Azure Stack Hub 執行個體的叢集、檢查安裝,以及在 ASDK 上設定用戶端 VM。

準備用戶端 VM

AKS 引擎是用來部署和管理 Kubernetes 叢集的命令列工具。 您可以在 Azure Stack Hub 的機器上執行引擎。 從這部電腦,您會使用 AKS 引擎來部署執行叢集所需的 IaaS 資源和軟體。 然後,您可以使用執行引擎的機器,在叢集上執行管理工作。

在選擇用戶端機器時,請考慮:

  1. 用戶端電腦是否應該在災害中復原。
  2. 要如何連線到用戶端機器,以及機器要如何與叢集互動。

安裝在已連線的環境中

您可以安裝用戶端 VM 以在連線到網際網路的 Azure Stack Hub 上管理 Kubernetes 叢集。

  1. 在 Azure Stack Hub 中建立 Linux VM。 如需指示,請參閱快速入門:使用 Azure Stack Hub 入口網站建立 Linux 伺服器 VM

  2. 連線到您的 VM。

  3. 使用您的套件管理員來確認您已安裝下列工具:

    • jq一個 JSON 處理器。
    • curl - 使用各種網路通訊協定傳輸檔案的工具。
    • openssh一個 ssh 用戶端。
    • tar用來處理 TAR 封存的工具。
  4. 安裝Azure CLI。 適用於 Azure CLI 的套件適用餘大部分的散發套件。 您可以在在 Linux 上安裝 Azure CLI 找到指示。

  5. AKS 引擎和 Azure Stack 版本對應表的資料表中,尋找 AKS 引擎的版本。 AKS 基底映像必須可在 Azure Stack Hub Marketplace 中取得。 執行命令時,您必須指定版本 --version v0.xx.x。 如果您未指定版本,此命令會安裝最新版本,但您的市集中可能並未提供所需的 VHD 映像。

    注意

    您可以在 AKS 引擎版本資訊中,找到 Azure Stack Hub 與 AKS 引擎版本號碼的對應。

  6. 執行以下命令:

    針對 AKS 引擎 0.73.0 版和以下版本:

    sudo apt update
    sudo apt install jq
    curl -o get-akse.sh https://raw.githubusercontent.com/Azure/aks-engine/master/scripts/get-akse.sh
    chmod 700 get-akse.sh
    ./get-akse.sh --version v0.xx.x
    

    針對 AKS 引擎版本 0.75.3 和更新版本:

    sudo apt update
    sudo apt install jq
    curl -o get-akse.sh https://raw.githubusercontent.com/Azure/aks-engine-azurestack/master/scripts/get-akse.sh
    chmod 700 get-akse.sh
    ./get-akse.sh --version v0.xx.x
    

    注意

    如果您的安裝方法失敗,請嘗試 中斷連線環境中的步驟。

安裝在已中斷連線的環境中

您可以安裝用戶端 VM 以在已與網際網路中斷連線的 Azure Stack Hub 上管理 Kubernetes 叢集。

  1. 從可存取網際網路的電腦:

    針對 AKS 引擎 0.73.0 版和更新版本,請移至 GitHub Azure/aks-engine。 下載 Linux 機器的封存 (*.tar.gz),例如 aks-engine-v0.xx.x-linux-amd64.tar.gz

    針對 AKS 引擎 0.75.3 版和更新版本,請移至 GitHub Azure/aks-engine-azurestack。 下載 Linux 電腦的封存 (*.tar.gz) ,例如 aks-engine-azurestack-v0.xx.x-linux-amd64.tar.gz

    支援的 Kubernetes 版本資料表中,尋找 AKS 引擎的版本。

  2. 在 Azure Stack Hub 執行個體中建立儲存體帳戶,以使用 AKS 引擎二進位檔上傳封存檔案 (*.tar.gz)。 如需使用 Azure 儲存體總管的指示,請參閱 Azure 儲存體總管與 Azure Stack Hub

  3. 在 Azure Stack Hub 中建立 Linux VM。 如需指示,請參閱快速入門:使用 Azure Stack Hub 入口網站建立 Linux 伺服器 VM

  4. 從作為封存檔案 (*.tar.gz) 上傳目的地的 Azure Stack Hub 儲存體帳戶 Blob URL 中,將檔案下載至您的管理 VM。 將封存解壓縮至目錄 /usr/local/bin

  5. 連線到您的 VM。

  6. 執行以下命令:

    針對 AKS 引擎 0.73.0 版和以下版本:

    curl -o aks-engine-v0.xx.x-linux-amd64.tar.gz <httpurl/aks-engine-v0.xx.x-linux-amd64.tar.gz>
    tar xvzf aks-engine-v0.xx.x-linux-amd64.tar.gz -C /usr/local/bin
    

    針對 AKS 引擎版本 0.75.3 和更新版本:

    curl -o aks-engine-azurestack-v0.xx.x-linux-amd64.tar.gz <httpurl/aks-engine-azurestack-v0.xx.x-linux-amd64.tar.gz>
    tar xvzf aks-engine-azurestack-v0.xx.x-linux-amd64.tar.gz -C /usr/local/bin
    

驗證安裝

設定用戶端 VM 之後,請檢查您已安裝 AKS 引擎。

  1. 連線到您的用戶端 VM。
  2. 執行以下命令:

注意

針對 AKSe 0.75.3 版和更新版本,檢查您 AKS 引擎目前版本的命令為 aks-engine-azurestack version

aks-engine version
  1. 如果 Azure Resource Manager 端點使用自我簽署憑證,您就必須明確地將根憑證新增至機器的受信任憑證存放區。 您可以在 VM 的下列目錄中找到此根憑證:/var/lib/waagent/Certificates.pem。 使用下列命令複製憑證檔案:

    sudo cp /var/lib/waagent/Certificates.pem /usr/local/share/ca-certificates/azurestackca.crt 
    sudo update-ca-certificates
    

如果您無法確認已在用戶端 VM 上安裝 AKS 引擎,請參閱 針對 AKS 引擎安裝進行疑難排解

ASDK 安裝

在 ASDK 上執行 AKS 引擎的用戶端 VM 時,您必須新增憑證。

當您使用 ASDK 時,Azure Resource Manager 端點會使用自我簽署憑證,您需要明確地將此憑證新增至機器的受信任憑證存放區。 您可以在部署於 ASDK 的任何 VM 中,尋找 ASDK 的根憑證。 例如,在 Ubuntu VM 中,您會在此目錄 /var/lib/waagent/Certificates.pem 中找到該憑證。

使用下列命令複製憑證檔案:

sudo cp /var/lib/waagent/Certificates.pem /usr/local/share/ca-certificates/azurestackca.crt

sudo update-ca-certificates

後續步驟