Как удалить windows server 2019

Обновлено: 05.07.2024

В данной статье мы продолжаем рассказывать про работу с Windows Server Core 2019. В прошлых постах мы рассказали как готовим клиентские виртуальные машины на примере нашего нового тарифа VDS Ultralight с Server Core за 99 рублей. Затем показали как работать с Windows Server 2019 Core и как установить на него GUI. Сегодня мы поговорим про управление с помощью Windows Admin Center.

Головной болью было, наверное, по соображениям безопасности, разделять роли серверов. Заводить несколько машин, чтобы физически разделить контроллер домена и файловый сервер.
Благо нам на помощь пришла виртуализация, и теперь изолированно друг от друга могут работать несколько служб, которые из соображений безопасности не могут работать на том же сервере. Виртуализация принесла массу удобства, развертывание виртуальных машин из одного шаблона экономит время специалистам, и физически, все в одной коробке с мощным железом.

Машин все меньше, а серверов все больше, даже у меня, для «просто посмотреть» образовалось два контроллера домена, файловый сервер, сервер под Java приложения и еще пачка веб серверов, поэтому давайте поговорим о том, как можно эффективно управлять серверами на Windows, не отрывая левой руки от кофе.

— С помощью Powershell!

Конечно да, но… нет. Продукт позиционируется как удобный инструмент управления гигантской инфраструктурой. Понятно, что это не совсем так, для таких случаев есть Powershell ISE и скрипты, поэтому хотелось бы рассмотреть действительно полезные юзкейсы. Если у вас есть свой опыт, которым вы вы хотели поделиться, мы можем добавить его в эту статью.

Windows Admin Center лучше подходит для управления стоковыми компонентами. На текущий момент только RSAT может управлять установленными ролями.

Используя WAC, можно улучшить безопасность вашей инфраструктуры, если будете использовать его как шлюз.

Сводная таблица того, он умеет и не умеет:

Управление системой

WAC RSAT
Управление компонентами Да Да
Редактор реестра
Да
Нет
Управление сетью
Да
Да
Просмотр событий
Да
Да
Общие папки
Да
Да
Управление дисками
Да
Только для серверов с GUI
Планировщик заданий
Да
Да
Управление устройствами
Да
Только для серверов с GUI
Управление файлами
Да
Нет
Управление пользователями
Да
Да
Управление группами
Да
Да
Управление сертификатами
Да
Да
Обновления
Да
Нет
Удаление программ
Да
Нет
Системный монитор
Да
Да
WAC
RSAT
Advanced Thread Protection ПРЕВЬЮ Нет
Windows Defender
ПРЕВЬЮ
Да
Контейнеры
ПРЕВЬЮ
Да
AD Administrativ Center
ПРЕВЬЮ
Да
AD Domain and Trusts
Нет
Да
AD sites and services
Нет
Да
DHCP
ПРЕВЬЮ
Да
DNS
ПРЕВЬЮ
Да
Диспетчер DFS
Нет
Да
Диспетчер GPO
Нет
Да
Диспетчер IIS
Нет
Да

Превью — установка бета версий компонентов для WAC, не входит в состав сборки. Перечислять все не нужно, потому что буквально все компоненты управляются только с помощью RSAT.

Нюансы

Powershell в Windows Admin Center не имеет своей среды сценариев аналогичной Powershell ISE.
Windows Admin Center не поддерживает Powershell ниже 5.0, на старых машинах обязательно нужно ставить новый Powershell, если хотите использовать его.

Главным минусом Windows Admin Center в микро инстансах является потребление оперативной памяти сервера. Он создает четыре сессии по 50-60 мегабайт каждая, и каждая эта сессия остается даже после закрытия Windows Admin Center.

Та же самая проблема и с Powershell через Enter-PSSession, он так же создает новую сессию, и если просто закрыть окно терминала, сессия весом и 70 мегабайт так и останется на удалённом сервере, если её не закрыть её перед выходом с помощью Exit-PSSession или Remove-Pssession.
При использовании Windows Admin Center с этим придется мириться, он отнимет около 170 мегабайт ОЗУ, RSAT таким не страдает.


(См. wsmprovhost.exe)

Упрощаем работу

Максимальное удобство управления достигается если ваша рабочая станция, на которой установлен WAC находится в домене. Он берет учетные данные пользователя, который зашел в систему, подключение к серверам осуществляется по одному щелчку мыши.

