共用方式為


叢集管理員:如何在運算子連接點中管理叢集管理員

叢集管理員會部署在運算子的 Azure 訂用帳戶中,以管理運算子連接點基礎結構叢集的生命週期。

開始之前

請確定您有下列資訊:

  • Azure 訂用帳戶識別碼 - 需要建立叢集管理員的 Azure 訂用帳戶識別碼 (應該是網路網狀架構控制器的相同訂用帳戶識別碼)。
  • 網路網狀架構控制器識別碼 - 網路網狀架構控制器與叢集管理員有 1:1 關聯。 您需要網路網狀架構控制器的資源標識碼,才能與叢集管理員相關聯。
  • Log Analytics 工作區識別碼 - 用於記錄收集的 Log Analytics 工作區的資源識別碼。
  • Azure 區域 - 叢集管理員應與網路網狀架構控制器建立在相同的 Azure 區域中。 此 Azure 區域應該用於叢集管理員的 Location 欄位,以及所有相關聯的運算子連接點執行個體。

限制

  • 命名 - 可以在此處找到命名規則。

叢集管理員屬性

屬性名稱 描述
名稱、識別碼、位置、標籤、類型 名稱:用戶易記名稱
標識碼:資源標識碼
位置:建立叢集管理員的 Azure 區域。 值的來源:az account list -locations
卷標:資源標籤
類型:Microsoft.NetworkCloud/clusterManagers
managerExtendedLocation 與叢集管理員相關聯的 ExtendedLocation
managedResourceGroupConfiguration 為叢集管理員建立的受控資源群組詳細數據,可裝載其內部使用的資源。
fabricControllerId 此叢集管理員為 1:1 的網路網狀架構控制器參考
analyticsWorkspaceId 您可以在 Log Analytics 工作區中找到與客戶相關的記錄。
clusterVersions[] 叢集管理員支援的叢集版本清單。 它會作為叢集 clusterVersion 屬性中的輸入。
provisioningState 叢集管理員上最新作業的布建狀態。 其中一個:成功、失敗、已取消、布建、已接受、更新
detailedStatus 提供叢集管理員狀態的其他資訊的詳細狀態。
detailedStatusMessage 目前詳細狀態的描述性訊息。

叢集管理員身分識別

客戶可以將受控識別指派給叢集管理員。 從 API 版本開始 2024-07-01 ,支援系統指派和使用者指派的受控識別。

如果使用使用者指派的受控識別建立叢集管理員,客戶必須布建 Nexus 平臺該身分識別的存取權。 具體來說, Microsoft.ManagedIdentity/userAssignedIdentities/assign/action 許可權必須新增至使用者指派的身分識別,才能 AFOI-NC-MGMT-PME-PROD Microsoft Entra ID。 這是未來將解決之平臺的已知限制。

角色指派可以透過 Azure 入口網站 來完成:

  • 開啟 Azure 入口網站 並找出有問題的使用者指派身分識別。
    • 如果您預期已布建多個受控識別,則可以改為在資源群組或訂用帳戶層級新增角色。
  • 在 底下 Access control (IAM),按兩下 [新增角色指派]
  • 選取 [角色]: Managed Identity Operator請參閱角色提供的許可權
  • 存取權指派對象為:使用者、群組或服務主體
  • 選取成員: AFOI-NC-MGMT-PME-PROD 應用程式
  • 檢閱並指派

建立叢集管理員

使用下列命令來建立叢集管理員。

az networkcloud clustermanager create \
    --name "$CLUSTER_MANAGER_NAME" \
    --location "$LOCATION" \
    --analytics-workspace-id "$LAW_NAME" \
    --fabric-controller-id "$NFC_ID" \
    --managed-resource-group-configuration name="$MRG_NAME" location="$MRG_LOCATION" \
    --tags $TAG_KEY1="$TAG_VALUE1" $TAG_KEY2="$TAG_VALUE2"
    --resource-group "$CLUSTER_MANAGER_RG"
    --subscription "$SUB_ID"

