Я пытаюсь управлять пользовательскими сеансами через 10+ RDSH-хостов 2012 R2 внутри фермы vWorkspace 8.6.1 без роли брокера подключений 2012 R2.
Я обеспокоен тем, что добавление посредника подключений, создание пула и добавление в него серверов будет мешать настройкам политики и настройке правил балансировки нагрузки в vWorkspace (два драйвера, одна машина). А элементы управления vWorkspace недостаточно интуитивно понятны для развертывания для поддержки уровня 1 и несколько неуклюжи.
Это не было проблемой в 2008 году и в предыдущих версиях, но теперь Microsoft заменила все предыдущие автономные инструменты и, по-видимому, принудительно настроила их роли Server Manager / Connection Manager.
Ищете сценарий PowerShell (или другой вариант) для управления выходом пользователей из системы, сеансами теневого копирования и т. Д. (В пуле), который не ссылается на брокера соединений. Большинство скриптов / инструментов для PowerShell теперь ссылаются на коллекцию: TechNet Get-RDUserSession
Get-RDUserSession -ConnectionBroker "rdcb.contoso.com"
Вы действительно можете использовать Get-RDUserSession
для этой задачи. Просто обращайтесь к имени коллекции, а не к брокеру соединений
Get-RDUserSession -collectionname "Mycollection" | ft Username, UnifiedSessionId
это даст вам идентификаторы сеанса всех подключений RDP
затем вы можете затенять их с помощью этой команды (в этом примере sessionid "3"
затенен)
Mstsc /shadow:3 /control
Чтобы облегчить себе жизнь, вы можете использовать функцию, которая ищет UserName.
function ShadowSession([string]$UserName, [string]$CollectionName)
{
$SessionID = Get-RDUserSession -collectionname $CollectionName |
select UnifiedSessionId | ? {$_.Username -eq $UserName}
mstsc /shadow:$SessionID /control
}
так что вы будете командовать
ShadowSession -UserName "User01" -CollectionName "MyCollection"
если у вас только одна коллекция RDS, используйте это
function ShadowSession([string]$UserName)
{
$SessionID = Get-RDUserSession -collectionname "MyCollection" |
select UnifiedSessionId | ? {$_.Username -eq $UserName}
mstsc /shadow:$SessionID /control
}
тогда вам не нужно ссылаться на имя коллекции, только имя пользователя
ShadowSession -UserName "User01"
Вы даже можете пойти дальше и добавить переключатели к своей функции
тогда вы можете использовать эту функцию для всего, что захотите. слежка, выход из системы и т. д.