Tworzenie w pełni skonfigurowanej maszyny wirtualnej za pomocą programu PowerShell
Ten skrypt tworzy maszynę wirtualną platformy Azure z systemem Windows Server 2016. Po uruchomieniu skryptu dostęp do maszyny wirtualnej można uzyskać za pomocą protokołu RDP.
Ten przykład wymaga Azure PowerShell Az 1.0 lub nowszego. Uruchom polecenie , Get-Module -ListAvailable Az
aby zobaczyć, które wersje są zainstalowane.
Jeśli chcesz zainstalować, zobacz Instalowanie modułu Azure PowerShell.
Uruchom polecenie Connect-AzAccount , aby zalogować się do platformy Azure.
Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto platformy Azure.
Przykładowy skrypt
# Variables for common values
$resourceGroup = "myResourceGroup"
$location = "westeurope"
$vmName = "myVM"
# Create user object
$cred = Get-Credential -Message "Enter a username and password for the virtual machine."
# Create a resource group
New-AzResourceGroup -Name $resourceGroup -Location $location
# Create a subnet configuration
$subnetConfig = New-AzVirtualNetworkSubnetConfig -Name mySubnet -AddressPrefix 192.168.1.0/24
# Create a virtual network
$vnet = New-AzVirtualNetwork -ResourceGroupName $resourceGroup -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 $resourceGroup -Location $location `
-Name "mypublicdns$(Get-Random)" -AllocationMethod Static -IdleTimeoutInMinutes 4
# 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 a network security group
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $resourceGroup -Location $location `
-Name myNetworkSecurityGroup -SecurityRules $nsgRuleRDP
# Create a virtual network card and associate with public IP address and NSG
$nic = New-AzNetworkInterface -Name myNic -ResourceGroupName $resourceGroup -Location $location `
-SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id -NetworkSecurityGroupId $nsg.Id
# Create a virtual machine configuration
$vmConfig = New-AzVMConfig -VMName $vmName -VMSize Standard_D1 | `
Set-AzVMOperatingSystem -Windows -ComputerName $vmName -Credential $cred | `
Set-AzVMSourceImage -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2016-Datacenter -Version latest | `
Add-AzVMNetworkInterface -Id $nic.Id
# Create a virtual machine
New-AzVM -ResourceGroupName $resourceGroup -Location $location -VM $vmConfig
Czyszczenie wdrożenia
Uruchom następujące polecenie, aby usunąć grupę zasobów, maszynę wirtualną i wszystkie powiązane zasoby.
Remove-AzResourceGroup -Name myResourceGroup
Objaśnienia dla skryptu
Ten skrypt używa następujących poleceń w celu utworzenia wdrożenia. Każda pozycja w tabeli stanowi link do dokumentacji polecenia.
Polecenie | Uwagi |
---|---|
New-AzResourceGroup | Tworzy grupę zasobów, w której są przechowywane wszystkie zasoby. |
New-AzVirtualNetworkSubnetConfig | Tworzy konfigurację podsieci. Ta konfiguracja jest używana podczas procesu tworzenia sieci wirtualnej. |
New-AzVirtualNetwork | Tworzy sieć wirtualną. |
New-AzPublicIpAddress | Tworzy publiczny adres IP. |
New-AzNetworkSecurityRuleConfig | Tworzy konfiguracji reguły sieciowej grupy zabezpieczeń. Ta konfiguracja jest używana do tworzenia reguły sieciowej grupy zabezpieczeń podczas tworzenia sieciowej grupy zabezpieczeń. |
New-AzNetworkSecurityGroup | Tworzy sieciową grupę zabezpieczeń. |
Get-AzVirtualNetworkSubnetConfig | Pobiera informacje o podsieci. Te informacje są używane podczas tworzenia interfejsu sieciowego. |
New-AzNetworkInterface | Tworzy interfejs sieciowy. |
New-AzVMConfig | Tworzy konfigurację maszyny wirtualnej. Ta konfiguracja zawiera informacje, takie jak nazwa maszyny wirtualnej, system operacyjny i poświadczenia administracyjne. Jest ona używana podczas tworzenia maszyny wirtualnej. |
New-AzVM | Tworzy maszynę wirtualną. |
Remove-AzResourceGroup | Usuwa grupę zasobów i wszystkie zasoby w niej zawarte. |
Następne kroki
Aby uzyskać więcej informacji na temat modułu Azure PowerShell, zobacz dokumentację programu Azure PowerShell.
Więcej przykładowych skryptów programu PowerShell na potrzeby maszyny wirtualnej można znaleźć w dokumentacji dotyczącej maszyny wirtualnej platformy Azure z systemem Windows.