引數:

  • --name-n [必要] - 叢集管理員的名稱。
  • --resource-group-g [必要] - 資源組名。 您可以使用 az configure --defaults group=<name> 設定預設資源群組。
  • --fabric-controller-id [必要] - 與叢集管理員相關聯的網路網狀架構控制器資源標識符。
  • --analytics-workspace-id - 用於記錄收集之 Log Analytics 工作區的資源識別碼
  • --location-l - 建立叢集管理員的 Azure 區域。 值的來源:az account list -locations。 您可以使用 az configure --defaults location="$LOCATION" 設定預設位置。
  • --managed-resource-group-configuration - 與資源相關聯的受控資源群組設定。
    • 使用方式:--managed-resource-group-configuration location=XX name=XX
    • 位置:受控資源群組的區域。 如果未指定,則會選擇父資源的區域。
    • 名稱:受控資源群組的名稱。 如果未指定,會自動產生唯一名稱。
  • wait / --no-wait - 等候命令完成,或不要等候長時間執行的作業完成。
  • --tags - 空格分隔標記:key[=value] [key[=value]...]。使用'' 清除現有的標記
  • --subscription - 訂用帳戶的名稱或識別碼。 您可以使用 az account set -s NAME_OR_ID 設定預設訂用帳戶。
  • --mi-system-assigned - 啟用系統指派的受控識別。
  • --mi-user-assigned - 要新增之使用者指派受控識別的空間分隔資源標識符。
  • --if-match / if-none-match - 指定最後看到的 ETag 值,以防止意外覆寫並行變更。 建立資源之後,ETag 會以資源屬性的形式傳回,而且可用於更新作業。

每個 Azure CLI 命令可用的常見自變數:

  • --debug - 列印用於偵錯之 CLI 執行的詳細資訊。 如果您發現錯誤,可在提交錯誤報告時提供使用 --debug 旗標產生的輸出。
  • --output-o -指定輸出格式。 可用的輸出格式為 Json、Jsonc (以色彩標示的 JSON)、tsv (定位字元分隔值)、table (人類看得懂的 ASCII 資料表) 和 yaml。 根據預設,CLI 會輸出 Json。
  • --query - 使用 JMESPath 查詢語言來篩選從 Azure 服務傳回的輸出。

列出/顯示叢集管理員

List 和 show 命令用來取得現有叢集管理員的清單或特定叢集管理員的屬性。

此命令會列出所指定資源群組中的叢集管理員。

az networkcloud clustermanager list --resource-group "$CLUSTER_MANAGER_RG"

此命令會列出所指定訂用帳戶中的叢集管理員。

az networkcloud clustermanager list  --subscription "$SUB_ID"

此命令會顯示指定之叢集管理員的屬性。

az networkcloud clustermanager show \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

更新叢集管理員

此命令用來修補所提供叢集管理員的屬性,或更新指派給叢集管理員的標籤。 屬性和標籤更新可以獨立完成。

此命令會更新指定資源群組中的叢集管理員。

az networkcloud clustermanager update \
    --name "$CLUSTER_MANAGER_NAME" \
    --tags $TAG_KEY1="$TAG_VALUE1" $TAG_KEY2="$TAG_VALUE2" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

您可以使用子命令透過 az networkcloud clustermanager identity CLI 管理叢集管理員身分識別。

此命令會顯示目前指派的身分識別。

az networkcloud clustermanager identity show \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

此命令會新增使用者指派的身分識別。

az networkcloud clustermanager identity assign \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
    --mi-user-assigned "$UAI_RESOURCE_ID"

此命令會新增系統指派的身分識別。

az networkcloud clustermanager identity assign \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
    --mi-system-assigned

此命令會移除現有的使用者指派身分識別。

az networkcloud clustermanager identity remove \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
    --mi-user-assigned "$UAI_RESOURCE_ID"

此命令會移除現有的系統指派身分識別。

az networkcloud clustermanager identity remove \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"
    --mi-system-assigned

刪除叢集管理員

此命令用來刪除提供的叢集管理員。

警告

具有現有相關聯網路網狀架構控制器的叢集管理員,或任何參考此叢集管理員的叢集可能無法加以刪除。

az networkcloud clustermanager delete \
    --name "$CLUSTER_MANAGER_NAME" \
    --resource-group "$CLUSTER_MANAGER_RG" \
    --subscription "$SUB_ID"

注意

建議您在刪除 clustermanager 之後等候 20 分鐘,再嘗試建立具有相同名稱的新 clustermanager。

下一步

成功建立網路網狀架構控制器和叢集管理員之後,下一個步驟是建立 網路網狀架構