Panduan Cepat: Membuat Mesin Virtual Azure Operator Nexus dengan menggunakan Azure CLI

  • Menyebarkan komputer virtual Azure Nexus menggunakan Azure CLI

Panduan mulai cepat ini dirancang untuk membantu Anda mulai menggunakan komputer virtual Nexus untuk menghosting fungsi jaringan virtual (VNF). Dengan mengikuti langkah-langkah yang diuraikan dalam panduan ini, Anda dapat dengan cepat dan mudah membuat komputer virtual Nexus yang disesuaikan yang memenuhi kebutuhan dan persyaratan spesifik Anda. Apakah Anda seorang pemula atau ahli dalam jaringan Nexus, panduan ini ada di sini untuk membantu. Anda mempelajari semua yang perlu Anda ketahui untuk membuat dan menyesuaikan komputer virtual Nexus untuk menghosting fungsi jaringan virtual.

Sebelum Anda mulai

Jika Anda tidak memiliki akun Azure, buat akun gratis sebelum memulai.

  • Instal versi terbaru ekstensi Azure CLI yang diperlukan.

  • Jika Anda memiliki beberapa langganan Azure, pilih ID langganan yang sesuai yang seharusnya sumber daya ditagih menggunakan perintah az account.

  • Sebelum melanjutkan pembuatan komputer virtual, pastikan bahwa gambar kontainer yang akan digunakan dibuat sesuai dengan instruksi.

  • Buat grup sumber daya menggunakan perintah az group create. Grup sumber daya Azure adalah grup logis tempat sumber daya Azure disebarkan dan dikelola. Saat membuat grup sumber daya, Anda diminta untuk menentukan lokasi. Lokasi ini adalah lokasi penyimpanan metadata grup sumber daya Anda dan tempat sumber daya Anda berjalan di Azure jika Anda tidak menentukan wilayah lain selama pembuatan sumber daya. Contoh berikut membuat grup sumber daya bernama myResourceGroup di lokasi eastus.

    az group create --name myResourceGroup --location eastus
    

    Contoh output berikut menyerupai pembuatan grup sumber daya yang berhasil:

    {
      "id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
      "location": "eastus",
      "managedBy": null,
      "name": "myResourceGroup",
      "properties": {
        "provisioningState": "Succeeded"
      },
      "tags": null
    }
    
  • Untuk menyebarkan file Bicep atau templat ARM, Anda memerlukan akses untuk menulis pada sumber daya yang Anda sebarkan dan akses ke semua operasi yang terkait dengan jenis sumber daya Microsoft.Resources/deployments. Misalnya, untuk menyebarkan kluster, Anda memerlukan Microsoft.NetworkCloud/virtualMachines/write izin dan Microsoft.Resources/deployments/* . Untuk daftar peran dan izin, lihat Peran bawaan Azure.

  • Anda memerlukan custom location ID sumber daya kluster Nexus Operator Azure Anda.

  • Anda perlu membuat berbagai jaringan sesuai dengan persyaratan beban kerja spesifik Anda. Sangat penting untuk memiliki alamat IP yang sesuai yang tersedia untuk beban kerja Anda. Untuk memastikan implementasi yang lancar, disarankan untuk berkonsultasi dengan tim dukungan yang relevan untuk mendapatkan bantuan.

  • Selesaikan prasyarat untuk menyebarkan komputer virtual Nexus.

Membuat komputer virtual Nexus

Contoh berikut membuat komputer virtual bernama myNexusVirtualMachine dalam grup sumber daya myResourceGroup di lokasi eastus .

Sebelum menjalankan perintah, Anda perlu mengatur beberapa variabel untuk menentukan konfigurasi untuk komputer virtual Anda. Berikut adalah variabel yang perlu Anda atur, bersama dengan beberapa nilai default yang dapat Anda gunakan untuk variabel tertentu:

Variable Description
TEMPAT Wilayah Azure tempat Anda ingin membuat komputer virtual Anda.
GRUP_SUMBERDAYA Nama grup sumber daya Azure tempat Anda ingin membuat komputer virtual.
ABONEMEN ID langganan Azure Anda.
CUSTOM_LOCATION Argumen ini menentukan lokasi kustom instans Nexus.
CSN_ARM_ID ID sumber daya ARM dari jaringan layanan cloud yang terhubung dengan komputer virtual.
L3_NETWORK_ID ID sumber daya ARM dari jaringan L3 yang disambungkan oleh komputer virtual.
NETWORK_INTERFACE_NAME Nama antarmuka jaringan L3 yang akan ditetapkan.
ADMIN_USERNAME Nama pengguna untuk administrator komputer virtual.
SSH_PUBLIC_KEY Kunci publik SSH yang digunakan untuk komunikasi yang aman dengan komputer virtual.
CPU_CORES Jumlah inti CPU untuk komputer virtual (jumlah genap, maks 46 vCPU)
MEMORY_SIZE Jumlah memori (dalam GiB, maks 224 GiB) untuk komputer virtual.
VM_DISK_SIZE Ukuran (dalam GiB) disk komputer virtual.
VM_IMAGE URL citra mesin virtual.
ACR_URL URL dari Azure Container Registry (ACR).
ACR_USERNAME Nama pengguna untuk Azure Container Registry.
ACR_PASSWORD Kata sandi untuk Azure Container Registry.
UAMI_ID ID sumber daya identitas terkelola yang ditetapkan pengguna (jika menggunakan identitas terkelola yang ditetapkan pengguna).

Peringatan

Data pengguna tidak dienkripsi, dan proses apa pun pada VM dapat mengkueri data ini. Anda tidak boleh menyimpan informasi rahasia dalam data pengguna. Untuk informasi selengkapnya, lihat Praktik terbaik keamanan dan enkripsi data Azure.

Setelah variabel ditentukan, Anda dapat membuat komputer virtual dengan menjalankan perintah Azure CLI. Untuk memberikan output yang lebih rinci untuk tujuan pemecahan masalah, tambahkan --debug bendera di akhir.

Gunakan sekumpulan perintah berikut dan ganti nilai contoh dengan nilai pilihan Anda. Anda juga dapat menggunakan nilai default untuk beberapa variabel, seperti yang ditunjukkan dalam contoh berikut:

# 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>"

Penting

Sangat penting bagi Anda untuk mengganti placeholder untuk parameter CUSTOM_LOCATION, CSN_ARM_ID, L3_NETWORK_ID, dan ACR dengan nilai aktual Anda sebelum menjalankan perintah ini.

Setelah menentukan variabel ini, Anda dapat membuat komputer virtual dengan menjalankan perintah Azure CLI berikut.

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"

Komputer virtual dengan identitas terkelola

Buat komputer virtual dengan identitas terkelola yang ditetapkan sistem atau yang ditetapkan pengguna. Untuk menambahkan identitas terkelola ke VM, versi API harus 2025-07-01-preview atau yang lebih baru.

Pastikan networkcloud ekstensi diinstal dengan versi yang mendukung versi API yang diperlukan. Anda dapat menemukan versi yang didukung dalam networkcloud riwayat rilis ekstensi di GitHub.

Penting

Jika Anda tidak menentukan identitas terkelola saat membuat VM, Anda tidak dapat mengaktifkan dukungan identitas terkelola dengan memperbarui VM setelah provisi.

Untuk mengaktifkan identitas terkelola yang ditetapkan sistem untuk komputer virtual, pastikan untuk menyertakan --mi-system-assigned bendera (atau alias --system-assigned).

Buat komputer virtual menggunakan System-Assigned Managed Identity (SAMI) dengan 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" \
    --mi-system-assigned

Untuk menggunakan identitas terkelola yang ditetapkan pengguna, Anda dapat menentukan ID identitas terkelola yang ditetapkan pengguna dengan --mi-user-assigned bendera (atau alias --user-assigned).

Pastikan untuk menyertakan variabel UAMI_ID dengan ID sumber daya dari identitas terkelola yang ditetapkan pengguna yang ingin Anda gunakan.

export UAMI_ID=$(az identity show --name "$UAMI_NAME" --resource-group "$RESOURCE_GROUP" --query "id" -o tsv)

Buat komputer virtual menggunakan User-Assigned Managed Identity (UAMI) dengan 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" \
    --mi-user-assigned "$UAMI_ID"

Setelah beberapa menit, perintah menyelesaikan dan mengembalikan informasi tentang komputer virtual. Komputer virtual sekarang siap digunakan.

Meninjau sumber daya yang disebarkan

Setelah penyebaran selesai, Anda dapat melihat sumber daya menggunakan CLI atau portal Microsoft Azure.

Untuk melihat detail myNexusVirtualMachine kluster dalam myResourceGroup grup sumber daya, jalankan hal berikut

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

Membersihkan sumber daya

Jika tidak lagi diperlukan, hapus grup sumber daya. Grup sumber daya dan semua sumber daya dalam grup sumber daya dihapus.

Gunakan perintah az group delete untuk menghapus grup sumber daya, komputer virtual, dan semua sumber daya terkait kecuali sumber daya jaringan Operator Nexus.

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

Langkah selanjutnya

Komputer virtual Nexus berhasil dibuat! Anda sekarang dapat menggunakan komputer virtual untuk menghosting fungsi jaringan virtual (VNF).