Импортировать список серверов можно с помощью txt файла, перечислив имена серверов переносом строки, как и в RSAT.

Что тоже радует, ранее, чтобы интегрировать в AD виртуальную машину на Server Core, приходилось делать это через sconfig, а это значит нужен прямой доступ к его экрану. В случае с хостингами приходилось делать все это через VNC. Теперь, при переходе на главную страницу можно нажать «Изменить идентификатор компьютера» и ввести в домен.


Кстати, чтобы ввести в домен Windows Server 2019, больше не требуется делать Sysprep, потому что Sysprep тоже нужно было завершать через VNC.

Чтобы изменить сетевые настройки теперь нужно сделать два клика. Подключаешься к серверу и меняешь.

Это выходит так же быстро, как и через WinRM, только одной рукой.


Повышаем безопасность

На текущий момент есть четыре типа развертывания. Локальный, в качестве шлюза, установка на один из продакшн серверов и в составе кластера.


*Картинка с сайта майкрософт

Установка в качестве шлюза, на отдельный сервер, наиболее безопасный и рекомендуемый вариант. Это аналог схемы с VPN, когда доступ к управлению имеется только с определенного IP адреса или участка сети.

Согласитесь, гораздо удобнее держать на одной вкладке видосы и мемасы, а на другой Windows Admin Center, нежели целиком терять подключение к ютубу из-за входа в защищенную сеть.
Как же обезопасить все свои N серверов? С помощью следующего скрипта:


Этот скрипт изменит стандартные правила брандмауэра таким образом, что вы сможете использовать RDP и WinRM только с определенного IP адреса, понадобится для организации безопасного доступа к инфраструктуре.

Powershell в Windows Admin Center не имеет своей среды сценариев аналогичной Powershell ISE, можно только вызывать готовые скрипты.


Кстати, вот так выглядит RDP на Windows Server Core.


Выводы

На текущий момент Windows Admin Center не способен заменить RSAT, однако в нём уже присутствуют функции, которых нет у RSAT. Добавляются старые оснастки, которые не так удобны для управления через браузер.

Странным является приоритет разработки, наиболее активно добавляются функции интегрированные с Azure, хостингом от Майкрософт, вместо реально полезных функций.
К сожалению, пока что, управлять всеми функциями Windows Server с удобствами можно только подключившись к нему по RDP.

Не смотря на все минусы, у Windows Admin Center есть свой SDK, с помощью которого можно писать свои собственные модули и управлять своим собственным ПО через него, что однажды сделает его лучше RSAT.

В чем суть проблемы

У вас может быть установлена роль "служба Архивации данных Windows Server (Windows Server BackUP)", вы настроили задание по расписанию и все идет штатно. В какой-то момент вы сталкиваетесь с проблемой, что происходит заполнение жесткого диска резервного копирования Windows Server, роль должна видеть это и в случае нехватки пространства производить перезапись самой старой версии, по ряду причин это можете не произойти. Вторая ситуация, что у вас на диске можете быть слишком много точек резервного копирования и вы не хотели бы весь диск отдавать под них и желаете их сократить до нужного вам количества. Ниже я хочу вам показать, как вы можете все это задать явным образом.

Как удалить резервные копии Windows Server 2019 через командную строку или PowerShell

К сожалению в графическом интерфейсе у вас нет возможности явным образом задать, сколько точек восстановления должен хранить Windows Backup Server, по крайней мере в случае с состоянием системы. Но у нас все еще есть замечательная утилита командной строки wbadmin.

И так у меня есть диск E:\ на него каждый день служба архивации Windows Server 2019 делает резервную копию состояния системы, я устал получать от системы мониторинга оповещения, что на данном диске свободного пространства менее 5%, так как сколько службе Backup не дай, она все скушает и решил подрезать ее. Первое, что я хотел понять сколько точек резервного копирования у меня есть, посмотреть это можно двумя методами:

Получаем список резервных копий через Get-WBSummary

Get-WBSummary

Вы получите вот такую информацию:

В результате я точно вижу, что у меня 32 точки. Раньше еще была и еще действует утилита vssadmin. vssadmin более детально может показать информацию, о каждой точке резервного копирования. Запускать ее можно либо через командную строку или же через PowerShell. Введите команду:

