Множественная установка из PowerShell в Windows 2012R2

Автор Itworkroom

Установка роли на множество серверов в Windows 2012R2

Итак, вам требуется добавить роли, службы ролей или компоненты на множество серверов. Для автоматизации этого процесса воспользуемся Power-Shell-м. При этом необходим конфигурационный файл. В целях демонстрации мы воспользуемся мастером добавления ролей и компонентов для экспорта информации по установке роли в ХМL-файл. Например, Вам нужен (Remote Desktop Services). Для этого запустите мастер добавления роли на одном из серверов под управлением Windows 2012R2, но остановитесь на экране подтверждения добавления роли (последнем экране мастера).
мастер установки
В нижней части этого экрана имеется ссылка Ехрогt configuration settings (Экспортировать параметры конфигурации), которая позволяет экспортировать конфигурацию в файл. Ехрогt configuration settings
Сохраните конфигурацию в файл DeploymentConfigTemplate.xml в корневой папке на диске или в другом удобном для Вас месте. Теперь, когда файл сохранен, можно прервать работу мастера. Не щелкайте на кнопке lnstall (Установить)!
Почти все готово к установке роли на множество серверов с применением файла сценария. Откройте окно PowerShell, щелкнув правой кнопкой мыши на значке PowerShell в панели задач, и выберите в контекстном меню пункт Run as Administrator (Запуск от имени администратора).

Внутри PowerShell добавьте следующую функцию:

function Invoke-Windows Feat ureBatchDeployment
param (
[parameter (mandatory)]
[string [J] $ComputerNames ,
[parameter (mandatory)]
[string] $ConfigurationFilePath
)
# Развернуть компоненты одновременно на множестве компьютеров .
$jobs = @ ( )
foreach ($ComputerName in $ComputerNames)
$jobs + = Start-Job-Command {
Install-Windows Feature-ConfigurationFilePath
$using:ConfiguratioпFilePath -ComputerName $using:ComputerName -Restart
}
Receive-Job — Job $jobs -Wait1Seect -ObjectSuccess,
RestartNeeded, ExitCode , FeatureResult

Эта функция имеет несколько параметров: список имен компьютеров на которые будет добавлена роль RDS, и путь к файлу со сценарием. Вызовите созданную функцию и передайте необходимые параметры, с помощью показанного ниже фрагмента кода:

# Пример вызова

$ServerNames = ‘Server_l’, ‘Server_2’
Invoke-Windows FeatureBatchDeployment -ComputerNames
$ServerNames -ConfigurationFile Path C:\DeploymentConfigTemplate.xml

В следующей строке из фрагмента кода указаны имена серверов, Вы должны подправить на свои имена серверов. В примере заданы имена серверов Server_1 и Server_2, разделенные запятой. Можно указывать столько серверов, сколько необходимо, например:

$ServerNames = ‘ TestServer_l’ , ‘Server_2’, ‘Server_3’, ‘LabServer_4’  и тд..

В следующей строке из фрагмента кода необходимо указать реальный путь к сохраненному ранее ХМL-файлу:
-ConfigurationFilePath C:\DeploymentConfigTemplate.xml

После ввода последней строки нажмите и процесс установки начнется.

Проверить установку можно с помощью такой команды:
PS C:\Users\Administrator> Get-WindowsFeature

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *