Mulai Cepat: Membuat mesin virtual Windows Server menggunakan PowerShell di Azure Stack Hub

Anda dapat membuat mesin virtual (VM) Windows Server 2016 menggunakan Azure Stack Hub PowerShell. Ikuti langkah-langkah dalam artikel ini untuk membuat dan menggunakan mesin virtual. Artikel ini juga memberi Anda langkah-langkah untuk:

  • Menyambungkan ke mesin virtual dengan klien jarak jauh.
  • Menginstal server web IIS dan menampilkan halaman beranda default.
  • Membersihkan sumber daya Anda.

Catatan

Anda dapat menjalankan langkah-langkah yang dijelaskan dalam artikel ini dari Kit Pengembangan Azure Stack, atau dari klien eksternal berbasis Windows jika Anda tersambung melalui VPN.

Prasyarat untuk mesin virtual Windows Server

  • Pastikan operator Azure Stack Hub Anda telah menambahkan gambar Windows Server 2016 ke Marketplace Azure Stack Hub.

  • Azure Stack Hub memerlukan versi Azure PowerShell tertentu untuk membuat dan mengelola sumber daya. Jika Anda tidak memiliki PowerShell yang dikonfigurasi untuk Azure Stack Hub, ikuti langkah-langkah untuk menginstal PowerShell.

  • Dengan pengaturan PowerShell Azure Stack Hub, Anda harus tersambung ke lingkungan Azure Stack Hub Anda. Untuk instruksi, lihat Menyambungkan ke Azure Stack Hub menggunakan PowerShell sebagai pengguna.

Buat grup sumber daya

Grup sumber daya adalah kontainer logis tempat sumber daya Azure Stack Hub disebarkan dan dikelola. Dari kit pengembangan atau sistem terintegrasi Azure Stack Hub Anda, jalankan blok kode berikut untuk membuat grup sumber daya.

Catatan

Nilai ditetapkan untuk semua variabel dalam contoh kode. Namun, Anda dapat menetapkan nilai baru jika menghendaki.

# Create variables to store the location and resource group names.
$location = "local"
$ResourceGroupName = "myResourceGroup"

New-AzResourceGroup `
  -Name $ResourceGroupName `
  -Location $location

Membuat sumber daya penyimpanan

Buat akun penyimpanan untuk menyimpan output diagnostik boot.

# Create variables to store the storage account name and the storage account SKU information
$StorageAccountName = "mystorageaccount"
$SkuName = "Standard_LRS"

# Create a new storage account
$StorageAccount = New-AzStorageAccount `
  -Location $location `
  -ResourceGroupName $ResourceGroupName `
  -Type $SkuName `
  -Name $StorageAccountName

Set-AzCurrentStorageAccount `
  -StorageAccountName $storageAccountName `
  -ResourceGroupName $resourceGroupName

Membuat sumber daya jaringan

Buat jaringan virtual, subnet, dan alamat IP publik. Semua sumber daya ini digunakan untuk menyediakan konektivitas jaringan ke mesin virtual.

# Create a subnet configuration
$subnetConfig = New-AzVirtualNetworkSubnetConfig `
  -Name mySubnet `
  -AddressPrefix 192.168.1.0/24

# Create a virtual network
$vnet = New-AzVirtualNetwork `
  -ResourceGroupName $ResourceGroupName `
  -Location $location `
  -Name MyVnet `
  -AddressPrefix 192.168.0.0/16 `
  -Subnet $subnetConfig

# Create a public IP address and specify a DNS name
$pip = New-AzPublicIpAddress `
  -ResourceGroupName $ResourceGroupName `
  -Location $location `
  -AllocationMethod Static `
  -IdleTimeoutInMinutes 4 `
  -Name "mypublicdns$(Get-Random)"

Membuat kelompok keamanan jaringan dan aturan grup keamanan jaringan

Kelompok keamanan jaringan mengamankan mesin virtual menggunakan aturan masuk dan keluar. Mari kita buat aturan masuk untuk port 3389 guna memungkinkan koneksi Desktop Jauh yang masuk dan aturan masuk untuk port 80 guna memungkinkan lalu lintas web masuk.

# Create an inbound network security group rule for port 3389
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig `
  -Name myNetworkSecurityGroupRuleRDP `
  -Protocol Tcp `
  -Direction Inbound `
  -Priority 1000 `
  -SourceAddressPrefix * `
  -SourcePortRange * `
  -DestinationAddressPrefix * `
  -DestinationPortRange 3389 `
  -Access Allow

# Create an inbound network security group rule for port 80
$nsgRuleWeb = New-AzNetworkSecurityRuleConfig `
  -Name myNetworkSecurityGroupRuleWWW `
  -Protocol Tcp `
  -Direction Inbound `
  -Priority 1001 `
  -SourceAddressPrefix * `
  -SourcePortRange * `
  -DestinationAddressPrefix * `
  -DestinationPortRange 80 `
  -Access Allow

