Синхронизация двух конфигураций сервера IIS 8.5, исключая только привязки

12

У нас есть два веб-сервера IIS 8.5, Server 2012 R2

Сервер1

Сервер2

Я пытаюсь найти команду powershell, которая синхронизирует только изменения, внесенные на сервере Server1, в сервер Server2

Однако я попытался использовать общие конфигурации, которые также будут синхронизировать привязки, и я не хочу этого, поскольку они сбалансированы по нагрузке. Также я стараюсь избегать добавления ненужных привязок к серверам, чтобы это работало.

Я нашел пару команд PowerShell для webdeploy, однако, похоже, что он также хочет синхронизировать файлы, мы используем DFS для синхронизации файлов.

Все, что я хочу сделать, - это синхронизировать изменения с Server1 applicationhost.config или web.config на Server2

Энтони Форнито
источник

Ответы:

12

Понял (убедитесь, что вы используете CMD ADMIN и Powershell ADMIN)

Используя CMD, он не будет работать в powershell, не знаю, почему это не так.

msdeploy -verb:sync -source:webserver,computerName=acd-pv01 -dest:webserver,computerName=acd-pv02 -skip:skipAction=Delete,objectName=binding -skip:skipAction=AddChild,objectName=binding

Небольшой обзор

Есть несколько сообщений онлайн о пользовательских правилах

Однако тип недействителен, это ошибка, которая еще не исправлена.

Таким образом, вы должны добавить -skip: skipAction в командную строку, чтобы заставить его работать, и использовать objectName = binding

1 проблема заключается в том, что если вы создали новый сайт, конфигурация переносится, однако информация о привязке указана не потому, что вы сказали ей не

Так что исправить то, что использует powershell

Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.applicationHost/sites/site[@name='SITENAME']/bindings" -name "." -value @{protocol='http';bindingInformation='IPADDRESS:80:SITENAME'}
Энтони Форнито
источник