Назад | Перейти на главную страницу

Существуют ли команды PowerShell для администрирования нескольких серверов IIS с одного компьютера?

У меня несколько серверов IIS, работающих на разных машинах. Все они подключены через службу удаленного веб-управления к единой машине, на которой я беру большую часть управления.

Я хочу автоматизировать некоторые задачи с помощью PowerShell. Одна задача, которую я не могу понять с помощью PowerShell, - это добавить новые подключения к машине, с которой я выполняю удаленное управление.

Есть ли здесь эквивалент PowerShell для этого процесса: https://blogs.msdn.microsoft.com/benjaminperkins/2014/08/05/configure-remote-iis-administration-for-iis-web-sites/ ?

Связанная статья состоит из нескольких шагов. Давайте посмотрим, что Powershell может сделать для каждого из них.

Первый шаг - добавить роль службы управления.

За эта документация Microsoft:

Install-WindowsFeature -Name <feature_name> -computerName <computer_name> -Restart  

С помощью get-windowsfeature -computername, Я обнаружил, что имя роли службы управления IIS - Web-Mgmt-Service, мы будем использовать это:

Install-WindowsFeature -Name Web-Mgmt-Service -computerName <computer_name> -Restart  

После установки вам необходимо запустить службу веб-управления.

Это должно помочь:

Get-Service -ComputerName <computername> -Name WMSvc | Start-Service -Verbose

Измените его на Автоматический, если вы планируете часто использовать эту функцию.

Get-Service -ComputerName <computername> -Name WMSvc | Set-Service -StartupType Automatic

Затем установите для атрибута EnableRemoteManagement в реестре значение 1.

Из этот блог Microsoft по сценариям:

Используйте комбинацию Get-Credential, Enter-PSSession, Push-Location, Set-Location, Set-ItemProperty, и Pop-Location.

Эта статья на MCPMag.com делает то же самое, но с немного разными командами.

Затем войдите на сервер, с которого вы хотите удаленно управлять своими серверами IIS. Откройте консоль управления IIS и нажмите Файл -> Подключиться к серверу.

Я еще не нашел способ сделать эту часть Powershell. Похоже, что сохраненные соединения хранятся в %AppData%\Microsoft\WebManagement\7.0.0.0\InetMgr.preferences, хотя формат неочевиден. Но приведенные выше команды позволят вам автоматизировать большую часть того, что вы просите.