# Create a network security group
$nsg = New-AzNetworkSecurityGroup `
  -ResourceGroupName $ResourceGroupName `
  -Location $location `
  -Name myNetworkSecurityGroup `
  -SecurityRules $nsgRuleRDP,$nsgRuleWeb

Membuat kartu jaringan untuk VM

Kartu jaringan menyambungkan VM ke subnet, kelompok keamanan jaringan, dan alamat IP publik.

# Create a virtual network card and associate it with public IP address and NSG
$nic = New-AzNetworkInterface `
  -Name myNic `
  -ResourceGroupName $ResourceGroupName `
  -Location $location `
  -SubnetId $vnet.Subnets[0].Id `
  -PublicIpAddressId $pip.Id `
  -NetworkSecurityGroupId $nsg.Id

Buat VM

Buat konfigurasi mesin virtual. Konfigurasi ini mencakup pengaturan yang digunakan saat menyebarkan VM. Misalnya: info masuk, ukuran, dan gambar mesin virtual.

# Define a credential object to store the username and password for the VM
$UserName='demouser'
$Password='Password@123'| ConvertTo-SecureString -Force -AsPlainText
$Credential=New-Object PSCredential($UserName,$Password)

# Create the VM configuration object
$VmName = "VirtualMachinelatest"
$VmSize = "Standard_A1"
$VirtualMachine = New-AzVMConfig `
  -VMName $VmName `
  -VMSize $VmSize

$VirtualMachine = Set-AzVMOperatingSystem `
  -VM $VirtualMachine `
  -Windows `
  -ComputerName "MainComputer" `
  -Credential $Credential -ProvisionVMAgent

$VirtualMachine = Set-AzVMSourceImage `
  -VM $VirtualMachine `
  -PublisherName "MicrosoftWindowsServer" `
  -Offer "WindowsServer" `
  -Skus "2016-Datacenter" `
  -Version "latest"

# Sets the operating system disk properties on a VM.
$VirtualMachine = Set-AzVMOSDisk `
  -VM $VirtualMachine `
  -CreateOption FromImage | `
  Set-AzVMBootDiagnostic -ResourceGroupName $ResourceGroupName `
  -StorageAccountName $StorageAccountName -Enable |`
  Add-AzVMNetworkInterface -Id $nic.Id


# Create the VM.
New-AzVM `
  -ResourceGroupName $ResourceGroupName `
  -Location $location `
  -VM $VirtualMachine

Menyambungkan ke VM

Untuk masuk dari jauh ke mesin virtual yang Anda buat di langkah sebelumnya, Anda memerlukan alamat IP publiknya. Jalankan perintah berikut untuk mendapatkan alamat IP publik mesin virtual:

Get-AzPublicIpAddress `
  -ResourceGroupName $ResourceGroupName | Select IpAddress

Gunakan perintah berikut untuk membuat sesi Desktop Jauh menggunakan mesin virtual. Ganti alamat IP dengan publicIPAddress VM Anda. Saat diminta, masukkan nama pengguna dan kata sandi yang digunakan saat membuat mesin virtual.

mstsc /v <publicIpAddress>

Menginstal IIS melalui PowerShell

Sekarang setelah Anda masuk ke mesin virtual Azure, Anda dapat menggunakan satu baris PowerShell untuk menginstal IIS dan mengaktifkan aturan firewall lokal guna memungkinkan lalu lintas web. Buka perintah PowerShell dan jalankan perintah berikut:

Install-WindowsFeature -name Web-Server -IncludeManagementTools

Lihat halaman selamat datang IIS

Dengan IIS terinstal dan port 80 terbuka di mesin virtual Anda, Anda dapat menggunakan browser apa pun untuk melihat beranda IIS default. Gunakan publicIpAddress yang Anda dokumentasikan di bagian sebelumnya untuk mengunjungi halaman default.

Situs default IIS

Menghapus VM

Bila tidak lagi diperlukan, gunakan perintah berikut untuk menghapus grup sumber daya yang berisi mesin virtual dan sumber daya terkaitnya:

Remove-AzResourceGroup `
  -Name $ResourceGroupName

Langkah berikutnya

Dalam mulai cepat ini, Anda telah menyebarkan mesin virtual Windows sederhana. Untuk mempelajari selengkapnya tentang mesin virtual Azure Stack Hub, lanjutkan ke fitur mesin virtual Azure Stack Hub.