-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy path1001.ps1
More file actions
38 lines (25 loc) · 1.11 KB
/
1001.ps1
File metadata and controls
38 lines (25 loc) · 1.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Add-PSSnapin "VMware.VimAutomation.Core"
Add-PSSnapIn "VMware.VumAutomation"
# Connect to vCenter
$VC = Connect-VIServer (Read-Host "Enter vCenter server")
$vumConfig = Get-VumConfig
$EsxHost = Get-Inventory -Name (Read-Host "Enter ESX Host")
$CriticalHost = Get-Baseline -Name "Critical Host Updates"
$NonCriticalHost = Get-Baseline -Name "Non-critical Host Updates"
# Enter Maintenance mode
Set-VMHost $EsxHost -State Maintenance
# Attach baseline
Attach-Baseline -Entity $EsxHost -Baseline $CriticalHost, $NonCriticalHost
# Check Compliance
$ScanTask = Scan-Inventory $EsxHost -RunAsync
Wait-Task -Task $ScanTask
Get-Compliance -Entity $EsxHost
# Remediate the ESX Host
$RemediateTask = Remediate-Inventory -Entity $EsxHost -Baseline $CriticalHost, $NonCriticalHost -HostFailureAction $vumConfig.HostFailureAction -Confirm:$false
Wait-Task -Task $RemediateTask
# Detach Baseline
Detach-Baseline -Baseline $CriticalHost, $NonCriticalHost -Entity $EsxHost
# Exit Mantenance mode
Set-VMHost $EsxHost -State Connected
# Disconnect from vCenter
Disconnect-VIServer -Confirm:$False