Monitorando Máquinas Virtuais

Resource Metering é uma das novas features do Windows Server 2012. Sua função é monitorar máquinas virtuais (VMs) quanto ao uso de CPU, Memória, espaço em disco e rede.
Sete métricas podem ser coletadas por este recurso:
• Uso médio de CPU por uma VM;
• Uso médio de Memória por uma VM;
• Mínimo de Memória usada por uma VM;
• Máximo de Memória usada por uma VM;
• Máximo de espaço em disco alocado para uma VM;
• Tráfego total de entrada por um adaptador de rede virtual;
• Tráfego total de saída por um adaptador de rede virtual;

Para habilitar o Resource Metering em uma VM (neste caso chamada FTP01) basta digitar no host Hyper-V dessa VM:

Enable-VMResourcemetering –VMName FTP01

0501

Quando este comando é dado para uma VM os contadores começam a rodar. Para mostrar o resultado, basta rodar o seguinte comando:

Measure-VM –Vmname FTP01 ou ainda Measure-VM –Vmname FTP01 | fl

0502

Para demonstrar o tráfego de entrada copiei um arquivo para dentro da VM, pela imagem abaixo é possível ver o tráfego (em magabytes) aumentando.

0503

É interessante dizer que as estatísticas perduram mesmo que a VM seja reiniciada ou desligada. Mesmo se ocorrer um Live Migration ou Storage Migration as estatiscas não são perdidas.

Para resetar as estatísticas deve ser usado o comando:
Reset-VMResourceMetering –VMName FTP01

Para parar a coleta de estatísticas basta dar o comando:
Disable-VMResourcemetering –VMName FTP01

Outra coisa interessante é rodar este comando de um servidor remoto. Do servidor B09 para pegar as estatíscas da VM FTP01 no servidor B10 basta digitar:
Measure-VM –Computername B10 –vmname FTP01

Para saber, dentro de um host Hyper-V, quais VMs estão com os contadores ativados, basta dar o seguinte comando:
Get-VM | format-list name,resourcemeteringenabled

Para salvar as estatísticas da VM FTP01 em um arquivo CSV podemos usar os seguintes comandos:
$repVM = get-vm ftp01 | measure-vm
$repVM | Export-Csv -NoTypeInformation -Path c:\reports\report-ftp01.csv

Para finalizar, também é possível criar um pool de monitoramento juntando várias VMs.
Para ver as estatísticas de uso de memórias de duas VMs devemos fazer o seguinte:

Get-VMResourcePool – Este comando vai mostrar os pools disponíveis.
New-VMResourcePool –Name MemoryPool1 –ResourcePoolType Memory – Este comando vai criar um novo pool de memória chamado MemoryPool1.
Get-VM -name FTP01,TST_01 | Stop-VM – Este comando vai desligar as VMs FTP01 e TST_01 que servirão para mostrar o uso do pool. Elas precisam estar desligadas para o próximo comando.
Set-VMMemory -VMName FTP01,TST_01 – ResourcePoolName MemoryPool1 – Seta as duas VMs para usarem o Pool MemoryPool1, recém criado.
Enable-VMResourcemetering -VMName FTP01,TST_01 – Habilita a coleta de estatísticas das duas VMs.
Get-VM -name FTP01,TST_01 | Start-VM – inicia as VMs.
Measure-VMResourcePool –Name MemoryPool1 – Mostra as estatísticas, neste caso de memória e das duas VMs.

Esses comandos podem ser conferidos na figura abaixo:

0504

Até a próxima!!

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s