56 lines
2.6 KiB
PowerShell
56 lines
2.6 KiB
PowerShell
$VMHostNames = @"
|
|
itdbisvm-gen05.nd.gov
|
|
"@
|
|
$VMHostNames = ConvertTo-Array -MultiLineString $VMHostNames
|
|
|
|
# set maintenance and disable alarms
|
|
Get-VMHost -Name $VMHostNames | Set-VMHost -State "Maintenance" -RunAsync
|
|
ForEach ($VMHostName in $VMHostNames) {
|
|
$GetVMHost = Get-VMHost -Name $VMHostname
|
|
$VIServer = $GetVMHost.Uid.Split('@')[1].Split(':')[0]
|
|
$alarmMgr = Get-View AlarmManager -Server $VIServer
|
|
$alarmEnabled = $GetVMHost.ExtensionData.AlarmActionsEnabled
|
|
if ($alarmEnabled -eq $true) {
|
|
$alarmMgr.EnableAlarmActions($GetVMHost.ExtensionData.MoRef, $false)
|
|
}
|
|
}
|
|
|
|
#Create Management Switch And Move Adapter
|
|
ForEach ($VMHostName in $VMHostNames) {
|
|
$vmnic0 = Get-VMHostNetworkAdapter -VMHost $VMHostName -Name "vmnic0"
|
|
$vmk0 = Get-VMHost $VMHostName | Get-VMHostNetworkAdapter -Name vmk0
|
|
New-VirtualSwitch -VMHost $VMHostName -Name "sSwitch-MGMT"
|
|
Get-VirtualSwitch -VMHost $VMHostName -Name "sSwitch-MGMT" | New-VirtualPortGroup -Name "sPG-MGMT"
|
|
$MGMTPG = Get-VirtualSwitch -VMHost $VMHostName -Name "sSwitch-MGMT" | Get-VirtualPortGroup -Name "sPG-MGMT"
|
|
$MGMTSwitch = Get-VirtualSwitch -VMHost $VMHostName -Name "sSwitch-MGMT"
|
|
Add-VirtualSwitchPhysicalNetworkAdapter -VMHostPhysicalNic $vmnic0 -VirtualSwitch $MGMTSwitch -Confirm:$false
|
|
Add-VirtualSwitchPhysicalNetworkAdapter -VMHostPhysicalNic $vmnic0 -VirtualSwitch $MGMTSwitch -VirtualNicPortgroup $MGMTPG -VMHostVirtualNic $vmk0 -Confirm:$false
|
|
}
|
|
|
|
# remove vmk1 and vmk2
|
|
ForEach ($VMHostName in $VMHostNames) {
|
|
Get-VMHost -Name $VMHostName | Get-VMHostNetworkAdapter -Name vmk1, vmk2 | Remove-VMHostNetworkAdapter -Confirm:$false
|
|
}
|
|
|
|
# remove distributed switches
|
|
$BackupVDSwitch = Get-VDSwitch -Name 'dvSwitch-SDC-Backup'
|
|
$DataVDSwitch = Get-VDSwitch -Name 'dvSwitch-SDC-Data-Server'
|
|
$vMotionVDSwitch = Get-VDSwitch -Name 'dvSwitch-SDC-VMotion'
|
|
$MgmtVDSwitch = Get-VDSwitch -Name 'dvSwitch-SDC-MGMT'
|
|
ForEach ($VMHostName in $VMHostNames) {
|
|
Remove-VDSwitchVMHost -VDSwitch $BackupVDSwitch -VMHost $VMHostName -Confirm:$false
|
|
Remove-VDSwitchVMHost -VDSwitch $DataVDSwitch -VMHost $VMHostName -Confirm:$false
|
|
Remove-VDSwitchVMHost -VDSwitch $vMotionVDSwitch -VMHost $VMHostName -Confirm:$false
|
|
Remove-VDSwitchVMHost -VDSwitch $MgmtVDSwitch -VMHost $VMHostName -Confirm:$false
|
|
}
|
|
# remove from inventory
|
|
ForEach ($VMHostName in $VMHostNames) {
|
|
Get-VMHost -Name $VMHostName | Remove-VMHost -Confirm:$false
|
|
}
|
|
|
|
# scrub DNS
|
|
# scrub Passwordstate
|
|
# scrub Active Directory
|
|
|
|
# send storage team request to remove SAN
|
|
# send cohesity team request to remove host mappings for backup vmkernels |