Sincronizar duas configurações do servidor IIS 8.5, excluindo apenas ligações

12

Temos dois servidores Web IIS 8.5, Server 2012 R2

Servidor1

Servidor2

Estou tentando encontrar um comando do PowerShell que sincronize apenas as alterações feitas no Server1 para o Server2

Tentei configurações compartilhadas, no entanto, que sincronizarão as ligações também e não quero isso, pois elas são balanceadas de carga. Também estou tentando evitar adicionar ligações desnecessárias aos servidores para fazê-lo funcionar.

No entanto, encontrei alguns comandos do PowerShell da Webdeploy que parecem querer sincronizar arquivos também, usamos o DFS para sincronizar os arquivos.

Tudo o que quero fazer é sincronizar as alterações do Servidor1 applicationhost.config ou web.config para o Servidor2

Anthony Fornito
fonte

Respostas:

12

Entendi (verifique se você está usando o CMD ADMIN e o Powershell ADMIN)

Usando o CMD, ele não funcionará no PowerShell, não sei por que não.

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

Uma pequena visão geral

Existem algumas postagens on-line sobre uma substituição de regra personalizada

No entanto, o tipo não é válido, este é um bug que ainda não foi corrigido.

Portanto, você deve adicionar -skip: skipAction à linha de comandos para fazê-la funcionar e usar o objectName = binding

1 problema é que, se você criou um novo site, a configuração é trazida, mas as informações de ligação não são porque você disse para não

Portanto, a correção que usa o PowerShell

Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.applicationHost/sites/site[@name='SITENAME']/bindings" -name "." -value @{protocol='http';bindingInformation='IPADDRESS:80:SITENAME'}
Anthony Fornito
fonte