Share via


快速入門:使用 Azure CLI 建立 Azure 操作員 Nexus 虛擬機器

  • 使用 Azure CLI 部署 Azure Nexus 虛擬機器

本快速入門手冊旨在協助您開始使用 Nexus 虛擬機器來裝載虛擬網路功能(VNF)。 依照本指南中所述的步驟,您可以快速且輕鬆地建立符合您特定需求和需求的自訂 Nexus 虛擬機器。 無論您是初學者還是 Nexus 網路專家,本指南都在這裡提供協助。 您將瞭解建立和自訂裝載虛擬網路功能之 Nexus 虛擬機器所需的一切。

開始之前

如果您沒有 Azure 訂用帳戶,請在開始之前先建立 Azure 免費帳戶

  • 安裝最新版 的必要 Azure CLI 擴充功能

  • 本文需要 Azure CLI 2.49.0 版或更新版本。 如果您是使用 Azure Cloud Shell,就已安裝最新版本。

  • 如果您有多個 Azure 訂用帳戶,請選取適當的訂用帳戶識別碼,其中應該使用 az account 命令來計費資源。

  • 在繼續建立虛擬機器之前,請確定會根據 指示 建立要使用的容器映射。

  • 使用 az group create 命令建立資源群組。 Azure 資源群組 是部署和管理 Azure 資源的邏輯群組。 當您建立資源群組時,系統會提示您指定位置。 此位置是您資源群組中繼資料的儲存位置,如果您未在資源建立期間指定另一個區域,您的資源會在 Azure 中執行的位置。 下列範例會在 eastus 位置建立名為 myResourceGroup 的資源群組。

    az group create --name myResourceGroup --location eastus
    

    下列輸出範例類似于成功建立資源群組:

    {
      "id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
      "location": "eastus",
      "managedBy": null,
      "name": "myResourceGroup",
      "properties": {
        "provisioningState": "Succeeded"
      },
      "tags": null
    }
    
  • 若要部署 Bicep 檔案或 ARM 範本,您需要對即將進行部署的資源具備寫入存取權,並可存取 Microsoft.Resources/部署資源類型上的所有作業。 例如,若要部署叢集,您需要 Microsoft.NetworkCloud/virtualMachines/write 和 Microsoft.Resources/deployments/* 許可權。 如需角色與權限的清單,請參閱 Azure 內建角色

  • 您需要 custom location Azure 操作員 Nexus 叢集的資源識別碼。

  • 您必須根據特定的工作負載需求建立 各種網路 ,而且必須有適當的 IP 位址可供您的工作負載使用。 為了確保順利執行,建議您諮詢相關的支援小組以取得協助。

建立 Nexus 虛擬機器

下列範例會在 eastus 位置的資源群組 myResourceGroup 中建立名為 myNexusVirtualMachine 虛擬機器。

執行命令之前,您必須設定數個變數來定義虛擬機器的組態。 以下是您需要設定的變數,以及可用於特定變數的一些預設值:

變數 描述
LOCATION 您想要在其中建立虛擬機器的 Azure 區域。
RESOURCE_GROUP 您想要在其中建立虛擬機器的 Azure 資源群組名稱。
訂用帳戶 Azure 訂用帳戶的識別碼。
CUSTOM_LOCATION 這個引數會指定 Nexus 實例的自訂位置。
CSN_ARM_ID 虛擬機器將連接的雲端服務網路的 ARM 識別碼。
L3_NETWORK_ID 虛擬機器將連接的 L3 網路的 ARM 識別碼。
NETWORK_INTERFACE_NAME 要指派的 L3 網路介面名稱。
ADMIN_USERNAME 虛擬機器系統管理員的使用者名稱。
SSH_PUBLIC_KEY 用於與虛擬機器安全通訊的 SSH 公開金鑰。
CPU_CORES 虛擬機器的 CPU 核心數目(偶數,最大 46 個 vCPU)
MEMORY_SIZE 虛擬機器的記憶體數量(以 GB 為單位,上限為 224 GB)。
VM_DISK_SIZE 虛擬機器磁片的大小(以 GB 為單位)。
VM_IMAGE 虛擬機器映射的 URL。
ACR_URL Azure Container Registry 的 URL。
ACR_USERNAME Azure Container Registry 的使用者名稱。
ACR_PASSWORD Azure Container Registry 的密碼。

定義這些變數之後,您可以執行 Azure CLI 命令來建立虛擬機器。 在結尾新增 --debug 旗標,以提供更詳細的輸出以供疑難排解之用。

若要定義這些變數,請使用下列集合命令,並將範例值取代為您慣用的值。 您也可以使用部分變數的預設值,如下列範例所示:

# Azure parameters
RESOURCE_GROUP="myResourceGroup"
SUBSCRIPTION="<Azure subscription ID>"
CUSTOM_LOCATION="/subscriptions/<subscription_id>/resourceGroups/<managed_resource_group>/providers/microsoft.extendedlocation/customlocations/<custom-location-name>"
LOCATION="$(az group show --name $RESOURCE_GROUP --query location --subscription $SUBSCRIPTION -o tsv)"

# VM parameters
VM_NAME="myNexusVirtualMachine"

# VM credentials
ADMIN_USERNAME="azureuser"
SSH_PUBLIC_KEY="$(cat ~/.ssh/id_rsa.pub)"

# Network parameters
CSN_ARM_ID="/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.NetworkCloud/cloudServicesNetworks/<csn-name>"
L3_NETWORK_ID="/subscriptions/<subscription_id>/resourceGroups/<resource_group>/providers/Microsoft.NetworkCloud/l3Networks/<l3Network-name>"
NETWORK_INTERFACE_NAME="mgmt0"

# VM Size parameters
CPU_CORES=4
MEMORY_SIZE=12
VM_DISK_SIZE="64"

# Virtual Machine Image parameters
VM_IMAGE="<VM image, example: myacr.azurecr.io/ubuntu:20.04>"
ACR_URL="<Azure container registry URL, example: myacr.azurecr.io>"
ACR_USERNAME="<Azure container registry username>"
ACR_PASSWORD="<Azure container registry password>"

重要

您必須在執行這些命令之前,先以實際值取代 CUSTOM_LOCATION、CSN_ARM_ID、L3_NETWORK_ID 和 ACR 參數的預留位置。

定義這些變數之後,您可以執行下列 Azure CLI 命令來建立虛擬機器。

az networkcloud virtualmachine create \
    --name "$VM_NAME" \
    --resource-group "$RESOURCE_GROUP" \
    --subscription "$SUBSCRIPTION" \
    --extended-location name="$CUSTOM_LOCATION" type="CustomLocation" \
    --location "$LOCATION" \
    --admin-username "$ADMIN_USERNAME" \
    --csn "attached-network-id=$CSN_ARM_ID" \
    --cpu-cores $CPU_CORES \
    --memory-size $MEMORY_SIZE \
    --network-attachments '[{"attachedNetworkId":"'$L3_NETWORK_ID'","ipAllocationMethod":"Dynamic","defaultGateway":"True","networkAttachmentName":"'$NETWORK_INTERFACE_NAME'"}]'\
    --storage-profile create-option="Ephemeral" delete-option="Delete" disk-size="$VM_DISK_SIZE" \
    --vm-image "$VM_IMAGE" \
    --ssh-key-values "$SSH_PUBLIC_KEY" \
    --vm-image-repository-credentials registry-url="$ACR_URL" username="$ACR_USERNAME" password="$ACR_PASSWORD"

幾分鐘後,命令會完成並傳回虛擬機器的相關資訊。 您已建立虛擬機器。 您現在已準備好使用它們。

檢閱已部署的資源

部署完成之後,您可以使用 CLI 或 Azure 入口網站來檢視資源。

若要檢視資源群組中 myResourceGroup 叢集的詳細 myNexusVirtualMachine 資料,請執行下列命令

az networkcloud virtualmachine show --name myNexusVirtualMachine --resource-group myResourceGroup

清除資源

不再需要時,請刪除資源群組。 資源群組和資源群組中的所有資源都會被刪除。

使用 az group delete 命令來移除資源群組、虛擬機器,以及操作員 Nexus 網路資源以外的所有相關資源。

az group delete --name myResourceGroup --yes --no-wait

下一步

您已成功建立 Nexus 虛擬機器。 您現在可以使用虛擬機器來裝載虛擬網路功能(VNFs)。