如何使用Powershell将IIS7应用程序池及其设置导出到多个服务器

时间:2016-04-08 17:26:09

标签: powershell iis iis-7 powershell-v4.0

使用PowerShell将应用程序池及其设置导出和导入到其他IIS 7服务器的数量的最佳方法是什么? 我已经为IIS服务器上的远程命令执行构建了一些好的脚本,但现在有一个快速复制App Pools到大量服务器的任务。

这样做的最佳方法是什么?

提前谢谢。

1 个答案:

答案 0 :(得分:1)

好的我弄清楚了这一点 我这样做的方式是:
将应用程序池的所有属性分配给变量

Invoke-Command -ComputerName $Destination -ScriptBlock
{  
    $using:AppPoolProperties | Export-Csv -Path $using:csv -NoTypeInformation  
}

然后我将该变量导出到我正在将应用程序池复制到的远程计算机上的CSV。

Invoke-Command -ComputerName $Destination -ScriptBlock  
{  
    Import-Module WebAdministration;  
    $Pools = (Import-Csv $using:csv);  
    New-Item -Path IIS:\AppPools\POOLNAME | Out-Null;  
    Set-ItemProperty IIS:\AppPools\POOLNAME -Name enable32BitAppOnWin64 -Value $pool.enable32BitAppOnWin64;  
    ......and so on adding other properties.....  
}

在远程主机上,我将CSS加载到变量中,并将每个对象导入新创建的App Pool

<int:recipient-list-router id="customRouter" input-channel="routingChannel"
        timeout="1234"
        ignore-send-failures="true"
        apply-sequence="true">
  <int:recipient channel="channel1"/>
  <int:recipient channel="channel2"/>
</int:recipient-list-router>