DSCResources/EsxHost/EsxHost.schema.psm1
Configuration EsxHost { param ( [Parameter(Mandatory)] [System.String] $Name, [Parameter(Mandatory)] [System.String] $Server, [System.String] $NtpServers, [System.String] $SyslogServer, [Hashtable] $DNSServerConfigs ) Import-DscResource -ModuleName VMware.vSphereDSC Import-DscResource -ModuleName PSDesiredStateConfiguration $Credential = New-Object pscredential('Domain\Domainaccount', ("mysecurepassword" | ConvertTo-SecureString -AsPlainText -Force)) if ($NtpServers) { VMHostNtpSettings "VMHostNtpSettings_$($Name)" { Name = $Name Server = $Server Credential = $Credentials NtpServer = $NtpServers NtpServicePolicy = 'automatic' } VMHostService "VMHostService_$($Name)" { Name = $Name Server = $Server Credential = $Credential Key = 'ntpd' Policy = 'On' Running = $true } } if ($SyslogServer) { VMHostSyslog "VMHostSyslog_$($Name)" { Name = $Name Server = $Server Credential = $Credential Loghost = $SyslogServer CheckSslCerts = $true DefaultRotate = 10 DefaultSize = 100 DefaultTimeout = 180 Logdir = '/scratch/log' LogdirUnique = $false DropLogRotate = 8 DropLogSize = 50 QueueDropMark = 90 } } if ($DNSServerConfigs) { VMHostDnsSettings "VMHostDnsSettings_$($Name)" { Name = $Name Server = $Server Credential = $Credential Dhcp = $false DomainName = $DNSServerConfigs.DomainName HostName = $Name Address = $DNSServerConfigs.Address SearchDomain = $DNSServerConfigs.SearchDomain } } } |