Compartir a través de


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 le pide que confirme si desea eliminar cada una de estas máquinas virtuales.

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 Get-SCUserRole. Este cmdlet funciona en nombre del rol de usuario que especifica este parámetro.

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.