Snabbstart: Skapa en virtuell Windows Server-dator med hjälp av PowerShell i Azure Stack Hub

Du kan skapa en Windows Server 2016 virtuell dator med hjälp av Azure Stack Hub PowerShell. Följ stegen i den här artikeln för att skapa och använda en virtuell dator. Den här artikeln innehåller också anvisningar för att:

  • Anslut till den virtuella datorn med en fjärrklient.
  • Installera IIS-webbservern och visa standardstartsidan.
  • Rensa dina resurser.

Anteckning

Du kan köra stegen som beskrivs i den här artikeln från Azure Stack Development Kit eller från en Windows-baserad extern klient om du är ansluten via ett VPN.

Krav för virtuell Windows Server-dator

  • Kontrollera att din Azure Stack Hub-operatör har lagt till Windows Server 2016-avbildningen på Azure Stack Hub Marketplace.

  • Azure Stack Hub kräver en specifik version av Azure PowerShell för att skapa och hantera resurserna. Om du inte har konfigurerat PowerShell för Azure Stack Hub följer du stegen för att installera PowerShell.

  • När Du har konfigurerat Azure Stack Hub PowerShell måste du ansluta till din Azure Stack Hub-miljö. Instruktioner finns i Ansluta till Azure Stack Hub med PowerShell som användare.

Skapa en resursgrupp

En resursgrupp är en logisk container där Azure Stack Hub-resurser distribueras och hanteras. Kör följande kodblock från utvecklingspaketet eller det integrerade Azure Stack Hub-systemet för att skapa en resursgrupp.

Anteckning

Värden tilldelas för alla variabler i kodexemplen. Du kan dock tilldela nya värden om du vill.

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

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

Skapa lagringsresurser

Skapa ett lagringskonto för att lagra utdata från startdiagnostiken.

# 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

Skapa nätverksresurser

Skapa ett virtuellt nätverk, undernät och offentlig IP-adress. Dessa resurser används för att tillhandahålla nätverksanslutning till den virtuella datorn.

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

Skapa en nätverkssäkerhetsgrupp och en regel för nätverkssäkerhetsgrupp

Nätverkssäkerhetsgruppen skyddar den virtuella datorn med hjälp av regler för inkommande och utgående trafik. Nu ska vi skapa en regel för inkommande trafik för port 3389 som tillåter inkommande fjärrskrivbordsanslutningar och en regel för inkommande trafik för port 80 att tillåta inkommande webbtrafik.

# 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

Skapa ett nätverkskort för den virtuella datorn

Nätverkskortet ansluter den virtuella datorn till ett undernät, en nätverkssäkerhetsgrupp och en offentlig IP-adress.

# 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

Skapa en virtuell dator

Skapa en VM-konfiguration. Den här konfigurationen innehåller de inställningar som används när du distribuerar den virtuella datorn. Till exempel: autentiseringsuppgifter, storlek och VM-avbildning.

# 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

Anslut till VM:en

Om du vill fjärransluta till den virtuella dator som du skapade i föregående steg behöver du dess offentliga IP-adress. Kör följande kommando för att hämta den virtuella datorns offentliga IP-adress:

Get-AzPublicIpAddress `
  -ResourceGroupName $ResourceGroupName | Select IpAddress

Använd följande kommando för att skapa en fjärrskrivbordssession med den virtuella datorn. Ersätt IP-adressen med den virtuella datorns publicIPAddress. När du uppmanas till det anger du användarnamnet och lösenordet som användes när du skapade den virtuella datorn.

mstsc /v <publicIpAddress>

Installera IIS via PowerShell

Nu när du har loggat in på den virtuella Azure-datorn kan du använda en enda rad Med PowerShell för att installera IIS och aktivera den lokala brandväggsregeln för att tillåta webbtrafik. Öppna en PowerShell-kommandotolk och kör följande kommando:

Install-WindowsFeature -name Web-Server -IncludeManagementTools

Visa välkomstsidan för IIS

När IIS är installerat och port 80 är öppen på den virtuella datorn kan du använda valfri webbläsare för att visa standardsidan för IIS-välkomst. Använd publicIpAddress som du dokumenterade i föregående avsnitt för att besöka standardsidan.

Standardwebbplatsen i IIS

Ta bort den virtuella datorn

När den inte längre behövs använder du följande kommando för att ta bort resursgruppen som innehåller den virtuella datorn och dess relaterade resurser:

Remove-AzResourceGroup `
  -Name $ResourceGroupName

Nästa steg

I den här snabbstarten har du distribuerat en enkel virtuell Windows-dator. Om du vill veta mer om virtuella Azure Stack Hub-datorer kan du fortsätta till funktionerna för virtuella Azure Stack Hub-datorer.