Script do PowerShell para reinicialização da máquina virtual Hyper-V. Em nossa empresa, usamos infraestrutura VDI com pools de máquinas virtuais trabalhando no Windows Server Hyper-V 2012 R2. Porque temos muitos GPO, que mudou rapidamente e foi aplicado à estação de trabalho, precisamos reiniciar as máquinas ocasionalmente. Mas as máquinas não usadas foram para salvar o estado se não estiverem usando cerca de 10 minutos. Então decidimos escrever este script para “reiniciar máquinas” à noite e criar uma tarefa no agendador do Windows. Como nós temos 4 piscinas que criamos 4 scripts para pools de VMs e 4 tarefas, que funcionam à noite com intervalos de 2 horas.
Como:
Como salvamos máquinas não usadas, não podemos reiniciá-las, então nós executamos – desligar – executar – salvar. Talvez esteja em algum lugar errado, mas é um trabalho. Isto é o Windows PowerShell roteiro:
$VMs = Get-VM 21V-PUBL01-*
Foreach ($VM in $VMs)
{
Start-VM $vm
timeout 60
Stop-VM $vm -passthru
timeout 60
Start-VM $vm
timeout 60
Save-VM $vm
}