Чрезвычайно медленное удаленное выполнение Powershell?

Есть ли способ ускорить удаленное взаимодействие powershell? Прямо сейчас, чтобы выполнить «удаленную» команду на моей виртуальной машине, требуется около 30-90 секунд, просто сделайте простой привет, мир, используя Invoke-Command с учетными данными.

Если я запускаю команды сразу после этого начального выполнения, я не получаю никакой задержки. Однако, если я подожду 3-4 минуты, я снова увижу большой всплеск задержки (30-90 секунд). Я также пробовал использовать Enter-PSSession, и происходит то же самое (для начальной команды это медленно, затем быстро, пока я не перестану выполнять команды в течение 3-4 минут, после чего он снова замедляется до сканирования).

Я пробовал использовать сеансы (и настраивать PsSession-Options http://technet.microsoft.com/en-us/library/hh849703.aspx), но они, похоже, также «бездействуют», и для создания сеанса по-прежнему требуется 30–90 секунд. Я отключил брандмауэр и Защитник Windows безуспешно. Любые идеи о том, как получить лучшую производительность?

Установка - это чистые окна, работающие с PowerShell 4.0 на виртуальной машине. Мой хост-компьютер присоединен к домену, а виртуальная машина - нет. Помощь очень ценится, я был разочарован этой проблемой некоторое время.

Примеры команд:

Invoke-Command { $env:computername; } -Session $session

Invoke-Command { $env:computername; } -Credential $cred

person droptic    schedule 17.09.2014    source источник
comment
Является ли ваша виртуальная машина локальной или размещена удаленно?   -  person TheMadTechnician    schedule 18.09.2014
comment
ВМ находится на локальном ящике.   -  person droptic    schedule 18.09.2014
comment
Виртуальная машина работает под управлением PS v4, что на локальной машине?   -  person TheMadTechnician    schedule 18.09.2014
comment
На самом деле я солгал, V4 находится на локальном компьютере, а предварительная версия v5 — на удаленном.   -  person droptic    schedule 18.09.2014


Ответы (1)


Установите следующие параметры для WSManConnectionInfo:

connectionInfo.SkipRevocationCheck=true

connectionInfo.SkipCACheck=true

Затем снова протестируйте.

person Rolf Plate    schedule 25.09.2014
comment
Где эту информацию можно найти в PowerShell, пожалуйста? - person Robin; 18.01.2017
comment
New-PSSessionOption –SkipCACheck –SkipCNCheck –SkipRevocationCheck - person Ole K; 08.11.2017
comment
Каковы последствия этого для безопасности? - person LavaHot; 06.05.2019