На выходе будет список из всех ваших точек резервного копирования, вот пример:

Выполнение команды vssadmin list shadows

тут так же будут вот такие данные:

Выполнение командлета Get-WBBackupSet

Те администраторы, кто имеют слегка побольше опыта, они помнят, что удалить такие точки можно было через утилиту vssadmin, так например выглядит удаление самой старой точки:

Но в случае с установленной ролью архивации Windows Server вы получите ошибку:

Error: Snapshots were found, but they were outside of your allowed context. Try removing them with the backup application which created them.

Error: Snapshots were found, but they were outside of your allowed context. Try removing them with the backup application which created them

Она будет работать в случае клиентских операционных систем по типу Windows 8.1, но не в случае Windows Server. Для нашей задачи есть утилита WBADMIN. Предположим, что вы хотите удалять самую старую точку резервного копирования, для этого введите:

  • -backupTarget:e: - это диск E:\
  • -deleteOldest - последняя точка

Напоминаю, что у меня их было 32. В результате вас спросят хотите ли вы произвести удаление, нажмите "Y". Далее можно заново через Get-WBSummary посмотреть количество точек. В результате видно, что их стало 31.

Как удалить резервные копии из Windows Server Backup

Чтобы удалить конкретную точку вы можете воспользоваться командой:

WBADMIN DELETE BACKUP -backupTarget:e: -version:12/05/2019-17:00

В результате видно, что у меня было 35 точек восстановления и после удаления точки 12/05/2019-17:00 их осталось 34.

windows backup удаление лишних точек

Еще очень полезно указать максимальное количество точек резервного копирования, и все что сверх этого будет удалено. Попробуйте воспользоваться вот такой конструкцией:

WBADMIN DELETE BACKUP -keepVersions:30 -backupTarget:e:

В результате выполнения команды у меня осталось 30 точек отката и 4 были удалены.

Мы рассмотрим пример корректного удаление роли Active Directory Domain Services для Windows Server 2012 / 2012 R2 / 2016 / 2019.

Процесс полного удаления разобьем на несколько этапов:

Подготовка системы

Если в нашей среде AD не один контроллер домена и мы не хотим удалять сам домен, а только один из его серверов со службой каталогов, стоит выполнить предварительные операции, чтобы минимизировать возможные проблемы.

Перенос ролей контроллера домена

Active Directory насчитывает 5 FSMO ролей, которые отвечают за корректную работу службы каталогов. Смотрим, на каких серверах запущены данные роли с помощью команд в Powershell:

Get-ADForest dmosk.local | ft DomainNamingMaster, SchemaMaster

Get-ADDomain dmosk.local | ft InfrastructureMaster, PDCEmulator, RIDMaster

* где dmosk.local — домен, для которого нужно узнать назначенные роли FSMO.

Если какие-то роли назначены на сервере, который планируется понизить, то необходимо с помощью команды типа:

Move-ADDirectoryServerOperationMasterRole <имя сервера, куда переносим> <название роли>

Проверка состояния AD

На любом из контроллеров домена вводим команду:

Понижение контроллера домена

Первым шагом понизим наш сервер до рядового сервера. Это можно сделать с помощью графического интерфейса, Powershell или командной строки.

Графика

Открываем Диспетчер серверов и переходим в Управление - Удалить роли и компоненты:

Переходим к удалению ролей и компонентов

Если откроется окно с приветствием, то просто нажимаем Далее (при желании, можно поставить галочку Пропускать эту страницу по умолчанию):

Пропускаем стартовую страницу

В окне «Выбор целевого сервера» выбираем сервер, для которого мы будем понижать уровень AD:

Выбираем сервер для удаление роли

. и нажимаем Далее.

Снимаем галочку Доменные службы Active Directory. откроется окно в котором отобразится список компонентов для удаления — нажимаем Удалить компоненты:

Отмечаем для удаления роль Доменные службы Active Directory

Система вернет ошибку с предупреждением, что сначала нужно понизить AD — кликаем по ссылке Понизить уровень этого контроллера домена:

Переходим к понижению уровня контроллера домена

В следующем окне мы увидим предупреждение о том, что компьютер будет перезагружен и возможность принудительно понизить уровень — просто нажимаем Далее:

Знакомимся с предупреждением и идем далее

