我正在使用一个脚本,该脚本在 Active Directory 中创建组,并使用 New-VIPermission 将它们链接到我的 vCenter 服务器。诀窍是,除非我重新启动脚本(因此,我猜是重新启动连接),否则它找不到创建的组。
$My_Group = New-QADGroup -Name $My_AD_GroupName -SamAccountName $My_AD_GroupName -ParentContainer $My_OU -Connection $My_adConnection
New-VIPermission -Entity $param_objects -Principal "Domain\$My_AD_GroupName" -Role ($My_Role.Name) -Propagate:($My_Role.Value) | Out-Null
此脚本将要在我的 AD 中创建该组,但当我将其链接到我的 vCenter 中的新权限时,它会返回
New-VIPermission Could not find VIAccount with name 'Domain\MY_GROUP_NAME'.
重新启动脚本时,它会将组创建直接传递给 New-VIPermission,并将其正确链接到 vCenter 对象。
我尝试过添加等待命令和 5 秒睡眠,但没有任何改变...
如何在不重新启动 vCenter 连接的情况下重新加载可用组列表?
提前致谢 !
答案1
从 vmware 论坛得到答案:缓存刷新是问题所在。我花了一段时间测试是否可以在 vCenter 中解析该组以解决问题:
while (!(Get-VIAccount -Group -Name "DOMAIN\$My_AD_GroupName")){Start-sleep -s 1}
在创建 AD 组之后...虽然速度很慢,但是可以工作:)