VMware Cloud Community
E4F
Contributor
Contributor
Jump to solution

New-Cluster Question

Is it possible to script creating a cluster that sets the following?

Check HA and DRS

Un-Check Enable Host Monitoring

Select Enable EVC for Intel Hosts

Select Intel Xeon Core i7 from the drop down

Reply
0 Kudos
1 Solution

Accepted Solutions
RvdNieuwendijk
Leadership
Leadership
Jump to solution

Creating a cluster, checking HA and DRS and un-checking "Enable Host Monitoring" can be done with:

$Cluster = New-Cluster -Location $Folder -Name TestCluster -HAEnabled -DRSEnabled -DrsAutomationLevel FullyAutomated

# ------- ReconfigureComputeResource_Task -------

$spec = New-Object VMware.Vim.ClusterConfigSpecEx
$spec.vmSwapPlacement = "vmDirectory"
$spec.dasConfig = New-Object VMware.Vim.ClusterDasConfigInfo
$spec.dasConfig.vmMonitoring = "vmMonitoringDisabled"
$spec.dasConfig.hostMonitoring = "disabled"
$spec.dasConfig.defaultVmSettings = New-Object VMware.Vim.ClusterDasVmSettings
$spec.dasConfig.defaultVmSettings.restartPriority = "medium"
$spec.dasConfig.defaultVmSettings.isolationResponse = "powerOff"
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings = New-Object VMware.Vim.ClusterVmToolsMonitoringSettings
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.enabled = $true
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.vmMonitoring = "vmMonitoringDisabled"
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.failureInterval = 30
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.minUpTime = 120
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.maxFailures = 3
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.maxFailureWindow = -1
$spec.drsConfig = New-Object VMware.Vim.ClusterDrsConfigInfo
$spec.drsConfig.enabled = $true
$spec.drsConfig.defaultVmBehavior = "fullyAutomated"
$spec.drsConfig.vmotionRate = 3
$spec.dpmConfig = New-Object VMware.Vim.ClusterDpmConfigInfo
$spec.dpmConfig.enabled = $false
$spec.dpmConfig.hostPowerActionRate = 3

$Cluster.ExtensionData.ReconfigureComputeResource_Task($spec, $true)

The methods 'TransitionalEVCManager' and 'CheckConfigureEVC_Task' are not available in the public API. So selecting "Enable EVC for Intel Hosts" and "Intel Xeon Core i7" can not be done without inside VMware knowledge.

Regards, Robert

Blog: https://rvdnieuwendijk.com/ | Twitter: @rvdnieuwendijk | Author of: https://www.packtpub.com/virtualization-and-cloud/learning-powercli-second-edition

View solution in original post

Reply
0 Kudos
1 Reply
RvdNieuwendijk
Leadership
Leadership
Jump to solution

Creating a cluster, checking HA and DRS and un-checking "Enable Host Monitoring" can be done with:

$Cluster = New-Cluster -Location $Folder -Name TestCluster -HAEnabled -DRSEnabled -DrsAutomationLevel FullyAutomated

# ------- ReconfigureComputeResource_Task -------

$spec = New-Object VMware.Vim.ClusterConfigSpecEx
$spec.vmSwapPlacement = "vmDirectory"
$spec.dasConfig = New-Object VMware.Vim.ClusterDasConfigInfo
$spec.dasConfig.vmMonitoring = "vmMonitoringDisabled"
$spec.dasConfig.hostMonitoring = "disabled"
$spec.dasConfig.defaultVmSettings = New-Object VMware.Vim.ClusterDasVmSettings
$spec.dasConfig.defaultVmSettings.restartPriority = "medium"
$spec.dasConfig.defaultVmSettings.isolationResponse = "powerOff"
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings = New-Object VMware.Vim.ClusterVmToolsMonitoringSettings
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.enabled = $true
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.vmMonitoring = "vmMonitoringDisabled"
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.failureInterval = 30
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.minUpTime = 120
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.maxFailures = 3
$spec.dasConfig.defaultVmSettings.vmToolsMonitoringSettings.maxFailureWindow = -1
$spec.drsConfig = New-Object VMware.Vim.ClusterDrsConfigInfo
$spec.drsConfig.enabled = $true
$spec.drsConfig.defaultVmBehavior = "fullyAutomated"
$spec.drsConfig.vmotionRate = 3
$spec.dpmConfig = New-Object VMware.Vim.ClusterDpmConfigInfo
$spec.dpmConfig.enabled = $false
$spec.dpmConfig.hostPowerActionRate = 3

$Cluster.ExtensionData.ReconfigureComputeResource_Task($spec, $true)

The methods 'TransitionalEVCManager' and 'CheckConfigureEVC_Task' are not available in the public API. So selecting "Enable EVC for Intel Hosts" and "Intel Xeon Core i7" can not be done without inside VMware knowledge.

Regards, Robert

Blog: https://rvdnieuwendijk.com/ | Twitter: @rvdnieuwendijk | Author of: https://www.packtpub.com/virtualization-and-cloud/learning-powercli-second-edition
Reply
0 Kudos