I also tried this to loop through the datastore clusters and disable the settings without much luck.
--
$dscls = get-datastorecluster | sort -property name
foreach ($dscl in $dscls) {
$ds = $dscl.name
write "ds = $ds"
$pod=Get-View -ViewType 'StoragePod' | ? { $_.name -eq $ds}
$pod_Mor=$pod.MoRef;
$vmOverrides=$pod.PodStorageDrsEntry.StorageDrsConfig.VmConfig;
foreach ($vmOverride in $vmOverrides) {
$vmMo=Get-View $vmOverride.Vm
if($vmOverride.Enabled -eq $false){
$spec = New-Object VMware.Vim.StorageDrsConfigSpec
$spec.vmConfigSpec = New-Object VMware.Vim.StorageDrsVmConfigSpec[] (1)
$spec.vmConfigSpec[0] = New-Object VMware.Vim.StorageDrsVmConfigSpec
$spec.vmConfigSpec[0].operation = 'add'
$spec.vmConfigSpec[0].info = New-Object VMware.Vim.StorageDrsVmConfigInfo
$spec.vmConfigSpec[0].info.enabled=$true
$spec.vmConfigSpec[0].info.vm=$vmOverride.Vm;
$_this = Get-View -Id 'StorageResourceManager-StorageResourceManager'
$_this.ConfigureStorageDrsForPod_Task($pod_Mor, $spec, $true)
Write-Host "SDRS is re-enabled on this VM :" $vmMo.Name
$row.VMName =$vmMo.Name
$report += $row
}
}
}