The DRSRule module allows you to work with all types of vSphere DRS rules. The module provides support for VM and VMHost groups. And, it works with affinity/anti-affinity VM rules and VM to VMHost rules.
The module came from the need for DRS rule/group info gathering, exporting, and recreating. Initially there were some code blocks for exporting rule info and for importing again those rules, but things evolved into a module.
A couple of examples:
- Export rule/group info:
Export-DrsRule -Path c:\someFolder\myDrsRuleAndGroupInfo.json - Import rule/group info:
Import-DrsRule -Path c:\someFolder\myDrsRuleAndGroupInfo.json
Via the PowerShell Gallery and PowerShellGet:
- [optional, but smart] Save the module and inspect (safety first!):
Find-Module DRSRule | Save-Module -Path c:\temp\someFolder - Once comfortable with the safety of the module:
Find-Module DRSRule | Install-Module
Or, the "old", manual way:
- Download and extract the module .zip file
Unblock-Fileon the extracted contentsImport-Module <path\To\ModuleFolder>- Use
Get-Helpas per usual for cmdlet help and examples
- Export/Import:
Export-DrsRuleImport-DrsRule
- Get:
Get-DrsVMGroupGet-DrsVMHostGroupGet-DrsVMToVMHostRuleGet-DrsVMToVMRule
- New:
New-DrsVMGroupNew-DrsVMHostGroupNew-DrsVMToVMHostRuleNew-DrsVMToVMRule
- Remove:
Remove-DrsVMGroupRemove-DrsVMHostGroupRemove-DrsVMToVMHostRuleRemove-DrsVMToVMRule
- Set:
Set-DrsVMGroupSet-DrsVMHostGroupSet-DrsVMToVMHostRuleSet-DrsVMToVMRule