Get-SCVMHostRating

Calcula a classificação de posicionamento de um ou mais hosts gerenciados pelo VMM no qual talvez você queira implantar uma máquina virtual específica.

Syntax

Get-SCVMHostRating
   [-HighlyAvailable <Boolean>]
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   -Cloud <Cloud[]>
   [-VMMServer <ServerConnection>]
   -VM <VM>
   [-VMName <String>]
   [-IsMigration]
   [-IsCloudOnlyRating]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-HighlyAvailable <Boolean>]
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -VMHost <Host[]>
   [-VMMServer <ServerConnection>]
   -VM <VM>
   [-VMName <String>]
   [-IsMigration]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-HighlyAvailable <Boolean>]
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -VMHostGroup <HostGroup[]>
   [-VMMServer <ServerConnection>]
   -VM <VM>
   [-VMName <String>]
   [-IsMigration]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -Cloud <Cloud[]>
   [-VMMServer <ServerConnection>]
   -VMConfiguration <BaseVMConfiguration>
   [-DiskSpaceGB <UInt16>]
   [-IsMigration]
   [-IsCloudOnlyRating]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -VMHost <Host[]>
   [-VMMServer <ServerConnection>]
   -HardwareProfile <HardwareProfile>
   -DiskSpaceGB <UInt16>
   -VMName <String>
   [-IsMigration]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-LUNCountRequirement <UInt32>]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-JobGroup <Guid>]
   [-OperatingSystem <OperatingSystem>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -VMHostGroup <HostGroup[]>
   [-VMMServer <ServerConnection>]
   -HardwareProfile <HardwareProfile>
   -DiskSpaceGB <UInt16>
   -VMName <String>
   [-IsMigration]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-LUNCountRequirement <UInt32>]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-JobGroup <Guid>]
   [-OperatingSystem <OperatingSystem>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -Cloud <Cloud[]>
   [-VMMServer <ServerConnection>]
   -HardwareProfile <HardwareProfile>
   -DiskSpaceGB <UInt16>
   -VMName <String>
   [-IsMigration]
   [-IsCloudOnlyRating]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-LUNCountRequirement <UInt32>]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-JobGroup <Guid>]
   [-OperatingSystem <OperatingSystem>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -VMHost <Host[]>
   [-VMMServer <ServerConnection>]
   -VMTemplate <Template>
   -DiskSpaceGB <UInt16>
   -VMName <String>
   [-IsMigration]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -VMHostGroup <HostGroup[]>
   [-VMMServer <ServerConnection>]
   -VMTemplate <Template>
   -DiskSpaceGB <UInt16>
   -VMName <String>
   [-IsMigration]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -Cloud <Cloud[]>
   [-VMMServer <ServerConnection>]
   -VMTemplate <Template>
   -DiskSpaceGB <UInt16>
   -VMName <String>
   [-IsMigration]
   [-IsCloudOnlyRating]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -VMHost <Host[]>
   [-VMMServer <ServerConnection>]
   -VMConfiguration <BaseVMConfiguration>
   [-DiskSpaceGB <UInt16>]
   [-IsMigration]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]
Get-SCVMHostRating
   [-RequireGuardedHost <Boolean>]
   [-CPUPriority <UInt16>]
   [-DiskPriority <UInt16>]
   [-MemoryPriority <UInt16>]
   [-NetworkPriority <UInt16>]
   [-PlacementGoal <EnginePlacementGoals>]
   [-ReplicationGroup <ReplicationGroup>]
   -VMHostGroup <HostGroup[]>
   [-VMMServer <ServerConnection>]
   -VMConfiguration <BaseVMConfiguration>
   [-DiskSpaceGB <UInt16>]
   [-IsMigration]
   [-CPUExpectedUtilizationPercent <UInt16>]
   [-NetworkUtilizationExpectedMbps <Int32>]
   [-DiskIOExpectedCountPerSecond <Int32>]
   [-UseDefaultPath]
   [-VirtualizationPlatform <VirtualizationPlatform>]
   [-RunAsynchronously]
   [-DiscoveryID <Guid>]
   [-JobVariable <String>]
   [-ReturnFirstSuitableHost]
   [<CommonParameters>]

