Administración de máquinas virtuales en Azure Local mediante Windows PowerShell
Se aplica a: Azure Local, versiones 23H2 y 22H2; Windows Server 2022, Windows Server 2019
En este artículo se describe cómo crear y administrar máquinas virtuales (VM) en Azure Local mediante Windows PowerShell.
Nota:
La manera recomendada de crear y administrar máquinas virtuales en Azure Local es usar la plano de control de Azure Arc. Sin embargo, dado que Azure Arc no proporciona aún la funcionalidad descrita en este artículo, puede usar Windows Admin Center o PowerShell como se describe a continuación. Tenga en cuenta que las máquinas virtuales creadas de esta manera no son máquinas virtuales habilitadas para Arc. Tienen una capacidad de administración limitada desde el plano de control de Azure Arc y menos Ventaja híbrida de Azure, por ejemplo, sin uso gratuito de Azure Update Manager.
Acerca de la administración de máquinas virtuales mediante PowerShell
Normalmente, administra máquinas virtuales desde un equipo remoto, en lugar de en un equipo host en Azure Local. Este equipo remoto se denomina equipo de administración.
Al ejecutar comandos de PowerShell desde un equipo de administración, incluya el -ComputerName
parámetro con el nombre de la máquina host que administra. Se permiten los nombres NetBIOS, direcciones IP y nombres de dominio completos.
Para obtener documentación de referencia completa sobre cómo administrar máquinas virtuales mediante PowerShell, consulte Referencia de Hyper-V.
Creación de una máquina virtual
El cmdlet New-VM
se usa para crear una máquina virtual. Para obtener información detallada sobre el uso, consulte la documentación de referencia de New-VM.
Esta es la configuración que puede especificar al crear una nueva máquina virtual con un disco duro virtual existente, donde:
-Name es el nombre que se proporciona para la máquina virtual que se va a crear.
-MemoryStartupBytes es la cantidad de memoria que está disponible para la máquina virtual en el inicio.
-BootDevice es el dispositivo en el que se arranca la máquina virtual cuando se inicia. Normalmente, se trata de un disco duro virtual (VHD), un archivo .iso para el arranque basado en DVD o un adaptador de red (NetworkAdapter) para el arranque de red.
-VHDPath es la ruta de acceso al disco de la máquina virtual que desea usar.
-Path es la ruta de acceso para almacenar los archivos de configuración de la máquina virtual.
-Generation es la generación de la máquina virtual. Use la generación 1 para VHD y la generación 2 para VHDX.
-SwitchName es el nombre del conmutador virtual que desea que la máquina virtual use para conectarse a otras máquinas virtuales o a la red. Obtenga el nombre del conmutador virtual mediante Get-VMSwitch. Por ejemplo:
El comando completo como se indica a continuación para crear una máquina virtual denominada VM1:
New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes <Memory> -BootDevice <BootDevice> -VHDPath <VHDPath> -Path <Path> -Generation <Generation> -SwitchName <Switch name>
En el ejemplo siguiente se crea una máquina virtual de generación 2 con 4 GB de memoria. Se inicia desde la carpeta VMs\Win10.vhdx en el directorio actual y usa el conmutador virtual denominado ExternalSwitch. Los archivos de configuración de la máquina virtual se almacenan en la carpeta VMData.
New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes 4GB -BootDevice VHD -VHDPath .\VMs\Win10.vhdx -Path .\VMData -Generation 2 -SwitchName ExternalSwitch
Los siguientes parámetros se usan para especificar discos duros virtuales.
Para crear una máquina virtual con un nuevo disco duro virtual, reemplace el parámetro -VHDPath del ejemplo anterior por -NewVHDPath y agregue el parámetro -NewVHDSizeBytes, tal y como se muestra aquí:
New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes 4GB -BootDevice VHD -NewVHDPath .\VMs\Win10.vhdx -Path .\VMData -NewVHDSizeBytes 20GB -Generation 2 -SwitchName ExternalSwitch
Para crear una máquina virtual con un nuevo disco virtual que arranque en una imagen de sistema operativo, consulte el ejemplo de PowerShell en el tutorial de creación de una máquina virtual para Hyper-V en Windows 10.
Obtención de una lista de máquinas virtuales
En el ejemplo siguiente se devuelve una lista de todas las máquinas virtuales de Server1.
Get-VM -ComputerName Server1
En el ejemplo siguiente se devuelve una lista de todas las máquinas virtuales en ejecución en una máquina agregando un filtro mediante el Where-Object
comando . Para más información, consulte la documentación de Uso de Where-Object.
Get-VM -ComputerName Server1 | Where-Object -Property State -eq "Running"
En el ejemplo siguiente se devuelve una lista de todas las máquinas virtuales de apagado de la máquina.
Get-VM -ComputerName Server1 | Where-Object -Property State -eq "Off"
Inicio y detención de una máquina virtual
Use los comandos Start-VM
y Stop-VM
para iniciar o detener una máquina virtual. Para obtener información detallada, consulte la documentación de referencia de Start-VM y Stop-VM.
En el ejemplo siguiente se muestra cómo iniciar una máquina virtual denominada VM1:
Start-VM -Name VM1 -ComputerName Server1
En el ejemplo siguiente se muestra cómo apagar una máquina virtual denominada TestVM:
Stop-VM -Name VM1 -ComputerName Server1
Traslado de una máquina virtual
El Move-VM
cmdlet mueve una máquina virtual a otra máquina. Para más información, consulte la documentación de referencia de Move-VM.
En el ejemplo siguiente se muestra cómo trasladar una máquina virtual a Server2 cuando la máquina virtual está almacenada en un recurso compartido de SMB de Server1:
Move-VM -ComputerName Server1 -Name VM1 -DestinationHost Server2
En el ejemplo siguiente se muestra cómo trasladar una máquina virtual a Server2 desde Server1 y cómo trasladar todos los archivos asociados con la máquina virtual a D:\VM_nombreEnElEquipoRemoto:
Move-VM -ComputerName Server1 -Name VM1 -DestinationHost Server2 -IncludeStorage -DestinationStoragePath D:\VM_name
Importación o exportación de una máquina virtual
Los cmdlets Import-VM
y Export-VM
permiten importar y exportar una máquina virtual. A continuación se muestran un par de ejemplos. Para más información, consulte la documentación de referencia de Import-VM y Export-VM.
El siguiente ejemplo muestra cómo importar una máquina virtual desde su archivo de configuración. La máquina virtual está registrada en contexto, por lo que sus archivos no se copian:
Import-VM -ComputerName Server1 -Name VM1 -Path 'C:\<vm export path>\2B91FEB3-F1E0-4FFF-B8BE-29CED892A95A.vmcx'
En el ejemplo siguiente se exporta una máquina virtual a la raíz de la unidad D:
Export-VM -ComputerName Server1 -Name VM1 -Path D:\
Cambio de nombre de una máquina virtual
Se usa el cmdlet Rename-VM
para cambiar el nombre de una máquina virtual. Para obtener información detallada, consulte la documentación de referencia de Rename-VM.
En el ejemplo siguiente se cambia el nombre de VM1 a VM2 y se muestra la máquina virtual con el nombre:
Rename-VM -ComputerName Server1 -Name VM1 -NewName VM2
Creación de un punto de comprobación de la máquina virtual
El cmdlet Checkpoint-VM
se usa para crear un punto de comprobación para una máquina virtual. Para obtener información detallada, consulte la documentación de referencia de Checkpoint-VM.
En el ejemplo siguiente se crea un punto de comprobación denominado BeforeInstallingUpdates para la máquina virtual denominada Test.
Checkpoint-VM -ComputerName Server1 -Name VM1 -SnapshotName BeforeInstallingUpdates
Creación de un disco duro virtual para una máquina virtual
El cmdlet New-VHD
se usa para crear un nuevo disco duro virtual para una máquina virtual. Para obtener información detallada sobre cómo usarla, consulte la documentación de referencia de New-VHD .
Incorporación de un adaptador de red a una máquina virtual
El cmdlet Add-VMNetworkAdapter
se usa para agregar un adaptador de red virtual a una máquina virtual. A continuación se muestran un par de ejemplos. Para obtener información detallada sobre cómo usarlo, consulte la documentación de referencia de Add-VMNetworkAdapter.
En el ejemplo siguiente se agrega un adaptador de red virtual denominado Redmond NIC1 a una máquina virtual denominada VM1:
Add-VMNetworkAdapter -ComputerName Server1 -VMName VM1 -Name "Redmond NIC1"
En este ejemplo se agrega un adaptador de red virtual a una máquina virtual denominada VM1 y esta se conecta a un conmutador virtual denominado Network:
Add-VMNetworkAdapter -ComputerName Server1 -VMName VM1 -SwitchName Network
Creación de un conmutador virtual para una máquina virtual
El cmdlet New-VMSwitch
se usa para el nuevo conmutador virtual en un host de máquina virtual. Para obtener información detallada sobre cómo usarlo, consulte la documentación de referencia de New-VMSwitch.
En el ejemplo siguiente se crea un nuevo conmutador denominado "QoS switch", que se enlaza a un adaptador de red denominado Wired Ethernet Connection 3 y admite ancho de banda mínimo basado en el peso.
New-VMSwitch "QoS Switch" -NetAdapterName "Wired Ethernet Connection 3" -MinimumBandwidthMode Weight
Establecimiento de memoria para una máquina virtual
El cmdlet Set-VMMemory
se usa para configurar la memoria de una máquina virtual. Para obtener información detallada sobre cómo usarlo, consulte la documentación de referencia de Set-VMMemory.
En el ejemplo siguiente se habilita la memoria dinámica en una máquina virtual denominada VM1, se establece la memoria mínima, de inicio y máxima, su prioridad de memoria y su búfer.
Set-VMMemory -ComputerName Server1 -Name VM1 -DynamicMemoryEnabled $true -MinimumBytes 64MB -StartupBytes 256MB -MaximumBytes 2GB -Priority 80 -Buffer 25
Establecimiento de procesadores virtuales para una máquina virtual
El cmdlet Set-VMProcessor
se usa para configurar los procesadores virtuales para una máquina virtual. Para obtener información detallada sobre cómo usarlo, consulte la documentación de referencia de Set-VMProcessor.
En el ejemplo siguiente se configura una máquina virtual denominada VM1 con dos procesadores virtuales, una reserva del 10 %, un límite del 75 % y un peso relativo de 200.
Set-VMProcessor -ComputerName Server1 -Name VM1 -Count 2 -Reserve 10 -Maximum 75 -RelativeWeight 200
Eliminación de una VM
La eliminación o eliminación de una máquina virtual a través de PowerShell elimina el archivo de configuración de la máquina virtual, pero no elimina las unidades de disco duro virtuales asociadas. Si quiere eliminar una máquina virtual con todos los archivos, incluidas las unidades de disco duro virtuales, considere la posibilidad de usar Windows Admin Center.
Antes de eliminar una máquina virtual, asegúrese de que la máquina virtual está desactivada. Recuerde que la eliminación de una máquina virtual elimina el archivo de configuración de forma irreversible.
Eliminación de una máquina virtual de una máquina
Para quitar o eliminar una máquina virtual y sus recursos de una máquina, primero busque todas las máquinas virtuales de la máquina mediante el siguiente cmdlet:
Get-VM -Name VM1
A continuación, ejecute el siguiente cmdlet para cada máquina virtual que quiera quitar de la máquina:
Remove-VM -Name VM1
Eliminación de una máquina virtual de un sistema
Para quitar o eliminar una máquina virtual y sus recursos de un sistema, primero debe encontrarlos mediante el siguiente cmdlet:
Get-ClusterGroup
A continuación, ejecute el siguiente cmdlet para cada máquina virtual que quiera quitar del sistema:
Remove-ClusterGroup -RemoveResources -Name VM1
Pasos siguientes
También puede crear y administrar máquinas virtuales mediante Windows Admin Center. Para más información, consulte Windows Admin Center.