Import-Module VMware.VimAutomation.Core

Connect-VIServer

$VMs = Get-Content C:\Temp\VM_list.dat

$num=0

function startvm{
    Start-VM -VM $VM -Confirm:$false -RunAsync
    }

function restartvm{
    Restart-VMGuest -VM $VM -Confirm:$false -
    }

function shutdownvm{
    Stop-VMGuest -VM $VM -Confirm:$false 
    }

$Job = Read-Host -Prompt "Select Job
1. Start-VM
2. Restart-VM
3. Shutdown-VM"  


ForEach ($VM in $VMs) {

    $num=$num+1
    $mod=$num%50
    Write-Host $num "/" $VMs.Count "/" "Mod=" $mod "/" $VM

    Switch($Job){
        1 {startvm}
        2 {restartvm}
        3 {shutdownvm}
        }

    if($mod -eq 1){
        sleep 10
        }
}

사용자 VM 끌 때 걍 수동으로 했었는데

작업 한 번 할 때마다 너무 구찮아서

1. PowerOn

2. Rebooting

3. Shutdown

으로 번호만 눌러서 전체 VM 전원 설정하게 했다. 

 

Bootstorm 을 우려해서 sleep으로 딜레이를 조정할 수 있게 넣었고

사이트 서버 스펙에 따라 조정해야겠지. 

 

좀 덜 귀찮게 해보자...

반응형

+ Recent posts