Description

O cmdlet Get-SCVMHostRating calcula a classificação de posicionamento de um ou mais hosts gerenciados pelo VMM (Virtual Machine Manager), no qual talvez você queira implantar uma máquina virtual específica.

A classificação indica a adequação de um computador para servir como um host para uma máquina virtual que requer uma configuração de hardware específica. A classificação pode ser computada por host individual, para uma matriz de hosts ou para cada host que pertence a um grupo de hosts ou conjunto específico de grupos de hosts.

Quando você executa o cmdlet Get-SCVMHostRating , o VMM retorna um objeto SCVMHostRating para cada um dos hosts especificados com base na configuração de hardware desejada na máquina virtual. Você também pode especificar opções de posicionamento adicionais para modificar a forma como as classificações são calculadas.

Se você fornecer vários objetos host ou uma matriz de objetos host para Get-SCVMHostRating, o VMM coletará informações sobre os objetos host do banco de dados do VMM. Para produzir uma classificação de host, o VMM compara o estado em execução da máquina virtual com as informações do banco de dados. Essa operação não garante a compatibilidade de migração da máquina virtual com um host de destino.

Se você fornecer um único objeto host que esteja executando o Windows Server 2008 R2 ou posterior, VMware ou Citrix XenServer para Get-VMHostRating, o cmdlet executará uma validação direta do estado em execução da máquina virtual em relação ao host de destino. A execução de uma validação direta garante a compatibilidade de migração da máquina virtual. Ao executar a validação direta, o comando pode levar vários segundos para ser concluído.

Exemplos

Exemplo 1: Calcular classificações de host para um servidor específico como um host possível para uma máquina virtual existente

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $VMHost = Get-SCVMHost -ComputerName "VMHost02.Contoso.com" 
PS C:\> $HostRating = Get-SCVMHostRating -VM $VM -VMHost $VMHost
PS C:\> $HostRating

O primeiro comando obtém o objeto de máquina virtual chamado VM01 e armazena o objeto na variável $VM.

O segundo comando obtém o objeto host chamado VMHost02 e armazena o objeto na variável $VMHost.

O terceiro comando retorna a classificação de posicionamento para VMHost02 que indica sua adequação como um host para VM01 e armazena as informações de classificação na variável $HostRating.

O último comando exibe as classificações de host armazenadas em $HostRating para o usuário.

Observação: como o exemplo fornece um único objeto host para Get-SCVMHostRating, se o host estiver executando o Windows Server 2008 R2 ou posterior, vmware ou XenServer, ele executará uma validação direta do estado em execução da máquina virtual em relação ao host de destino para garantir a compatibilidade de migração da máquina virtual.

Exemplo 2: Calcular classificações de host para cada servidor em um grupo de hosts como um possível host para uma máquina virtual existente

PS C:\> $VM = Get-SCVirtualMachine -Name "VM02"
PS C:\> $VMHostGroup = Get-SCVMHostGroup -Name "HostGroup02" 
PS C:\> $HostRatings = Get-SCVMHostRating -VM $VM -VMHostGroup $VMHostGroup
PS C:\> $HostRatings

O primeiro comando obtém o objeto de máquina virtual chamado VM02 e armazena o objeto na variável $VM.

O segundo comando obtém o objeto do grupo de hosts que nomeou HostGroup02 e armazena o objeto na variável $VMHostGroup.

O terceiro comando retorna as classificações de posicionamento para todos os hosts no grupo de hosts especificado e indica a adequação de cada host nesse grupo de hosts como um host para VM02. O comando armazena as informações de classificação em $HostRatings.

O último comando exibe as classificações de host armazenadas em $HostRating para o usuário.

Observação: como o exemplo anterior fornece vários objetos host para Get-SCVMHostRating, ele não executa uma validação direta da máquina virtual em relação aos hosts para produzir classificações de host. Para garantir a compatibilidade de migração, você deve executar uma validação direta executando o cmdlet Get-SCVMHostRating em cada host de destino em potencial individualmente.

Exemplo 3: Calcular classificações de host para cada servidor em um grupo de hosts como um possível host para uma nova máquina virtual

