$array = "HostName1","HostName2" #etc. As many as you'd like.
Foreach ($h in $array) {
$VMManagementService = Get-WmiObject -ComputerName $h -Namespace root\virtualization -Class Msvm_VirtualSystemManagementService
$SourceVm = Get-WmiObject -computername $h -Namespace root\virtualization -Query “Select * From Msvm_ComputerSystem"
Foreach ($i in $SourceVm)
{$VMManagementService.CreateVirtualSystemSnapshot($i)
}
}