Сделайте сервер недоступным корректно использование Powershell в ARR

Мы используем ARR в качестве обратного прокси, и я хотел бы сделать сервер недоступным по различным причинам. Как это может быть сделано с помощью Powershell?

Редактирование 1:
Я нашел это учебное руководство http://blogs.iis.net/anilr/archive/2009/11/09/using-arr-config-extensibility-to-gracefully-stop-server.aspx для использования JScript. Но я не могу перевести его в powershell.

Редактирование 2:
Используя Набор-WebConfigurationProperty в модуле WebAdministration я могу, изменяет настройки для сервера. Я нашел SetState в %windir%\system32\inetsrv\config\schema\arr_schema.xml но я не знаю, как вызвать тот метод.

4
задан 15 October 2012 в 18:13
1 ответ

Предположим, что ваша ферма серверов называется myWebFarm, а сервер, который вы пытаетесь установить для слива, - это myNode1, следующий код PowerShell поможет вам

Import-Module WebAdministration

$arr = Get-WebConfiguration -PSPath 'MACHINE/WEBROOT/APPHOST' -Filter "webFarms/webFarm[@name='myWebFarm']/server[@address='myNode1']/applicationRequestRouting" 
$setState = $arr.Methods['SetState'].CreateInstance()
$setState.Input.Attributes['newState'].Value = 1
$setState.Execute()

Если вы хотите проверить значение Счетчик currentRequests, чтобы увидеть, когда он закончил слив (переходит в 0), вы можете использовать

(Get-WebConfigurationProperty -PSPath 'MACHINE/WEBROOT/APPHOST' -Filter "webFarms/webFarm[@name='myWebFarm']/server[@address='myNode1']/applicationRequestRouting/counters" -Name "currentRequests").Value

В общем, функция Generate Script редактора конфигурации в графическом интерфейсе IIS Manager может быть полезна при создании сценариев PowerShell, чтобы помочь вам хотя бы частично там.

2
ответ дан 3 December 2019 в 03:59

Теги

Похожие вопросы