Custom DSC resource modules by PowerShell Magazine.
Custom DSC resource modules in this repository are packaged as different categories based on the functionality.
-
WMI Permanent Events Module (cWMIPermanentEvents)
- cWMIEventFilter is used to create event filter instances for a given event query and event namespace.
- cWMIEventBinding is used to create binding between an event filter instance and an event consumer instance.
- cWMIEventLogConsumer is used to create an instance of WMI Event Log consumer that writes to application log in response to an event.
- cWMILogFileConsumer is used to create an instance of WMI Log File that writes to a text log file in response to an event.
- cWMIActiveScriptConsumer is used to create an instance of WMI Active Script Consumer that executes a specified VBScript file and VBScript text fragment in response to an event.
- cWMICommandLineConsumer is used to create an instance of WMI CommandLine Consumer that executes a native application or a batch script in response to an event.
- cWMISMTPConsumer is used to create an instance of WMI SMTP Consumer that sends an email in response to an event.
-
Windows OS Miscellaneous Module (cWindowsOS)
- cAutoAdminLogon is used to add or remove auto administrator logon configuration. This is a composite resource.
- cLoopBackCheck is used to enable or disable Loopback Check registry setting for web servers such as SharePoint Front End servers. This is a composite resource.
- cDiskImage is used to mount or dismount ISO images.
-
Microsoft Monitoring Agent (cMMAgent)
- cMMAgentInstall is used to install Microsoft Monitoring Agent.
- cMMAgentProxyName is used to add or remove the proxy URL for the Microsoft Monitoring Agent configuration.
- cMMAgentProxyCredential is used to add, modify, or remove the credentials that need to be used to authenticate to a proxy configured using cMMAgentProxyName resource.
- cMMAgentOpInsights is used to enable or disable Azure Operational Insights within the Microsoft Monitoring Agent. This can also be used to update the WorkspaceID and WorkspaceKey for connecting to Azure Operational Insights.
- cMMAgentAD is used to enable or disable Active Directory integration for the Microsoft Management Agent. By enabling AD integration, you can assign agent-managed computers to management groups.
- cMMAgentManagementGroups DSC resource can be used to add or remove management groups. You can use this resource to update the action account credentials for the management agent service.
-
Microsoft Azure Recovery Services (MARS) agent (cMicrosoftRecoveryServicesAgent)
- cMARSAgentInstall is used to install Microsoft Azure Recovery Services Agent. This is a composite resource that uses Package resource behind the scenes.
- cMARSProxy is used to configure the proxy settings for the MARS agent to connect to the Azure Backup Vault.
- cMARSRegistration DSC resource should be used to register a target system with the Azure backup vault.
- cMARSEncryptionPhrase is used to configure the encryption settings for the MARS agent service.
-
Microsoft Hyper-V (cHyper-V)
- cVMSwitch is used to create virtual machine switches.
- cVMNetworkAdapter is used to create VM network adapters to attach to either management OS or the virtual machines.
- cVMNetworkAdapterSettings is used to configure VM network adapter settings such as bandwidth weights, port mirroring, DHCP guard, MAC address spoofing, etc.
- cVMNetworkAdapterVlan is used to configure VLANs on virtual network adapters either in the management OS or virtual machines.
- cVMIPAddress is used to inject IP Address into a virtual machine running on Hyper-V host.
- cWaitForVMGuestIntegration is used to ensure that the VM integration components are running. This will be useful when you want to wait until a VM completes reboot and then perform an action.
-
Microsoft Visual Studio Code (cHyper-V)
- vscodesetup is used to install Visual Studio Code.
- vscodeextension is used to install VS code extensions from the marketplace.
These modules are available on PowerShellGallery.com. If you are using Windows PowerShell 5.0 or Packagemanagement module on PowerShell 4.0, you can install these modules using PowerShellGet module.
Install-Module -Name cMMAgent
Install-Module -Name cWindowsOS
Install-Module -Name cWMIPermanentEvents
Install-Module -Name cMicrosoftAzureRecoveryServices
Install-Module -Name cHyper-V
Install-Module -Name vscode