Система отобразит роли AD, которые будут удалены. Ставим галочку Продолжить удаление и нажимаем Далее:

Ставим галочку для продолжения удаления

Вводим дважды пароль учетной записи локального администратора, который будет использоваться после понижения до рядового сервера:

Вводим пароль для административной учетной записи

Кликаем по Понизить уровень:

Кликаем по Понизить уровень

Процесс займет какое-то время. После мы увидим «Уровень контроллера домена Active Directory успешно понижен»:

Результат понижения уровня AD

Сервер автоматически будет перезагружен.

Powershell

Открываем консоль Powershell от администратора и вводим:

Система запросит пароль для локальной учетной записи администратора, которая будет использоваться после понижения — задаем новый пароль дважды:

LocalAdministratorPassword: **********
Подтвердить LocalAdministratorPassword: **********

Мы получим предупреждение о перезагрузки сервера. Соглашаемся:

После завершения этой операции сервер будет автоматически перезапущен. Когда вы удалите доменные службы Active
Directory на последнем контроллере домена, этот домен перестанет существовать.
Вы хотите продолжить эту операцию?
[Y] Да - Y [A] Да для всех - A [N] Нет - N [L] Нет для всех - L [S] Приостановить - S [?] Справка
(значением по умолчанию является "Y"): A

Для выполнения команды уйдет некоторое время, после чего сервер уйдет в перезагрузку.

Удаление роли AD DS

После понижения сервера роль, по-прежнему, будет установлена. Для ее удаления мы также можем воспользоваться графической оболочкой или командной строкой.

Графика

В диспетчере серверов кликаем снова по Управление - Удалить роли и компоненты:

Переходим к удалению ролей и компонентов

Среди серверов выбираем тот, на котором будем удалять роль:

Выбираем сервер для удаление роли

* сервер может быть только один. Тогда выбираем его.

Снимаем галочку Доменные службы Active Directory, в открывшемся окне кликаем по Удалить компоненты:

Отмечаем для удаления роль Доменные службы Active Directory

Галочка для доменных служб будет снята:

Галочка на роли AD DS снята

. кликаем по Далее несколько раз.

В последнем окне ставим галочку Автоматический перезапуск конечного сервера, если требуется и подтверждаем действие ответом Да:

Ставим галочку для автоматической перезагрузки сервера

Роль будет удалена, а сервер отправлен в перезагрузку.

Powershell

Запускаем Powershell от администратора и вводим:

Remove-WindowsFeature -Name AD-Domain-Services

ПРЕДУПРЕЖДЕНИЕ: Чтобы завершить удаление, вам необходимо перезапустить этот сервер.

Вывод сервера из домена

В случае, если у нас есть другие контроллеры домена, наш сервер останется в домене. При необходимости его окончательного вывода из эксплуатации, стоит вывести его из среды AD.

Графика

Открываем свойства системы (команда control system или свойства Компьютера) и кликаем по Изменить параметры:

Переходим к изменению имени компьютера и его принадлежности к домену

В открывшемся окне нажимаем на Изменить:

Изменяем имя и домен

И переводим компьютер в рабочую группу:

Переводим сервер в рабочую группу

* в данном примере в группу с названием WORKGROUP.

Система запросит логин и пароль от пользователя Active Directory, у которого есть права на вывод компьютеров из домена — вводим данные.

Если все сделано верно, мы должны увидеть окно:

После перезагружаем сервер или выключаем его.

Powershell

Запускаем Powershell от имени администратора и вводим:

Remove-Computer -UnjoinDomaincredential dmosk\master -PassThru -Verbose

* где dmosk\master — учетная запись в домене с правами вывода компьютеров из AD.

Соглашаемся продолжить, ознакомившись с предупреждением:

Подтверждение
Чтобы войти в систему на этом компьютере после его удаления из домена, вам потребуется пароль учетной записи локального
администратора. Вы хотите продолжить?
[Y] Да - Y [N] Нет - N [S] Приостановить - S [?] Справка (значением по умолчанию является "Y"): Y

Вопросы и ответы

Дополнительные сведения относительно понижения и удаления AD.

1. Как удалить дочерний домен?

Мы должны быть уверены, что в данном домене не осталось важных ресурсов предприятия. После необходимо по очереди удалить все контроллеры домена по данной инструкции. При удалении последнего сервера AD для дочернего домена, будет удален сам дочерний домен из леса.

