Mengunggah VHD umum ke Azure untuk membuat VM baru

Topik ini mencakup pengunggahan disk tidak terkelola umum ke akun penyimpanan lalu membuat VM baru menggunakan disk yang diunggah. Gambar VHD umum telah menghapus semua informasi akun pribadi Anda menggunakan Sysprep.

Jika Anda ingin membuat VM dari VHD khusus di akun penyimpanan, lihat Membuat VM dari VHD khusus.

Topik ini mencakup penggunaan akun penyimpanan, tetapi sebaiknya pelanggan beralih menggunakan Disk Terkelola sebagai gantinya. Untuk panduan lengkap tentang cara menyiapkan, mengunggah, dan membuat VM baru menggunakan disk terkelola, lihat Membuat VM baru dari VHD umum yang diunggah ke Azure menggunakan Disk Terkelola.

Siapkan komputer virtual

VHD umum telah menghapus semua informasi akun pribadi Anda menggunakan Sysprep. Jika Anda ingin menggunakan VHD sebagai gambar untuk membuat komputer virtual baru, Anda harus:

Menggeneralisasi komputer virtual Windows menggunakan Sysprep

Bagian ini menunjukkan kepada Anda cara menggeneralisasi komputer virtual Windows Anda untuk digunakan sebagai gambar. Salah satu fungsi Sysprep adalah menghapus semua informasi akun pribadi Anda dan menyiapkan komputer untuk digunakan sebagai gambar. Untuk detail tentang Sysprep, lihat Cara Menggunakan Sysprep: Pengantar.

Pastikan peran server yang berjalan di komputer didukung oleh Sysprep. Untuk informasi selengkapnya, lihat Dukungan Sysprep untuk Peran Server

Penting

Jika Anda menjalankan Sysprep sebelum mengunggah VHD ke Azure untuk pertama kalinya, pastikan Anda telah menyiapkan VM sebelum menjalankan Sysprep.

  1. Masuk ke mesin virtual Windows.

  2. Buka jendela Wantian Perintah sebagai administrator. Ubah direktori menjadi %windir%\system32\sysprep, lalu jalankan sysprep.exe.

  3. Dalam kotak dialog Alat Persiapan Sistem , pilih Masukkan Pengalaman Di Luar Kotak Sistem (OOBE), dan pastikan bahwa kotak centang Generalisasi dipilih.

  4. Dalam Opsi Matikan, pilih Matikan.

  5. Klik OK.

    Memulai Sysprep

  6. Ketika Sysprep selesai, Sysprep mematikan komputer virtual.

Penting

Jangan mulai ulang VM hingga Anda selesai mengunggah VHD ke Azure atau membuat gambar dari VM. Jika VM tidak sengaja dimulai ulang, jalankan Sysprep untuk menggeneralisasinya lagi.

Unggah VHD

Unggah VHD ke akun penyimpanan Azure.

Masuk ke Azure

Jika Anda belum menginstal PowerShell versi 1.4 atau lebih tinggi, baca Cara menginstal dan mengonfigurasi Azure PowerShell.

  1. Buka Azure PowerShell dan masuk ke akun Azure Anda. Jendela pop-up terbuka bagi Anda untuk memasukkan kredensial akun Azure Anda.

    Connect-AzAccount
    
  2. Dapatkan ID langganan untuk langganan Anda yang tersedia.

    Get-AzSubscription
    
  3. Atur langganan yang benar menggunakan ID langganan. Ganti <subscriptionID> dengan ID langganan yang benar.

    Select-AzSubscription -SubscriptionId "<subscriptionID>"
    

Mendapatkan akun penyimpanan

Anda memerlukan akun penyimpanan di Azure untuk menyimpan gambar VM yang diunggah. Anda dapat menggunakan akun penyimpanan yang sudah ada atau membuat yang baru.

Untuk menampilkan akun penyimpanan yang tersedia, ketik:

Get-AzStorageAccount

Jika Anda ingin menggunakan akun penyimpanan yang sudah ada, lanjutkan ke bagian Unggah gambar VM.

Jika Anda perlu membuat akun penyimpanan, ikuti langkah-langkah berikut:

  1. Anda memerlukan nama grup sumber daya tempat akun penyimpanan harus dibuat. Untuk mengetahui semua grup sumber daya yang ada di langganan Anda, ketik:

    Get-AzResourceGroup
    

    Untuk membuat grup sumber daya bernama myResourceGroup di wilayah US Barat , ketik:

    New-AzResourceGroup -Name myResourceGroup -Location "West US"
    
  2. Buat akun penyimpanan bernama mystorageaccount di grup sumber daya ini dengan menggunakan cmdlet New-AzStorageAccount :

    New-AzStorageAccount -ResourceGroupName myResourceGroup -Name mystorageaccount -Location "West US" `
        -SkuName "Standard_LRS" -Kind "Storage"
    

Memulai unggahan

Gunakan cmdlet Add-AzVhd untuk mengunggah gambar ke kontainer di akun penyimpanan Anda. Contoh ini mengunggah file myVHD.vhd dari "C:\Users\Public\Documents\Virtual hard disks\" ke akun penyimpanan bernama mystorageaccount di grup sumber daya myResourceGroup . File akan ditempatkan ke dalam kontainer bernama mycontainer dan nama file baru akan menjadi myUploadedVHD.vhd.

$rgName = "myResourceGroup"
$urlOfUploadedImageVhd = "https://mystorageaccount.blob.core.windows.net/mycontainer/myUploadedVHD.vhd"
Add-AzVhd -ResourceGroupName $rgName -Destination $urlOfUploadedImageVhd `
    -LocalFilePath "C:\Users\Public\Documents\Virtual hard disks\myVHD.vhd"

Jika berhasil, Anda mendapatkan respons yang terlihat mirip dengan ini:

MD5 hash is being calculated for the file C:\Users\Public\Documents\Virtual hard disks\myVHD.vhd.
MD5 hash calculation is completed.
Elapsed time for the operation: 00:03:35
Creating new page blob of size 53687091712...
Elapsed time for upload: 01:12:49

LocalFilePath           DestinationUri
-------------           --------------
C:\Users\Public\Doc...  https://mystorageaccount.blob.core.windows.net/mycontainer/myUploadedVHD.vhd

Bergantung pada koneksi jaringan dan ukuran file VHD Anda, perintah ini mungkin memerlukan waktu cukup lama untuk diselesaikan.

Membuat VM baru

Anda sekarang dapat menggunakan VHD yang diunggah untuk membuat VM baru.

Mengatur URI VHD

URI untuk digunakan VHD dalam format: https:// mystorageaccount.blob.core.windows.net/mycontainer/MyVhdName.vhd. Dalam contoh ini VHD bernama myVHD ada di akun penyimpanan mystorageaccount dalam kontainer mycontainer.

$imageURI = "https://mystorageaccount.blob.core.windows.net/mycontainer/myVhd.vhd"

Membuat jaringan virtual

Buat vNet dan subnet jaringan virtual.

  1. Buat subnet. Contoh berikut membuat subnet bernama mySubnet di grup sumber daya myResourceGroup dengan awalan alamat 10.0.0.0/24.

    $rgName = "myResourceGroup"
    $subnetName = "mySubnet"
    $singleSubnet = New-AzVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix 10.0.0.0/24
    
  2. Buat jaringan virtual. Sampel berikut membuat jaringan virtual bernama myVnet di lokasi US Barat dengan awalan alamat 10.0.0.0/16.

    $location = "WestUS"
    $vnetName = "myVnet"
    $vnet = New-AzVirtualNetwork -Name $vnetName -ResourceGroupName $rgName -Location $location `
        -AddressPrefix 10.0.0.0/16 -Subnet $singleSubnet
    

Membuat alamat IP publik dan antarmuka jaringan

Untuk mengaktifkan komunikasi dengan komputer virtual di jaringan virtual, Anda memerlukan alamat IP publik dan antarmuka jaringan.

  1. Buat Alamat IP publik. Contoh ini membuat alamat IP publik bernama myPip.

    $ipName = "myPip"
    $pip = New-AzPublicIpAddress -Name $ipName -ResourceGroupName $rgName -Location $location `
        -AllocationMethod Dynamic
    
  2. Buat NIC. Contoh ini membuat NIC bernama myNic.

    $nicName = "myNic"
    $nic = New-AzNetworkInterface -Name $nicName -ResourceGroupName $rgName -Location $location `
        -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id
    

Buat kelompok keamanan jaringan dan aturan RDP

Agar dapat masuk ke VM Anda menggunakan RDP, Anda harus memiliki aturan keamanan yang memungkinkan akses RDP pada port 3389.

Contoh ini membuat NSG bernama myNsg yang berisi aturan yang disebut myRdpRule yang memungkinkan lalu lintas RDP melalui port 3389. Untuk informasi selengkapnya tentang NSG, lihat Membuka port ke VM di Azure menggunakan PowerShell.

$nsgName = "myNsg"

$rdpRule = New-AzNetworkSecurityRuleConfig -Name myRdpRule -Description "Allow RDP" `
    -Access Allow -Protocol Tcp -Direction Inbound -Priority 110 `
    -SourceAddressPrefix Internet -SourcePortRange * `
    -DestinationAddressPrefix * -DestinationPortRange 3389

