Чем PowerShell Direct отличается от WinRM или PowerShell Remoting - PullRequest
1 голос
/ 04 мая 2020

Чем PowerShell Direct чем-то отличается от PowerShell Remoting ? Или это просто какой-то дополнительный интерфейс Hyper-V c, основанный на PowerShell Remoting?

Я использую PowerShell Direct для управления своими виртуальными машинами Hyper-V. Это удобно для автоматизации развертывания, потому что мне не нужно включать какие-либо специальные правила брандмауэра или настраивать разрешения на виртуальных машинах - это просто работает. Тем не менее, я также мог бы использовать PowerShell Remoting через WSMan / WinRM, который можно использовать на машинах, не относящихся к Hyper-V. Это, с другой стороны, потребует установки некоторых предварительных условий.

1 Ответ

2 голосов
/ 04 мая 2020

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

  • С точки зрения функций и UX , PowerShell Direct - используется для при работе PowerShell команды в гостевых системах Hyper-V (виртуальные машины / Windows контейнеры) с хост-компьютера - практически идентичны PowerShell Remoting , за исключением того, что функции PowerShell Direct имеют различные параметры , чьи имена начинаются с -VM, например -VMName против -ComputerName.

  • То, что отдельные параметры необходимы, чтобы указывать по крайней мере частично различные технические основы:

    • В то время как основные части инфраструктуры удаленного взаимодействия, в частности, сериализация на основе XML, вероятно, являются общими, PowerShell Direct делает не использует WinRM (WS-MAN) в качестве транспорта , как это делает PowerShell Remoting.

    • Вместо кажется, что PowerShell Direct использует именованные каналы для связи между хостом и e guest machine ; см. следующие ссылки на исходные коды:

Плюсы и минусы :

  • PowerShell Direct имеет преимущество , а не , требующее, чтобы целевая виртуальная машина (гость) была настроена для удаленного взаимодействия через Enable-Remoting сначала - см. требования .

  • И наоборот, PowerShell Direct ограничен локальной связью между гостем (виртуальной машиной или контейнером Hyper-V) и его хостом.

    • Если вам нужно для запуска команд PowerShell в ваших виртуальных машинах с других компьютеров в сети необходимо настроить удаленное взаимодействие PowerShell.
  • Предположительно при работе на виртуальных машинах PowerShell Direct работает лучше, чем PowerShell Remoting, хотя на практике это может не иметь значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...