Releases: vmware/dscr-for-vmware
Desired State Configuration Resources for VMware - v2.2
The VMware.vSphereDSC module is extended with the following new features:
New DSC Resources:
- DatastoreCluster: DSC Resource that is used to create, modify and remove Datastore Clusters in the specified Datacenter on the specified vCenter Server.
- DRSRule: DSC Resource: that is used to create, modify and remove DRS rules for the specified Cluster.
- DatastoreClusterAddDatastore: DSC Resource that is used to add Datastores to the specified Datastore Cluster.
- VMHostVdsNic: DSC Resource that is used to modify the settings or remove VMKernel NICs connected to the specified Distributed Port Group on the specified VDSwitch.
- VMHostStorage: DSC Resource that is used to enable or disable the software iSCSI support for the specified VMHost.
- VMHostIScsiHbaVMKernelNic: DSC Resource that is used to bind/unbind VMKernel Network Adapters to/from the specified iSCSI Host Bus Adapter.
Extended DSC Resources:
- VMHostVDSwitchMigration DSC Resource: Added a new MigratePhysicalNicsOnly parameter to allow the user to choose to migrate only Physical Network Adapters. Extended the DSC Resource to create distributed port groups with VLAN ID.
- VMHostIScsiHba DSC Resource: Added IScsiName property to configure the IScsiName of the IScsiHba.
- VDPortGroup DSC Resource: Added VLanId property to configure the VLanId for a Distributed Port Group.
Bugfixes:
- VMHostAccount DSC Resource: Fixed the bug with determiting the desired state, when the ESXi account password should be changed.
- VMHostVDSwitchMigration DSC Resource: Fixed the bug with migrating Physical Network Adapters to VDSwitch. The Physical Network Adapters should be migrated with the VMKernel Network Adapters to avoid connectivity loss for the ESXi during the migration.
- VMHostVssTeaming DSC Resource: Fixed bugs with physical network adapters when updating the teaming policy of the standard switch.
- NfsDatastore DSC Resource: Moved name validation to VmfsDatastore DSC Resource due to not being applicable for NfsDatastores.
VMware.PSDesiredStateConfiguration - v1.0
VMware.PSDesiredStateConfiguration module provides a set of cmdlets to compile and execute a DSC Configuration without using the DSC Local Configuration Manager. Compiled DSC Configurations are stored in memory as PowerShell objects.
Start-VmwDscConfiguration, Get-VmwDscConfiguration and Test-VmwDscConfiguration cmdlets use the Invoke-DSCResource cmdlet from the PSDesiredStateConfiguration module to execute the compiled DSC Configurations.
The VMware.PSDesiredStateConfiguration module provides a cross platform support on MacOS and Linux. The module is also designed to work with the existing DSC Resources from the VMware.vSphereDSC module.
New-VmwDscConfiguration
Compiles a DSC Configuration into a VmwDscConfiguration object, which contains the name of the DSC Configuration and the DSC Resources defined in it.
Parameters
Mandatory
- Path - A file path of a file that contains DSC Configurations. The file can contain multiple DSC Configurations and for each one, a separate VmwDscConfiguration object is created. If ConfigurationData hashtable is defined in the provided file, it is passed to each DSC Configuration defined in the file.
Optional
-
ConfigurationName - The name of the DSC Configuration which should be compiled into a VmwDscConfiguration object. This parameter is applicable only when multiple DSC Configurations are defined in the file and only one specific DSC Configuration should be compiled. If not specified, all DSC Configurations in the file are compiled and returned as VmwDscConfiguration objects.
-
Parameters - The parameters of the file that contains the DSC Configurations as a hashtable where each key is the parameter name and each value is the parameter value.
Start, Test and Get-VmwDscConfiguration
These cmdlets work with the VmwDscConfiguration object created by the New-VmwDscConfiguration cmdlet and apply the Set, Test, Get methods to the compiled DSC Configuration.
Parameters
Mandatory
- Configuration - A VmwDscConfiguration object compiled by the New-VmwDscConfiguration cmdlet.
Optional
- ConnectionFilter - An array of Node names on which the DSC Configuration should be executed. Nodes that are not in the list will be skipped. Node names can be strings or VIServer objects.
The module also exposes vSphereNodes, which represent connections to vCenter Servers.
vSphere Nodes
Inside a DSC Configuration a vSphereNode is a special dynamic keyword that represents a connection to a VIServer. Each vSphereNode can contain DSC Resources from the module VMware.vSphereDSC. Currently vSphere Nodes only work on PowerShell 7.
With standard DSC we need to supply each DSC Resource with a Server and Credential properties so that they can establish a connection to the specified VIServer because the LCM runs the DSC Resources in different runspaces and a common connection cannot be reused.
The vSphere Nodes along with the new execution engine allow the user to bundle DSC Resources and specify a common VIServer connection which gets reused.
Desired State Configuration Resources for VMware - v2.1
The VMware.vSphereDSC module is extended with the following new resources:
- NfsDatastore: DSC Resource that is used to create, update and delete NFS Datastores on the VMHost.
- NfsUser: DSC Resource that is used to create, change the password and delete Nfs Users on the VMHost.
- StandardPortGroup: Composite DSC Resource that is used to create, update and delete Standard Port Groups which are associated with a Standard Switch. The resource also modifies the different policies of the Standard Port Group - Security, Shaping and Teaming policies.
- StandardSwitch: Composite DSC Resource that is used to create, update and delete Standard Switches on the VMHost. The resource also modifies the different policies of the Standard Switch - Security, Shaping and Teaming policies as well as creating a bridge to connect the Standard Switch to Physical Network Adapters.
- VDPortGroup: DSC Resource that is used to create, update and delete vSphere Distributed Port Groups.
- VDSwitch: DSC Resource that is used to create, update and delete vSphere Distributed Switches.
- VDSwitchVMHost: DSC Resource that is used to add/remove VMHosts to/from vSphere Distributed Switches.
- VMHostAcceptanceLevel: DSC Resource that is used to modify the acceptance level of the VMHost.
- VMHostAdvancedSettings: DSC Resource that is used to modify the Advanced Settings of the VMHost.
- VMHostAgentVM: DSC Resource that is used to modify the configuration of Agent Virtual Machine resources on the VMHost.
- VMHostAuthentication: DSC Resource that is used to include/exclude VMHosts in/from Domains.
- VMHostCache: DSC Resource that is used to configure the host cache/swap performance enhancement.
- VMHostConfiguration: DSC Resource that is used to modify the configuration of the VMHost.
- VMHostDCUIKeyboard: DSC Resource that is used to modify the Direct Console User Interface Keyboard Layout.
- VMHostFirewallRuleset: DSC Resource that is used to enable/disable firewall rulesets on the VMHost.
- VMHostGraphics: DSC Resource that is used to modify the Graphics configuration on the VMHost.
- VMHostGraphicsDevice: DSC Resource that is used to modify the Graphics Type of the Graphics Device.
- VMHostIPRoute: DSC Resource that is used to create and delete IPv4/IPv6 routes on the VMHost.
- VMHostIScsiHba: DSC Resource that is used to modify the CHAP settings of the iSCSI Host Bus Adapters on the VMHost.
- VMHostIScsiHbaTarget: DSC Resource that is used to create, modify the CHAP settings and delete iSCSI Host Bus Adapter targets from iSCSI Host Bus Adapters.
- VMHostNetworkCoreDump: DSC Resource that is used to modify the network coredump configuration of the VMHost.
- VMHostPciPassthrough: DSC Resource that is used to modify the PciPassthru configuration of the PCI Device on the VMHost.
- VMHostPermission: DSC Resource that is used to create, update and delete Permissions for Entity, Principal and Role on the VMHost.
- VMHostPhysicalNic: DSC Resource that is used to modify the speed and duplex settings of the Physical Network Adapter.
- VMHostPowerPolicy: DSC Resource that is used to modify the Power Management Policy of the VMHost.
- VMHostRole: DSC Resource that is used to create, update and delete Roles on the VMHost.
- VMHostSNMPAgent: DSC Resource that is used to modify the SNMP agent configuration on the VMHost.
- VMHostScsiLun: DSC Resource that is used to modify the configuration of SCSI Luns on the VMHost.
- VMHostScsiLunPath: DSC Resource that is used to configure SCSI Lun paths to SCSI devices on the VMHost.
- VMHostSharedSwapSpace: DSC Resource that is used to modify the configuration of system-wide shared swap space on the VMHost.
- VMHostSoftwareDevice: DSC Resource that is used to add a device to enable a software device driver or to remove a software device on the VMHost.
- VMHostVDSwitchMigration: DSC Resource that is used to migrate Physical Network Adapters and VMKernel Network Adapters attached to Standard Port Groups to vSphere Distributed Switches.
- VMHostVMKernelActiveDumpFile: DSC Resource that is used to enable/disable the VMKernel dump file on the VMHost.
- VMHostVMKernelActiveDumpPartition: DSC Resource that is used to enable/disable the VMKernel dump partition on the VMHost.
- VMHostVMKernelDumpFile: DSC Resource that is used to create and delete VMKernel dump files on a Datastore on the VMHost.
- VMHostVMKernelModule: DSC Resource that is used to enable/disable VMKernel modules on the VMHost.
- VMHostVssMigration: DSC Resource that is used to migrate Physical Network Adapters and VMKernel Network Adapters attached to Standard Port Groups to Standard Switches.
- VMHostVssNic: DSC Resource that is used to create, update and delete VMKernel Network Adapters added to Standard Switch and Standard Port Group.
- VMHostVssPortGroup: DSC Resource that is used to create, update and delete Standard Port Groups which are associated with a Standard Switch.
- VMHostVssPortGroupSecurity: DSC Resource that is used to modify the Security Policy of the Standard Port Group.
- VMHostVssPortGroupShaping: DSC Resource that is used to modify the Shaping Policy of the Standard Port Group.
- VMHostVssPortGroupTeaming: DSC Resource that is used to modify the Teaming Policy of the Standard Port Group.
- VMHostvSANNetworkConfiguration: DSC Resource that is used to add and remove vSAN network configuration IP Interfaces on the VMHost.
- VmfsDatastore: DSC Resource that is used to create, update and delete VMFS Datastores on the VMHost.
- vCenterVMHost: DSC Resource that is used to add, move to another location or remove VMHosts on the vCenter Server.
Desired State Configuration Resources for VMware - v2.0
The VMware.vSphereDSC module is extended with the following new resources:
- Cluster: Composite Resource used to create, update and delete Clusters in a specified Datacenter. The resource also takes care to configure Cluster's High Availability (HA) and Drs settings.
- HACluster: Used to create, update and delete Clusters in a specified Datacenter. The resource also takes care to configure Cluster's High Availability (HA) settings.
- DrsCluster: Used to create, update and delete Clusters in a specified Datacenter. The resource also takes care to configure Cluster's Drs settings.
- DatacenterFolder: Used to create and delete Folders in a specified Inventory.
- Datacenter: Used to create and delete Datacenters in a specified Inventory.
- Folder: Used to create and delete Folders in a specified Datacenter.
- PowerCLISettings: Used to Update the PowerCLI Configuration settings of the LCM. User Scope PowerCLI Configuration settings are updated with this resource. The LCM runs with Windows System account, so the settings will be stored for the user that runs LCM PowerShell. If a user runs a Configuration with this resource, the settings will be preserved for all future Configurations that run on that LCM.
- VMHostAccount: Used to create, update and delete VMHost Accounts in the specified VMHost we are connected to.
- VMHostService: Used to configure the host services on an ESXi host.
- VMHostSettings: Used to Update Motd Setting and Issue Setting of the passed ESXi host.
- VMHostSyslog: Used to configure the syslog settings on an ESXi node.
- VMHostVss: Used to configure the basic properties of a Virtual Switch (VSS) on an ESXi node.
- VMHostVssBridge: A bridge connecting a virtual switch (VSS) to (a) physical network adapter(s).
- VMHostVssSecurity: Used to configure the security policy governing ports of a Virtual Switch (VSS).
- VMHostVssShaping: Used to configure the traffic shaping policy for ports of a Virtual Switch (VSS).
- VMHostVssTeaming: Used to configure the network adapter teaming policy of a Virtual Switch (VSS).
Desired State Configuration Resources for VMware
The VMware.vSphereDSC module is a collection of DSC Resources. This module includes DSC resources that simplify the management of vCenter and ESXi settings, with a simple declarative language.
The VMware.vSphereDSC module contains the following resources:
- VMHostNtpSettings: Used to configure NTP Server property and the Service Policy of the 'ntpd' Service of a ESXi host.
- VMHostDnsSettings: Used to configure the DNS Settings of a ESXi host.
- VMHostSatpClaimRule: Used to create or remove SATP Claim Rules of a ESXi host.
- VMHostTpsSettings: Used to configure TPS Settings of a ESXi host.
- vCenterStatistics: Used to configure the Statistics Settings of a vCenter.
- vCenterSettings: Used to update EventMaxAge Settings, TaskMaxAge Settings and the Logging Level of a vCenter.