Guida introduttiva: creare una macchina virtuale Windows Server usando PowerShell nell'hub Azure StackQuickstart: Create a Windows Server VM by using PowerShell in Azure Stack Hub

È possibile creare una macchina virtuale (VM) Windows Server 2016 usando Azure Stack Hub PowerShell.You can create a Windows Server 2016 virtual machine (VM) by using Azure Stack Hub PowerShell. Per creare e usare una macchina virtuale, seguire la procedura descritta in questo articolo.Follow the steps in this article to create and use a VM. Questo articolo fornisce inoltre i passaggi per:This article also gives you the steps to:

  • Connettersi alla macchina virtuale con un client remoto.Connect to the VM with a remote client.
  • Installare il server Web IIS e visualizzare le home page predefinite.Install the IIS web server and view the default home page.
  • Pulire le risorse.Clean up your resources.

Nota

È possibile eseguire i passaggi descritti in questo articolo dalla Azure Stack Development Kit o da un client esterno basato su Windows se si è connessi tramite VPN.You can run the steps described in this article from the Azure Stack Development Kit, or from a Windows-based external client if you are connected over a VPN.

Prerequisiti per la macchina virtuale Windows ServerPrerequisites for Windows Server VM

  • Assicurarsi che l'operatore di Azure Stack Hub abbia aggiunto l'immagine di Windows Server 2016 al Marketplace dell'hub Azure stack.Make sure that your Azure Stack Hub operator has added the Windows Server 2016 image to the Azure Stack Hub Marketplace.

  • Azure Stack Hub richiede una versione specifica di Azure PowerShell per creare e gestire le risorse.Azure Stack Hub requires a specific version of Azure PowerShell to create and manage the resources. Se PowerShell non è configurato per Azure Stack Hub, seguire i passaggi per installare PowerShell.If you don't have PowerShell configured for Azure Stack Hub, follow the steps to install PowerShell.

  • Con la configurazione di PowerShell per hub Azure Stack, sarà necessario connettersi all'ambiente dell'hub Azure Stack.With the Azure Stack Hub PowerShell set up, you'll need to connect to your Azure Stack Hub environment. Per istruzioni, vedere connettersi a Azure stack Hub con PowerShell come utente.For instruction, see Connect to Azure Stack Hub with PowerShell as a user.

Creare un gruppo di risorseCreate a resource group

Un gruppo di risorse è un contenitore logico in cui vengono distribuite e gestite le risorse dell'hub Azure Stack.A resource group is a logical container into which Azure Stack Hub resources are deployed and managed. Dal kit di sviluppo o dal sistema integrato Azure Stack Hub, eseguire il blocco di codice seguente per creare un gruppo di risorse.From your development kit or the Azure Stack Hub integrated system, run the following code block to create a resource group.

Nota

I valori vengono assegnati per tutte le variabili negli esempi di codice.Values are assigned for all variables in the code examples. Tuttavia, se si desidera, è possibile assegnare nuovi valori.However, you can assign new values if you want to.

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

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

Creare le risorse di archiviazioneCreate storage resources

Creare un account di archiviazione per archiviare l'output della diagnostica di avvio.Create a storage account to store the output of boot diagnostics.

# 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

Creare risorse di reteCreate networking resources

Creare una rete virtuale, una subnet e un indirizzo IP pubblico.Create a virtual network, subnet, and a public IP address. Queste risorse vengono usate per fornire la connettività di rete alla macchina virtuale.These resources are used to provide network connectivity to the VM.

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

Creare un gruppo di sicurezza di rete e una regola del gruppo di sicurezza di reteCreate a network security group and a network security group rule

Il gruppo di sicurezza di rete protegge la macchina virtuale usando regole in ingresso e in uscita.The network security group secures the VM by using inbound and outbound rules. Verrà ora creata una regola in ingresso per la porta 3389 per consentire le connessioni in ingresso Desktop remoto e una regola in ingresso per la porta 80 per consentire il traffico Web in ingresso.Let's create an inbound rule for port 3389 to allow incoming Remote Desktop connections and an inbound rule for port 80 to allow incoming web traffic.

# 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

Creare una scheda di rete per la macchina virtualeCreate a network card for the VM

La scheda di rete connette la macchina virtuale a una subnet, a un gruppo di sicurezza di rete e a un indirizzo IP pubblico.The network card connects the VM to a subnet, network security group, and public IP address.

# 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

Creare una macchina virtualeCreate a VM

Creare una configurazione di macchina virtuale.Create a VM configuration. Questa configurazione include le impostazioni usate per la distribuzione della macchina virtuale.This configuration includes the settings used when deploying the VM. Ad esempio: credenziali, dimensioni e immagine di macchina virtuale.For example: credentials, size, and the VM image.

# 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-AzVMBootDiagnostics -ResourceGroupName $ResourceGroupName `
  -StorageAccountName $StorageAccountName -Enable |`
  Add-AzVMNetworkInterface -Id $nic.Id


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

Connettersi alla VMConnect to the VM

Per accedere in remoto alla macchina virtuale creata nel passaggio precedente, è necessario l'indirizzo IP pubblico.To remote into the VM that you created in the previous step, you need its public IP address. Eseguire il comando seguente per ottenere l'indirizzo IP pubblico della macchina virtuale:Run the following command to get the public IP address of the VM:

Get-AzPublicIpAddress `
  -ResourceGroupName $ResourceGroupName | Select IpAddress

Usare il comando seguente per creare una sessione di Desktop remoto con la macchina virtuale.Use the following command to create a Remote Desktop session with the VM. Sostituire l'indirizzo IP con l'indirizzo publicIPAddress della macchina virtuale.Replace the IP address with the publicIPAddress of your VM. Quando richiesto, immettere il nome utente e la password usati durante la creazione della macchina virtuale.When prompted, enter the username and password used when creating the VM.

mstsc /v <publicIpAddress>

Installare IIS tramite PowerShellInstall IIS via PowerShell

Ora che è stato eseguito l'accesso alla macchina virtuale di Azure, è possibile usare una singola riga di PowerShell per installare IIS e abilitare la regola del firewall locale per consentire il traffico Web.Now that you have signed in to the Azure VM, you can use a single line of PowerShell to install IIS and enable the local firewall rule to allow web traffic. Aprire un prompt di PowerShell ed eseguire questo comando:Open a PowerShell prompt and run the following command:

Install-WindowsFeature -name Web-Server -IncludeManagementTools

Visualizzare la pagina iniziale di IISView the IIS welcome page

Con IIS installato e con la porta 80 aperta nella macchina virtuale, è possibile usare qualsiasi browser per visualizzare la pagina iniziale predefinita di IIS.With IIS installed, and with port 80 open on your VM, you can use any browser to view the default IIS welcome page. Usare il publicIpAddress illustrato nella sezione precedente per visitare la pagina predefinita.Use the publicIpAddress you documented in the previous section to visit the default page.

Sito IIS predefinito

Eliminare la macchina virtualeDelete the VM

Quando non è più necessario, usare il comando seguente per rimuovere il gruppo di risorse che contiene la macchina virtuale e le risorse correlate:When no longer needed, use the following command to remove the resource group that contains the VM and its related resources:

Remove-AzResourceGroup `
  -Name $ResourceGroupName

Passaggi successiviNext steps

In questa Guida introduttiva è stata distribuita una semplice macchina virtuale Windows.In this quickstart, you've deployed a simple Windows VM. Per altre informazioni sulle macchine virtuali Azure Stack Hub, continuare a Azure stack le funzionalità della VM Hub.To learn more about Azure Stack Hub VMs, continue to Azure Stack Hub VM features.