Documente Academic
Documente Profesional
Documente Cultură
csv"
$vmsnapin = Get-PSSnapin VMware.VimAutomation.Core -ErrorAction
SilentlyContinue
$Error.Clear()
if ($vmsnapin -eq $null)
{
Add-PSSnapin VMware.VimAutomation.Core
if ($error.Count -eq 0)
{
write-host "PowerCLI VimAutomation.Core Snap-in was successfully
enabled." -ForegroundColor Green
}
else
{
write-host "ERROR: Could not enable PowerCLI VimAutomation.Core
Snap-in, exiting script" -ForegroundColor Red
Exit
}
}
else
{
Write-Host "PowerCLI VimAutomation.Core Snap-in is already enabled"
-ForegroundColor Green
}
Set-OSCustomizationNicMapping
-OSCustomizationNicMapping ($cloned_oscust | Get-OscustomizationNicMapping)
-Position 1 -IpMode UseStaticIp -IpAddress $vm.ip -SubnetMask $vm.mask
-DefaultGateway $vm.gw -Dns $vm.dns1,$vm.dns2 | Out-Null
write-Host "Deploying VM $($vm.name) to datastore cluster $
($vm.datastore)"
new-vm -name $vm.name -template $(get-template
-name $vm.template) -vmhost $vmhost -oscustomizationspec $cloned_oscust
-datastore $(get-datastorecluster -name $vm.datastore-cluster) -location $(getfolder -name $vm.folder) | Out-Null
}
do {
$toolsStatus = (Get-VM -name
$vm.name).extensiondata.Guest.ToolsStatus
Start-Sleep 3
$loop_control++
} until ( ($toolsStatus -match toolsOk) -or ($loop_control -gt
$timeout) )
NewVAppName$EHC_vApps.nameDatastore$EHC_vApps.datastoreLocation
$EHC_vApps.clusterVApp$EHC_vApps.template
$CSVfile="c:\admin\scripts\ehc_vapps.csv"
SetPowerCLIConfigurationInvalidCertificateActionIgnoreConfirm:$false|Out
Null
$EHC_vApps=ImportCsvPath$CSVfile
ForEach($EHC_vAppin$EHC_vApps)
{
NewVAppName$EHC_vApp.nameDatastore$EHC_vApp.datastoreLocation
$EHC_vApp.clusterVApp$EHC_vApp.template
#GetlistofvAppVMstosetnetworkcard
$vApp_vms=GetVApp$EHC_vApp.name|GetVM
ForEach($vApp_vmin$vApp_vms)
{
GetVMLocation$EHC_vApp.name$vApp_vm|GetNetworkAdapter|SetNetworkAdapter
Portgroup$EHC_vApp.portgroupConfirm:$false
}
#MovevApptoStudentPodfolder
MoveVAppDestination$EHC_vApp.folderVApp$EHC_vApp.name
}