Remove-SCVirtualMachine
Quita un objeto de máquina virtual de VMM.
Sintaxis
Remove-SCVirtualMachine
[-VM] <VM>
[-SkipFileRemoval]
[-Force]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-WhatIf]
[-Confirm]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Description
El cmdlet Remove-SCVirtualMachine quita un objeto de máquina virtual implementado en un host o almacenado en un servidor de biblioteca de Virtual Machine Manager (VMM).
Este cmdlet elimina el registro de máquina virtual de la base de datos VMM, elimina todos los archivos asociados a la máquina virtual y quita la máquina virtual del host en el que se implementa o del servidor de biblioteca en el que se almacena.
Si VMM creó una carpeta en un host para esta máquina virtual, en lugar de por Hyper-V o VMware, y si esa carpeta no contiene otras máquinas virtuales u otros datos, puede usar el sistema de archivos para eliminar la carpeta después de haber quitado la máquina virtual.
Si especifica el parámetro Force, este cmdlet solo elimina la máquina virtual de la base de datos VMM. No elimina la propia máquina virtual.
Este cmdlet devuelve el objeto tras el éxito que tiene un valor de $True para la propiedad MarkedForDeletion. Si se produce un error, el cmdlet devuelve un mensaje de error.
Ejemplos
Ejemplo 1: Eliminación de una máquina virtual específica implementada en un host
PS C:\> $VM = Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.VMHost.Name -eq "VMHost01.Contoso.com" -and $_.Name -eq "VM01" }
PS C:\> Remove-SCVirtualMachine -VM $VM
El primer comando obtiene el objeto de máquina virtual denominado VM01 implementado en VMHost01 y, a continuación, almacena el objeto de máquina virtual en la variable $VM.
El segundo comando quita el objeto almacenado en $VM y elimina los archivos de máquina virtual correspondientes del sistema de archivos en su host.
Ejemplo 2: Eliminación de todas las máquinas virtuales con nombres que incluyen una cadena específica
PS C:\> $VMs = @(Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -Match "VM0" } )
PS C:\> $VMs | Remove-SCVirtualMachine
El primer comando obtiene todos los objetos de máquina virtual implementados en cualquier host cuyo nombre incluya la cadena VM0 y, a continuación, almacena estos objetos de máquina virtual en la matriz denominada $VMs.
El segundo comando quita cada objeto de máquina virtual de la matriz $VMs y elimina los archivos de máquina virtual correspondientes del sistema de archivos de cada host.
Ejemplo 3: Eliminación de una máquina virtual específica almacenada en un servidor de biblioteca VMM
PS C:\> $VM = Get-SCVirtualMachine -VMMServer "VMMServer1.Contoso.com" | where { $_.LibraryServer.Name -eq "LibraryServer01.Contoso.com" -and $_.Name -eq "VM02" }
PS C:\> Remove-SCVirtualMachine -VM $VM
El primer comando obtiene el objeto que representa la máquina virtual denominada VM03 y, a continuación, almacena el objeto de máquina virtual en $VM. En este ejemplo, solo existe una máquina virtual denominada VM03.
El segundo comando quita el objeto que representa VM03 de la biblioteca y elimina los archivos de máquina virtual correspondientes del sistema de archivos en el servidor de biblioteca.
Ejemplo 4: Eliminación de varias máquinas virtuales almacenadas de la biblioteca VMM
PS C:\> $VMs = Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.LibraryServer.Name -eq "LibraryServer01.Contoso.com" -and $_.Name -match "VM0" }
PS C:\> $VMs | Remove-SCVirtualMachine -Confirm
El primer comando obtiene todos los objetos de máquina virtual cuyos nombres incluyen la cadena VM0 y que se almacenan en LibraryServer01. A continuación, el comando almacena los objetos de máquina virtual en la matriz denominada $VMs.
El segundo comando pasa cada objeto de máquina virtual almacenado en $VMs al cmdlet actual, que quita cada objeto de la biblioteca y elimina los archivos de máquina virtual correspondientes del sistema de archivos en el servidor de biblioteca.
El parámetro Confirm
Parámetros
-Confirm
Le pide confirmación antes de ejecutar el cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Force
Indica que este cmdlet solo elimina la máquina virtual de la base de datos VMM. No elimina la propia máquina virtual.
Nota
En el caso de la máquina virtual implementada mediante plantillas de servicio o VMRole, este parámetro se omite y la máquina virtual real también se elimina.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-JobVariable
Especifica una variable en la que se realiza un seguimiento del progreso del trabajo y se almacena.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-OnBehalfOfUser
Especifica un nombre de usuario. Este cmdlet funciona en nombre del usuario que especifica este parámetro.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-OnBehalfOfUserRole
Especifica un rol de usuario.
Para obtener un rol de usuario, use el cmdlet
Tipo: | UserRole |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-PROTipID
Especifica el identificador de la sugerencia Sobre rendimiento y optimización de recursos (sugerencia PRO) que desencadenó esta acción. Este parámetro le permite auditar sugerencias PRO.
Tipo: | Guid |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-RunAsynchronously
Indica que el trabajo se ejecuta de forma asincrónica para que el control vuelva al shell de comandos inmediatamente.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-SkipFileRemoval
Indica que este cmdlet no quita directamente los archivos relacionados con la máquina virtual. Si especifica este parámetro, no se intenta eliminar ningún archivo directamente.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-VM
Especifica un objeto de máquina virtual.
Tipo: | VM |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-WhatIf
Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.
Tipo: | SwitchParameter |
Alias: | wi |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Notas
Este cmdlet requiere un objeto de máquina virtual VMM, que se puede recuperar mediante el cmdlet Get-SCVirtualMachine.