- Управление ролями и компонентами Windows Server из PowerShell
- Как вывести все установленные роли и компоненты Windows Server?
- Установка ролей и компонентов Windows Server из PowerShell
- Деплой ролей на множество серверов Windows Server
- Как удалить роль или компонент в Windows Server с помощью PowerShell?
- Добавление компонентов [Установка] Hyper-V в Windows Server 2016
Управление ролями и компонентами Windows Server из PowerShell
В Windows Server 2012R2/2016/2019 вы можете устанавливать и удалять различные роли и компоненты сервера через графический Server Manager. Однако в большинстве случаев эти же самые операции можно выполнить гораздо быстрее из консоли PowerShell. В этой статье мы рассмотрим особенности управления ролями и компонентами в актуальных версиях Windows Server.
Как вывести все установленные роли и компоненты Windows Server?
Чтобы вывести список всех доступных ролей и компонентов Windows Server используется командлет Get-WindowsFeature . Если выполнить его без параметров, появится информация обо всех компонентах.
Как вы видите, отображается название компонента (Display Name), его системное имя (Name) и состояние (Install State: Installed, Available или Removed). Список ролей и компонентов представляет собой дерево со вложенными ролями, которое напоминает то, которые вы видите при установке ролей через графический Server Manager. Для установки и удаления ролей и компонентов через PowerShell, вам нужно знать их системное имя, которое содержится в столбце Name.
Роли и компоненты удаляются из образа так:
Uninstall-WindowsFeature –Name DHCP –Remove
Чтобы установить удаленную роль, воспользуйтесь командлетом:
Install-WindowsFeature DHCP (понадобится доступ в Интернет)
Либо вы можете восстановить компоненты их дистрибутива с вашей версией Windows Server:
Install-WindowsFeature DHCP -Source E:\sources\sxs
Вы можете вывести список установленных компонентов сервера:
Get-WindowsFeature | Where-Object <$_. installstate -eq "installed">| ft Name,Installstate
Судя по скриншоту, данный сервер используется как файловый сервер (роли FileAndStorage-Services, Storage-Services). Большинство оставшихся компонентов используются для управления и мониторинга сервера.
Если вы не знаете точно имя роли, можно использовать знаки подстановки. Например, чтобы проверить какие из web компонентов роли IIS установлены, выполните (немного сократим синтаксис):
Get-WindowsFeature -Name web-* | Where installed
Вы можете получить список установленных компонентов на удаленном Windows Server:
Get-WindowsFeature -ComputerName msk-prnt1 | Where installed | ft Name,Installstate
Судя по установленным ролям Print-Services и Print-Server, этот сервер используется в качестве сервера печати.
Вы можете использовать командлет Get-WindowsFeature для поиска серверов в домене, на которых установлена определенная роль. Вы можете искать на серверах в определенном OU Active Directory с помощью командлета Get-ADComputer из модуля ActiveDirectory for PowerShell, или по указанному списку серверов ( $servers = (‘server1’, ‘server2’) ). Например, нам нужно найти все файловые сервера c ролью FileAndStorage-Services в указанном контейнере AD (я использую редактор PS — Visual Studio Code)
import-module activedirectory
$Servers=get-adcomputer -properties * -Filter
Foreach ($server in $Servers)
<
Get-WindowsFeature -name FileAndStorage-Services -ComputerName $server.Name | Where installed | ft $server.name, Name, Installstate
>
В результате у нас появился список серверов, на которых установлена данная роль.
Установка ролей и компонентов Windows Server из PowerShell
Для установки ролей и компонентов в Windows Server используется командлет Install-WindowsFeature.
Чтобы установить роль DNS на текущем сервере и инструменты управления (в том числе модуль Powershell – DNSServer), выполните:
Install-WindowsFeature DNS -IncludeManagementTools
По-умолчанию командлет устаналивает все необходимые зависимые роли и компоненты при установке роли. Чтобы вывести список зависимостей до установки воспользуйтесь параметров.
Install-WindowsFeature -name UpdateServices -whatif
Например, для установки роли сервера обновлений WSUS, необходимо установить некоторые компоненты IIS.
What if: Continue with installation?
What if: Performing installation for «[Windows Server Update Services] Windows Server Update
What if: Performing installation for «[Windows Server Update Services] WID Database».
What if: Performing installation for «[Windows Server Update Services] WSUS Services».
What if: Performing installation for «[Web Server (IIS)] Windows Authentication».
What if: Performing installation for «[Web Server (IIS)] Dynamic Content Compression».
What if: Performing installation for «[Web Server (IIS)] Performance».
What if: Performing installation for «[Web Server (IIS)] Static Content».
What if: Performing installation for «[Windows Internal Database] Windows Internal Database».
What if: The target server may need to be restarted after the installation completes.
Чтобы установить роль Remote Desktop Session Host, службу лицензирования RDS и утилиты управления RDS на удаленном сервере, воспользуйтесь командой:
Install-WindowsFeature -ComputerName msk-rds21 RDS-RD-Server, RDS-Licensing –IncludeAllSubFeature –IncludeManagementTools –Restart
C параметром –Restart сервер будет автоматически перезагружен, если установленный компонент это потребует.
Также можно установить компонент такой командой (например роль SMTP сервера):
Get-WindowsFeature -Name SMTP-Server | Install-WindowsFeature
Деплой ролей на множество серверов Windows Server
Еще одна интересная возможность при развертывании однотипных серверов. Вы можете установить необходимые компоненты на эталонном Windows Server и экспортируете список установленных ролей в CSV файл:
Get-WindowsFeature | where <$_.Installed -eq $True>| select name | Export-Csv C:\ps\Roles.csv -NoTypeInformation –Verbose
Потом вы можете использовать этот CSV файл для установки такого же набора ролей на других типовых серверах:
Import-Csv C:\PS\Roles.csv | foreach
Если роль или компонент уже установлен, команда вернет NoChangeNeeded и продолжит установку следующей роли.
Либо для установки одинакового набора ролей сразу на нескольких серверах можно использовать такую команду:
$servers = (‘srv1’, ‘srv2’,’srv3’)
foreach ($server in $servers)
Как удалить роль или компонент в Windows Server с помощью PowerShell?
Для удаления ролей и компонентов Windows Server используется командлет Remove-WindowsFeature .
Например, чтобы удалить роль принт-сервера, выполните команду:
Remove-WindowsFeature Print-Server -Restart
Добавление компонентов [Установка] Hyper-V в Windows Server 2016
В этой статье мы рассмотрим добавление компонентов (Установку) Hyper-V в Windows Server 2016.
Заходим в «Диспетчер серверов» нажимаем «Управление» -> «Добавить роли и компоненты». (Рис.1)
Рис.1 — Заходим в Добавление ролей и компонентов.
Пропускаем первое окно с рекомендациями Перед началом работы. Жмём «Далее».(Рис.2)
Рис.2 — Окно с рекомендациями Перед началом работы.
Тип установки — Выбираем «Установка ролей или компонентов». Жмём «Далее».(Рис.3)
Рис.3 — Выбираем «Установка ролей или компонентов».
Выбираем сервер из пула серверов, у меня только один сервер Wintest, выбираю его жму «Далее».(Рис.4)
Рис.4 — Выбор сервера.
Перед нами список Ролей сервера, нам необходимо выбрать то что мы хотим установить, ищем Hyper-V, ставим галочку.(Рис.5)
Рис.5 — Выбираем Hyper-V из списка ролей сервера.
После того как поставим галочку, появится окно «Добавить компоненты, необходимые для Hyper-V». Просто жмём «Добавить компоненты».(Рис.6)
Рис.6 — Добавление компонентов, необходимых для Hyper-V.
Роль и компоненты выбраны. Жмём «Далее».(Рис.7)
Рис.7 — Роль и компоненты выбраны. Жмём «Далее».
Далее нам предлагается выбрать дополнительные компоненты, ничего выбирать не нужно, всё оставляем по умолчанию. Жмём «Далее»(Рис.8)
Рис.8 — Выбор дополнительных компонентов.
Читаем что такое Hyper-V и На что надо обратить внимание. Лично для меня тут нет ничего нового, жму «Далее».(Рис.9)
Рис.9 — Приветственное окно установки Hyper-V.
Создание виртуальных коммутаторов. Сеть мы настроим позже. Жмём «Далее»(Рис.10)
Рис.10 — Создание виртуальных коммутаторов.
Миграция виртуальной машины. На данный момент мы хотим использовать Hyper-V для запуска виртуальных машин, на одном сервере. Поэтому миграция нам не нужна, но не переживайте, если она вдруг нам понадобится. то мы ее сможем настроить позднее. Жмём «Далее»(Рис.11)
Рис.11 — Миграция виртуальной машины.
Хранилище по умолчанию
- Расположение по умолчанию для файлов виртуальных жёстких дисков:
- Расположение по умолчанию для файлов конфигурации виртуальной машины:
Я всё оставил по умолчанию, но обычно я выбираю отдельную папку на другом диске, чтобы лишнего ничего не было на системном разделе. Жмём «Далее»(Рис.12)
Рис.12 — Выбор расположения виртуальных HDD и файлов конфигурации.
Ход установки. Ждём пока установятся роль и компоненты Hyper-V.(Рис.13) После установки потребуется перезагрузить сервер.
Рис.13 — Ход установки роли и компонентов Hyper-V.
Перезагружаем сервер. Будет производиться обновление системы. После перезагрузки окно установки компонентов опять появится. Дожидаемся Завершения установки. Жмём «Закрыть».(Рис.14)
Рис.14 — Завершение установки роли и компонентов Hyper-V.
Теперь в меню «Пуск» -> «Средства администрирования» -> можем найти «Диспетчер Hyper-V». Запускаем его. (Рис.15)
Рис.15 — Запускаем Диспетчер Hyper-V.
Перед нами стартовое окно Диспетчера Hyper-V. (Рис.16)
Рис.16 — Стартовое окно Диспетчера Hyper-V.
Настройка сети и создание виртуальной машины ничем не отличается от Hyper-V в Windows 10, поэтому дублировать контент я не буду, если кому-то интересны эти темы приглашаю к прочтению этой статьи — Hyper-V в Windows 10. Создание виртуальной машины.