PS C:\> $VMHostGroup = Get-SCVMHostGroup -Name "HostGroup03"
PS C:\> $HWProfile = Get-SCHardwareProfile | where {$_.Name -eq "HWProfile01"}
PS C:\> $HostRatings = Get-SCVMHostRating -VMHostGroup $VMHostGroup -HardwareProfile $HWProfile -DiskSpaceGB 20 -VMName "VM03" -CPUPriority 8 -MemoryPriority 5 -DiskPriority 3 -NetworkPriority 1 
PS C:\> $HostRatings

O primeiro comando obtém o objeto do grupo de hosts chamado HostGroup03 e armazena o objeto na variável $VMHostGroup.

O segundo comando obtém o objeto de perfil de hardware chamado HWProfile01 e armazena o objeto na variável $HWProfile.

O terceiro comando retorna as classificações de posicionamento para todos os hosts no grupo de hosts especificado para uma nova máquina virtual e armazena as classificações de posicionamento em $HostRatings. Antes de determinar as classificações de host, esse comando modifica as prioridades de vários fatores usando os seguintes parâmetros para especificar esses valores: DiskSpaceGB, CPUPriority, MemoryPriority, DiskPriority e NetworkPriority. Consulte as descrições de parâmetro individuais para obter informações adicionais.

O último comando exibe as classificações de host armazenadas em $HostRatings para o usuário.

Observação: como o exemplo anterior fornece vários objetos host para Get-SCVMHostRating, ele não executa uma validação direta da máquina virtual em relação aos hosts para produzir classificações de host. Para garantir a compatibilidade de migração, você deve executar uma validação direta executando o cmdlet Get-SCVMHostRating em cada host de destino em potencial individualmente.

Exemplo 4: Calcular classificações de host para cada host em uma matriz como um host possível para uma nova máquina virtual

PS C:\> $OS = Get-SCOperatingSystem | where {$_.Name -eq "64-bit edition of Windows Server 2008 R2 Standard"}
PS C:\> $JobGroupID = [guid]::NewGuid()
PS C:\> New-SCVirtualDiskDrive -SCSI -Fixed -Bus 0 -Lun 2 -Size 10 -JobGroup $JobGroupID -FileName "TestDiskDrive"
PS C:\> $VMHosts = Get-SCVMHost 
PS C:\> $HWProfile = Get-SCHardwareProfile | where { $_.Name -eq "HWProfile01" }
PS C:\> $HostRatings = Get-SCVMHostRating  -DiskSpaceGB 10 -HardwareProfile $HWProfile -VMHost $VMHosts -VMName "VM04" -OperatingSystem $OS -JobGroup $JobGroupID 
PS C:\> $HostRatings

O primeiro comando obtém o objeto do sistema operacional que representa uma edição de 64 bits do Windows Server 2008 R2 Standard e armazena o objeto na variável $OS.

O segundo comando gera um GUID e armazena o GUID no $JobGroupID. A ID do grupo de trabalho funciona como um identificador que agrupa os comandos subsequentes em um único grupo de trabalho.

O terceiro comando cria uma nova unidade de disco virtual com as propriedades especificadas, mas usa a ID do grupo de trabalho para especificar que a unidade de disco virtual não é criada até pouco antes do cmdlet Get-SCVMHostRating nas últimas execuções de comando.

O quarto e quinto comandos recuperam uma matriz de objetos host e um objeto de perfil de hardware específico para passar para o cmdlet Get-VMHostRating no próximo comando.

O sexto comando retorna as classificações de posicionamento para todos os hosts na lista de hosts especificada e indica a adequação de cada host nessa lista para a nova máquina virtual com as características especificadas. O comando armazena as informações de classificação em $HostRatings.

Antes que o cmdlet Get-SCVMHostRating retorne as classificações de host, o comando usa o parâmetro JobGroup para executar o comando New-SCVirtualDiskDrive do terceiro comando para que o cmdlet Get-SCVMHostRating inclua a unidade de disco virtual e suas configurações ao calcular classificações de posicionamento.

O último comando exibe as classificações de host armazenadas em $HostRatings para o usuário.

Observação: como o exemplo anterior fornece uma matriz de objetos host para Get-SCVMHostRating, ele não executa uma validação direta da máquina virtual em relação aos hosts para produzir classificações de host. Para garantir a compatibilidade de migração, você deve executar uma validação direta executando o cmdlet Get-VMHostRating em cada host de destino em potencial individualmente.

Exemplo 5: Calcular classificações de host para um servidor de gerenciamento do VMM específico como um possível host para uma máquina virtual existente

PS C:\> $VM = Get-SCVirtualMachine -Name "VM05"
PS C:\> $VMHost = Get-SCVMHost -ComputerName "VMHost05.Contoso.com" 
PS C:\> $HostRating = Get-SCVMHostRating -VM $VM -VMHost $VMHost -CPUPriority 6 -DiskPriority 5 -MemoryPriority 4 -NetworkPriority 4 -PlacementGoal "Consolidate" 
PS C:\> $HostRating

O primeiro comando obtém o objeto de máquina virtual chamado VM05 e armazena o objeto na variável $VM.

O segundo comando obtém o objeto host chamado VMHost05 e armazena o objeto na variável $VMHost.

O terceiro comando retorna a classificação de posicionamento para VMHost05, que indica sua adequação como um host para VM05 com base em um determinado conjunto de classificações de prioridade personalizadas e com base na consolidação como a meta de posicionamento (em oposição ao padrão, balanceamento de carga). O comando armazena as informações de classificação em $HostRating.

O último comando exibe a classificação de host armazenada em $HostRating para o usuário.

Observação: como o exemplo anterior fornece um único objeto host para Get-VMHostRating, se o host estiver executando o Windows Server 2008 R2 ou posterior, o VMware ou o XenServer, ele executará uma validação direta do estado em execução da máquina virtual no host de destino para garantir a compatibilidade de migração da máquina virtual.

Exemplo 6: Calcular classificações de host para uma nova máquina virtual com base em um modelo de máquina virtual específico

PS C:\> $VMTemplate = Get-SCVMTemplate | where {$_.Name -eq "VMTemplate01"}
PS C:\> $VMHost = Get-SCVMHost -ComputerName "VMHost01.Contoso.com" 
PS C:\> $HostRating = Get-SCVMHostRating -DiskSpaceGB 5 -VMTemplate $VMTemplate -VMHost $VMHost -VMName "VM06"
PS C:\> $HostRating

O primeiro comando obtém o objeto de modelo de máquina virtual chamado VMTemplate01 e armazena o objeto na variável $VMTemplate.

O segundo comando obtém o objeto host chamado VMHost01 e armazena o objeto na variável $VMHost.

O terceiro comando retorna as classificações de posicionamento de uma nova máquina virtual se ela foi criada usando VMTemplate01 e se ela deve ser colocada no VMHost01 do host. O comando armazena as classificações em $HostRating.

O último comando exibe as classificações de host armazenadas em $HostRating para o usuário.

Observação: o parâmetro DiskSpaceGB é necessário mesmo que o modelo já tenha um disco rígido virtual com uma quantidade especificada de espaço em disco. Exigir o parâmetro DiskSpaceGB garante que uma determinada quantidade mínima de espaço em disco rígido esteja disponível no host que pode ser usado pela máquina virtual. Se a quantidade de espaço especificada para o disco rígido virtual no modelo for maior do que o tamanho especificado usando o parâmetro DiskSpaceGB , o maior dos dois tamanhos será levado em consideração ao calcular as classificações de host.

Observação: como o exemplo anterior fornece um único objeto host para Get-VMHostRating, se o host estiver executando o Windows Server 2008 R2 ou posterior, o VMware ou o XenServer, ele executará uma validação direta do estado em execução da máquina virtual no host de destino para garantir a compatibilidade de migração da máquina virtual.

Exemplo 7: Calcular classificações de host para um host específico como um host possível para todas as máquinas virtuais

PS C:\> $VMHost = Get-SCVMHost -ComputerName "VMHost02.Contoso.com" 
PS C:\> $VMs = Get-SCVirtualMachine
PS C:\> $RatingArray = @( ForEach ($VM in $VMs) {Get-VMHostRating -VM $VM -VMHost $VMHost} )
PS C:\> $RatingArray

O primeiro comando obtém o objeto host que nomeou VMHost02 e armazena o objeto host na variável $VMHost.

O segundo comando obtém todos os objetos de máquinas virtuais em seu ambiente e salva esses objetos na matriz de objetos $VMs. Se o ambiente tiver um número muito grande de máquinas virtuais, talvez você queira usar um filtro para selecionar um subconjunto de máquinas virtuais.

O terceiro comando retorna as classificações de posicionamento para VMHost02 que indicam sua adequação como um host para cada um dos objetos de máquina virtual em $VMs e armazena as informações de classificação em $RatingArray. Para obter mais informações sobre a instrução loop Windows PowerShell ForEach, digite Get-Help about_ForEach.

O último comando exibe as classificações armazenadas em $RatingArray para o usuário.

Observação: este exemplo calcula as classificações para cada máquina virtual individualmente em um host. Se você quiser colocar várias máquinas virtuais em um host, crie um perfil de hardware temporário com as demandas de recursos agregados e passe-o para Get-SCVMHostRating.

Observação: como o exemplo anterior fornece um único objeto host para Get-VMHostRating, se o host estiver executando o Windows Server 2008 R2 ou posterior, o VMware ou o XenServer, ele executará uma validação direta do estado em execução da máquina virtual no host de destino para garantir a compatibilidade de migração da máquina virtual.

Parâmetros

-Cloud

Especifica uma matriz de objetos de nuvem privada.

Type:Cloud[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CPUExpectedUtilizationPercent

Especifica a porcentagem de CPU no host que você espera que essa máquina virtual use. Esse valor é usado somente quando o VMM determina um host adequado para a máquina virtual.

Type:UInt16
Aliases:ExpectedCPUUtilization
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CPUPriority

Especifica a importância relativa da utilização da CPU para uma máquina virtual em um host. Para tornar a utilização da CPU uma prioridade mais alta em relação a outros fatores (como desempenho de E/S do disco, utilização de memória e utilização de rede), defina esse valor como um número maior. Valores válidos: 0 a 10. Valor padrão: 5.

Type:UInt16
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiscoveryID

Somente para uso interno (não para uso em seu código).

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiskIOExpectedCountPerSecond

Especifica o número de operações de entrada/saída de disco por segundo (IOPS) que você espera que essa máquina virtual use.

Formato de exemplo: -DiskIO 1500 (para especificar 1500 IOPS)

Type:Int32
Aliases:ExpectedDiskIO
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiskPriority

Especifica a importância relativa do desempenho de E/S (entrada/saída) de disco para uma máquina virtual em um host. Para tornar o desempenho de E/S do disco uma prioridade mais alta em relação a outros fatores (como utilização da CPU, utilização de memória e utilização de rede), defina esse valor como um número maior. Valores válidos: 0 a 10. Valor padrão: 2.

Type:UInt16
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiskSpaceGB

Especifica a quantidade de espaço em disco rígido, em gigabytes (GB), no host que pode ser usado por uma máquina virtual específica.

Exemplo: -DiskSpaceGB 20 (para especificar 20 GB de espaço em disco)

Type:UInt16
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-HardwareProfile

Especifica um objeto de perfil de hardware.

Type:HardwareProfile
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-HighlyAvailable

Especifica se uma máquina virtual deve ser colocada em um host Hyper-V que faz parte de um cluster de host. Configure essa configuração em uma máquina virtual ou em um modelo ou perfil de hardware usado para criar máquinas virtuais.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IsCloudOnlyRating

Indica que a classificação só se aplica a uma nuvem privada.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IsMigration

Indica que uma classificação que indica a adequação de um computador como um host para o qual mover uma máquina virtual será calculada mesmo se o host de origem e destino for o mesmo computador.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-JobGroup

Especifica um identificador para uma série de comandos que serão executados como um conjunto pouco antes do comando final que inclui o mesmo identificador de grupo de trabalho executado.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-JobVariable

Especifica que o andamento do trabalho é controlado e armazenado na variável nomeada por esse parâmetro.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LUNCountRequirement

Especifica o número de LUNs exigidos por uma máquina virtual ao avaliar quais computadores são hosts adequados para implantar essa máquina virtual.

Type:UInt32
Aliases:RequiredLunCount
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MemoryPriority

Especifica a importância relativa da utilização da memória por uma máquina virtual em um host. Para tornar a utilização da memória uma prioridade maior em relação a outros fatores (como utilização de CPU, desempenho de E/S de disco e utilização de rede), defina esse valor como um número maior. Valores válidos: 0 a 10. Valor padrão: 8.

Type:UInt16
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NetworkPriority

Especifica a importância relativa da utilização de rede por uma máquina virtual em um host. Para tornar a utilização de rede uma prioridade maior em relação a outros fatores (como utilização de CPU, desempenho de E/S de disco e utilização de memória), defina esse valor como um número maior. Valores válidos: 0 a 10. Valor padrão: 2.

Type:UInt16
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NetworkUtilizationExpectedMbps

Especifica a quantidade de tráfego, em megabits por segundo (Mbps), na rede do host físico que você espera que essa máquina virtual use.

Type:Int32
Aliases:ExpectedNetworkUtilization
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OperatingSystem

Especifica o tipo de sistema operacional de uma máquina virtual. Para listar os nomes de todos os sistemas operacionais disponíveis no VMM, digite Get-SCOperatingSystem.

Type:OperatingSystem
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PlacementGoal

Especifica o algoritmo de posicionamento a ser usado quando o VMM seleciona o host mais adequado no qual implantar uma máquina virtual. Os valores aceitáveis para esse parâmetro são: LoadBalance, Consolidate.

O balanceamento de carga entre hosts permite que o VMM minimize a carga de processamento em qualquer host. A consolidação permite que o VMM maximize os recursos combinando várias cargas de trabalho de baixa utilização em um único host.

Type:EnginePlacementGoals
Accepted values:LoadBalance, Consolidate
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ReplicationGroup

Especifica um grupo de replicação.

Type:ReplicationGroup
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequireGuardedHost

Especifica que a máquina virtual precisa ser colocada em um host protegido.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ReturnFirstSuitableHost

Indica, quando usado em conjunto com Get-SCVMHostRating ou Update-SCServiceConfiguration, que o mecanismo de Posicionamento Inteligente retorna o primeiro host adequado por máquina virtual a ser colocado e interrompe o posicionamento de processamento para essa máquina virtual.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

Indica que o trabalho é executado de forma assíncrona para que o controle retorne imediatamente ao shell de comando.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseDefaultPath

Especifica que somente os volumes para os quais um caminho padrão foi definido no host são avaliados como possíveis candidatos para o posicionamento da máquina virtual. Se você omitir esse parâmetro ou se nenhum caminho padrão estiver definido no host, todos os volumes serão avaliados pelo processo de posicionamento.

Type:SwitchParameter
Aliases:UseDefaultPaths
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VirtualizationPlatform

Especifica a plataforma de virtualização de um host de máquina virtual gerenciado pelo VMM. Os valores aceitáveis para esse parâmetro são:

  • HyperV
  • VMwareESX
  • Xenserver
Type:VirtualizationPlatform
Accepted values:Unknown, VirtualServer, HyperV, VMWareVC, VMWareESX, XENServer
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VM

Especifica um objeto de máquina virtual.

Type:VM
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMConfiguration

Especifica um objeto de configuração de máquina virtual.

Type:BaseVMConfiguration
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMHost

Especifica uma matriz de objetos de host de máquina virtual.

Type:Host[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMHostGroup

Especifica um objeto de grupo de host de máquina virtual ou uma matriz de objetos de grupo de host.

Type:HostGroup[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMMServer

Especifica um objeto de servidor do VMM.

Type:ServerConnection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VMName

Especifica o nome de uma máquina virtual a ser colocada em um servidor host físico. Use esse parâmetro para verificar se outra máquina virtual com o mesmo nome ainda não está implantada nesse host.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-VMTemplate

Especifica um objeto de modelo do VMM usado para criar máquinas virtuais.

Type:Template
Aliases:Template
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

Saídas

VMHostRating

Esse cmdlet retorna um objeto VMHostRating .