Creación una máquina virtual completamente configurada con PowerShell
Este script crea una máquina virtual de Azure donde se ejecuta Windows Server 2016. Después de ejecutar el script, puede acceder a la máquina virtual a través de RDP.
Este ejemplo requiere Azure PowerShell Az 1.0, o cualquier versión posterior. Ejecute Get-Module -ListAvailable Az
para ver qué versiones están instaladas.
Si necesita instalarlo, consulte Instalación del módulo de Azure PowerShell.
Ejecute Connect AzAccount para iniciar sesión en Azure.
Si no tiene una suscripción a Azure, cree una cuenta gratuita de Azure antes de empezar.
Script de ejemplo
# 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
Limpieza de la implementación
Ejecute el siguiente comando para quitar el grupo de recursos, la máquina virtual y todos los recursos relacionados.
Remove-AzResourceGroup -Name myResourceGroup
Explicación del script
Este script usa los siguientes comandos para crear la implementación. Cada elemento de la tabla incluye vínculos a la documentación específica del comando.
Get-Help | Notas |
---|---|
New-AzResourceGroup | Crea un grupo de recursos en el que se almacenan todos los recursos. |
New-AzVirtualNetworkSubnetConfig | Crea una configuración de subred. Esta configuración se utiliza con el proceso de creación de la red virtual. |
New-AzVirtualNetwork | Crea una red virtual. |
New-AzPublicIpAddress | Crea una dirección IP pública. |
New-AzNetworkSecurityRuleConfig | Crea configuración de regla de grupo de seguridad de red. Esta configuración se utiliza para crear una regla NSG cuando se crea el NSG. |
New-AzNetworkSecurityGroup | Crea un grupo de seguridad de red. |
Get-AzVirtualNetworkSubnetConfig | Obtiene la información de subred. Esta información se usa al crear una interfaz de red. |
New-AzNetworkInterface | Crea una interfaz de red. |
New-AzVMConfig | Crea una configuración de máquina virtual. Esta configuración incluye diversa información, como el nombre de la máquina virtual, sistema el operativo y las credenciales administrativas. La configuración se utiliza durante la creación de las máquinas virtuales. |
New-AzVM | Cree una máquina virtual. |
Remove-AzResourceGroup | Quita un grupo de recursos y todos los recursos incluidos en él. |
Pasos siguientes
Para obtener más información sobre el módulo de Azure PowerShell, consulte la documentación de Azure PowerShell.
Encontrará más ejemplos de scripts de Azure PowerShell de máquina virtual en la documentación sobre máquinas virtuales Windows de Azure.