2. Как понизить режим работы домена?

Данный режим не понизить — это односторонняя операция. Максимум, что можно сделать, это восстановить службу AD из резервной копии, когда режим был нужного уровня.

3. Что делать, если умер основной контроллер домена?

Рассмотрим несколько вариантов:

  • Если есть резервная копия, восстанавливаемся из нее.
  • Если в среде несколько контроллеров домена, захватываем FSMO-роли (подробнее в инструкции Управление FSMO ролями Active Directory с помощью Powershell) и вручную удаляем уже несуществующий контроллер. После можно поднять новый контроллер, сделав его резервным.
  • Хуже, когда нет ни копий, ни второго контроллера. В таком случае, поднимаем новый контроллер, создаем новый лес, домен и переводим все компьютеры в него.

4. Что делать, если контроллер домена возвращает ошибку при понижении?

Самый лучший способ, разобраться с ошибкой, решив проблему, которая ее вызывает. Если это не удалось сделать, принудительно понижаем сервер командой:

В этой статье описано, как удалить серверы в локальных дисковых пространствах с помощью PowerShell.

Удаление сервера без удаления дисков

Если вы планируете вскоре вернуть сервер в кластер или переместить его диски на другой сервер, вы можете удалить сервер из кластера, не удаляя его диски из пула носителей (вариант по умолчанию при удалении сервера с помощью диспетчера отказоустойчивости кластеров).

Используйте командлет Remove-ClusterNode в PowerShell:

Этот командлет выполняется быстро независимо от реализованной мощности, так как пул носителей "запоминает" недостающие диски и ожидает их возвращения. Данные с недостающих дисков не перемещаются. У параметра OperationalStatus для недостающих дисков будет значение "Связь утеряна", а состояние томов будет отображаться как "Неполный".

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

Не перемещайте диски с данными пула с одного сервера на несколько других серверов. Например, в случае сбоя одного сервера с десятью дисками (например, из-за сбоя системной платы или загрузочного диска) вы можете переместить все десять дисков на один новый сервер, но не перемещайте их по отдельности на разные серверы.

Удаление сервера и его дисков

Если вы хотите окончательно удалить сервер из кластера (это называется свертыванием), можете удалить как сам сервер из кластера, так и его диски из пула носителей.

Используйте командлет Remove-ClusterNode с необязательным флагом -CleanUpDisks:

Выполнение этого командлета может длиться долго (иногда много часов), так как Windows должна переместить все данные с этого сервера на другие серверы в кластере. После выполнения этого командлета диски окончательно удаляются из пула носителей, а тома возвращаются в работоспособное состояние.

Требования

Чтобы можно было окончательно удалить сервер и его диски, кластер должен соответствовать двум требованиям, указанным ниже. В противном случае командлет Remove-ClusterNode -CleanUpDisks сразу вернет ошибку и не будет перемещать данные, чтобы не допустить дополнительных сбоев.

Достаточно памяти

Во первых, необходимо иметь достаточно места на оставшихся серверах для размещения всех томов.

Например, если у вас четыре сервера, каждый из которых состоит из 10 дисков по 1 ТБ, у вас есть 40 ТБ физической памяти. После удаления одного сервера и всех его дисков у вас останется 30 ТБ места. Если ваши тома занимают более 30 ТБ места, они не поместятся на остающихся серверах, поэтому командлет вернет ошибку и не будет перемещать данные.

Достаточно доменов сбоя

Во-вторых, у вас должно быть достаточно доменов сбоя (как правило, серверов) для обеспечения устойчивости томов.

Например, если тома используют трехстороннее зеркальное отображение на уровне сервера, для обеспечения их полной работоспособности необходимо по крайней мере три сервера. Если попытаетесь удалить один из трех серверов и все его диски, командлет вернет ошибку и не будет перемещать данные.

В этой таблице показано минимальное количество доменов сбоя, необходимых для каждого типа устойчивости.

Устойчивость Минимальное количество доменов сбоя
Двухстороннее зеркало 2
Трехстороннее зеркало 3
Двойная четность 4

Ничего страшного, если в течение короткого периода у вас будет меньше серверов (например, во время сбоев или обслуживания). Но чтобы тома вернулись в полностью работоспособное состояние, необходимо минимальное количество серверов, указанное выше.

Читайте также: