我们有一个 RDS 服务器群,其中包含一个 AD 服务器和两个 RDS 服务器。AD 是 Server 2012 R2,RDS 服务器是 Server 2016。
当我通过 Teamviewer 登录 RDS 服务器重启后并打开服务器管理器来管理连接时,我总是必须将服务器添加到服务器池中才能查看连接。这有点烦人
是否有可以用来设置服务器池的 PowerShell cmdlet?
谢谢!
答案1
不幸的是,没有 PowerShell 命令可以将服务器添加到服务器管理器。因此,您必须在启动服务器管理器之前编辑 ServerList.xml,这可以使用 PowerShell 完成。
1.关闭服务器管理器
get-process ServerManager | stop-process –force
2. 设置现有 ServerList.xml 文件的路径
$file = get-item "$env:USERPROFILE\AppData\Roaming\Microsoft\Windows\ServerManager\ServerList.xml"
3.备份ServerList.xml
copy-item –path $file –destination $file-backup –force
4.从ServerList.xml中获取XML格式的内容
$xml = [xml] (get-content $file )
5. 将现有托管服务器元素克隆到新的 XML 元素
$newserver = @($xml.ServerList.ServerInfo)[0].clone()
6. 使用新的服务器信息更新新的克隆元素
$newserver.name = “servername.domain.com”
$newserver.lastUpdateTime = “0001-01-01T00:00:00”
$newserver.status = “2”
7. 将新克隆的元素附加到 ServerList 节点内
$xml.ServerList.AppendChild($newserver)
8. 将更新的 XML 元素保存到 ServerList.xml
$xml.Save($file.FullName)
9.重新启动服务器管理器以查看结果
start-process –filepath $env:SystemRoot\System32\ServerManager.exe –WindowStyle Maximized
当然,您可以将所有命令作为单个脚本运行,或者将调整后的文件保存到某处并在启动时将其复制过来。这样就可以了。