共用方式為


設定 Azure 應用程式 一致快照集工具的記憶體

本文提供將 Azure 記憶體設定為與 Azure 應用程式 一致快照集工具 (AzAcSnap) 搭配使用的指南。

選取您搭配 AzAcSnap 使用的記憶體。

設定系統受控識別(建議)或產生服務主體的驗證檔案。

驗證與 Azure NetApp Files 的通訊時,通訊可能會失敗或逾時。檢查防火牆規則不會封鎖從執行 AzAcSnap 的系統到下列位址和 TCP/IP 連接埠的輸出流量:

  • (https://)management.azure.com:443
  • (https://)login.microsoftonline.com:443

啟用與儲存體的通訊

本節說明如何啟用與儲存體的通訊。 使用下列索引標籤來正確選取您所使用的儲存體後端。

有兩種方式可以使用系統受控識別或服務主體檔案對 Azure Resource Manager 進行驗證。 此處將說明這些選項。

Azure 系統受控識別

從 AzAcSnap 9,您可以使用系統受控識別,而非服務主體來進行作業。 使用此功能可避免需要在虛擬機器 (VM) 上儲存服務主體認證。 若要使用 Azure Cloud Shell 來設定 Azure 受控識別,請遵循下列步驟:

  1. 在使用 Bash 的 Cloud Shell 工作階段中,使用下列範例來適當設定殼層變數,並將其套用至您要建立 Azure 受控識別的訂用帳戶。 將 SUBSCRIPTIONVM_NAMERESOURCE_GROUP 設定為您的網站特定值。

    export SUBSCRIPTION="99z999zz-99z9-99zz-99zz-9z9zz999zz99"
    export VM_NAME="MyVM"
    export RESOURCE_GROUP="MyResourceGroup"
    export ROLE="Contributor"
    export SCOPE="/subscriptions/${SUBSCRIPTION}/resourceGroups/${RESOURCE_GROUP}"
    
  2. 將 Cloud Shell 設定為正確的訂用帳戶:

    az account set -s "${SUBSCRIPTION}"
    
  3. 建立虛擬機器的受控識別。 下列命令會設定 (或顯示是否已設定) AzAcSnap VM 的受控識別:

    az vm identity assign --name "${VM_NAME}" --resource-group "${RESOURCE_GROUP}"
    
  4. 取得主體識別碼以便指派角色:

    PRINCIPAL_ID=$(az resource list -n ${VM_NAME} --query [*].identity.principalId --out tsv)
    
  5. 將參與者角色指派給主體識別碼:

    az role assignment create --assignee "${PRINCIPAL_ID}" --role "${ROLE}" --scope "${SCOPE}"
    

選擇性 RBAC

您可以使用角色型存取控制 (RBAC) 中的自訂角色定義來限制受控識別的權限。 為虛擬機器建立適當的角色定義,使其能夠管理快照集。 您可以在使用 Azure 應用程式一致快照集工具的秘訣和訣竅中,找到權限設定範例。

然後將角色指派給 Azure VM 主體識別碼 (也顯示為 SystemAssignedIdentity):

az role assignment create --assignee ${PRINCIPAL_ID} --role "AzAcSnap on ANF" --scope "${SCOPE}"

產生服務主體檔案

  1. 在 Cloud Shell 工作階段中,確認您已依預設登入要與服務主體建立關聯的訂用帳戶:

    az account show
    
  2. 若訂用帳戶不正確,請使用 az account set 命令:

    az account set -s <subscription name or id>
    
  3. 使用 Azure CLI 建立服務主體,如此範例所示:

    az ad sp create-for-rbac --name "AzAcSnap" --role Contributor --scopes /subscriptions/{subscription-id} --sdk-auth
    

    此指令應會產生如此範例的輸出:

    {
      "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
      "clientSecret": "Dd4Ee~5Ff6.-Gg7Hh8Ii9Jj0Kk1Ll2_Mm3Nn4Oo5",
      "subscriptionId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
      "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
      "activeDirectoryEndpointUrl": "https://login.microsoftonline.com",
      "resourceManagerEndpointUrl": "https://management.azure.com/",
      "activeDirectoryGraphResourceId": "https://graph.windows.net/",
      "sqlManagementEndpointUrl": "https://management.core.windows.net:8443/",
      "galleryEndpointUrl": "https://gallery.azure.com/",
      "managementEndpointUrl": "https://management.core.windows.net/"
    }
    

    此命令會自動將 RBAC 參與者角色指派給訂用帳戶層級的服務主體。 您可以將範圍縮小到測試將建立資源的特定資源群組。

  4. 將輸出內容剪下並貼到名為 azureauth.json 的檔案,其儲存在 azacsnap 命令的相同系統中。 使用適當的系統權限保護檔案。

    請確定 JSON 檔案的格式與上一個步驟所述完全相同,且 URL 以雙引號 (") 括住。

下一步