$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $rgName -Location $location `
    -Name $nsgName -SecurityRules $rdpRule

Membuat variabel untuk jaringan virtual

Buat variabel untuk jaringan virtual yang telah selesai.

$vnet = Get-AzVirtualNetwork -ResourceGroupName $rgName -Name $vnetName

Buat VM

Skrip PowerShell berikut menunjukkan cara menyiapkan konfigurasi komputer virtual dan menggunakan gambar VM yang diunggah sebagai sumber untuk penginstalan baru.

# Enter a new user name and password to use as the local administrator account 
    # for remotely accessing the VM.
    $cred = Get-Credential

    # Name of the storage account where the VHD is located. This example sets the 
    # storage account name as "myStorageAccount"
    $storageAccName = "myStorageAccount"

    # Name of the virtual machine. This example sets the VM name as "myVM".
    $vmName = "myVM"

    # Size of the virtual machine. This example creates "Standard_D2_v2" sized VM. 
    # See the VM sizes documentation for more information: 
    # https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/
    $vmSize = "Standard_D2_v2"

    # Computer name for the VM. This examples sets the computer name as "myComputer".
    $computerName = "myComputer"

    # Name of the disk that holds the OS. This example sets the 
    # OS disk name as "myOsDisk"
    $osDiskName = "myOsDisk"

    # Assign a SKU name. This example sets the SKU name as "Standard_LRS"
    # Valid values for -SkuName are: Standard_LRS - locally redundant storage, Standard_ZRS - zone redundant
    # storage, Standard_GRS - geo redundant storage, Standard_RAGRS - read access geo redundant storage,
    # Premium_LRS - premium locally redundant storage. 
    $skuName = "Standard_LRS"

    # Get the storage account where the uploaded image is stored
    $storageAcc = Get-AzStorageAccount -ResourceGroupName $rgName -AccountName $storageAccName

    # Set the VM name and size
    $vmConfig = New-AzVMConfig -VMName $vmName -VMSize $vmSize

    #Set the Windows operating system configuration and add the NIC
    $vm = Set-AzVMOperatingSystem -VM $vmConfig -Windows -ComputerName $computerName `
        -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
    $vm = Add-AzVMNetworkInterface -VM $vm -Id $nic.Id

    # Create the OS disk URI
    $osDiskUri = '{0}vhds/{1}-{2}.vhd' `
        -f $storageAcc.PrimaryEndpoints.Blob.ToString(), $vmName.ToLower(), $osDiskName

    # Configure the OS disk to be created from the existing VHD image (-CreateOption fromImage).
    $vm = Set-AzVMOSDisk -VM $vm -Name $osDiskName -VhdUri $osDiskUri `
        -CreateOption fromImage -SourceImageUri $imageURI -Windows

    # Create the new VM
    New-AzVM -ResourceGroupName $rgName -Location $location -VM $vm

Verifikasi bahwa komputer virtual telah dibuat

Setelah selesai, Anda akan melihat VM yang baru dibuat di portal Azure di bawah Telusuri>Komputer virtual, atau dengan menggunakan perintah PowerShell berikut:

    $vmList = Get-AzVM -ResourceGroupName $rgName
    $vmList.Name

Langkah berikutnya

Untuk mengelola komputer virtual baru Anda dengan Azure PowerShell, lihat Mengelola komputer virtual menggunakan Azure Resource Manager dan PowerShell.