Windows Deployment Services. Часть 1.

Windows Deployment Services – клиент-серверная технология, предназначенная для развертывания образом Windows на Bare-Metal компьютеры, иными словами, компьютерами без предустановленной операционной системы.

Windows Deployment Server используется для централизованного хранения образов, для управления ими, развертывания их на клиентские компьютеры и для обеспечения возможности PXE-загрузки последних.

Windows Deployment Server был введен в состав Windows Server 2008, в версии R2 он претерпел усовершенствования, связанные с улучшением поддержки образов Windows PE 3.0 для установки Windows 7. WDS заменил собой службы RIS в Windows Server 2003.

Windows Deployment Services полностью вписывается в современную архитектуру развертывания Windows, являясь ее неотъемлемой частью. Он выполняет развертывание из WIM-файлов, с поддержкой файлов ответов созданных в программе Windows SIM. Также стоит обратить внимание, что возможна работа не только с оригинальными файлами WIM, WDS умеет развертывать образы, которые были отредактированы с применением любых средств – начиная от ImageX и DISM, заканчивая MDT.

Инфраструктура WDS


WDS: архитектура управления

Как видно, WDS работает по классическому построению серверных ролей. Она базируется на API, что обеспечивает расширяемость средств управления за счет возможности использования программного обеспечения сторонних разработчиков. Пользователь может управлять WDS либо из консоли управления wdsmgmt.msc, обеспечивающую удобный и интуитивно понятный интерфейс для управления образами, либо с использованием утилиты командной строки wdsutil.exe. Она имеет синтаксис, похожий на Power Shell, что облегчает управление опытным администраторам, особенно «скрипт-гуру». Wdsutil.exe обеспечивает немного больше возможностей, нежели графические средства, а также повышает скорость выполнения рутинных действий, и незаменима при написании сценариев для выполнения развертывания.

WDS: архитектура служб


Как вам уже понятно, работа WDS-сервера подразумевает под собой передачу больших объемов данных по локальной сети, и поэтому, «узким» местом с точки зрения производительности являются каналы передачи данных. Для решения этой проблемы существует протокол TFTP(Trivial File Transfer Protocol). При его разработке главный упор делался не на безопасность и не на управляемость, а на производительность при работе с файлами большого объема. Работает на основе UDP, использует порт 69. Также при планировании инфраструктуры заметьте, что устанавливаемый совместно с WDS TFTP-сервер можно использовать не только для развертывания образов, но и в любых других целях. Для инициализации удаленной загрузки клиента используется PXE-сервер, также DHCP-сервер, который должен быть настроен на передачу параметров PXE-клиенту. Собственно WDS-сервер используется для последующей загрузки клиента, передачи ему файлов загрузочного меню и управления процессом развертывания. И последним критически важным элементом инфраструктуры WDS является хранилище образом, которое представляет собой специальную папку файловой системы, содержащую особым образом структурированные образы.

Инфраструктурные требования WDS


· Windows Server 2008\2008 R2 Standard, Enterprise, Datacenter

· Развёрнутый и работоспособный Active Directory в той же подсети, что и WDS

· DNS-сервер в той же подсети, что и WDS

· DHCP-сервер(желательно Windows-управляемый) в той же подсети, что и WDS

· Раздел на диске с файловой системой NTFS, рекомендуемый объем ~15-20Гб

· Высокоскоростное сетевое соединение между WDS-сервером и клиентами

· PXE-совместимый сетевой адаптер на клиентском компьютере(при его отсутствии начальную загрузку придется выполнять со специального образа, записываемого на диск)

Как происходит загрузка клиентов?


Загрузка PXE-совместимого клиента выполняется следующим образом

1. Клиент подает широковещательный запрос на обнаружение DHCP

2. DHCP предлагает клиенту IP из своего пула адресов либо таблицы резервирования

3. Клиент арендует предложенный IP

4. DHCP подтверждает аренду IP

5. Клиент подтверждает аренду IP

6. Клиент подает запрос на обнаружение WDS-сервера в сети

7. WDS отправляет информацию о своем FQDN и файл-загрузчик pxeboot.com

8. Клиент использует TFTP для загрузки загрузочного файла

9. Клиент использует TFTP для загрузки загрузчика bootmgr.exe

10. На компьютере клиента возникает загрузочное меню

11. Начинается загрузка выбранного загрузочного образа

12. Выполняется запуск Windows PE из загрузочного образа; далее &‐ запуск setup.exe

13. Аутентификация, путем ввода доменных учетных данных

Установка и начальная настройка WDS-сервера


WDS-сервер представляет собой серверную роль, которая устанавливается стандартным методом – через программу «Диспетчер сервера»

1. Откройте окно диспетчера сервера из меню «Администрирование» либо вводом команды servermanager.msc

2. Установите флажок «Windows Deployment Services», нажмите «Далее», затем еще раз «Далее»

3. На вкладке выбора служб ролей установите оба флажка, таким образом вы установите собственно WDS-сервер совместно с TFTP-сервером, нажмите «Далее», и еще раз «Далее»

4. Начнется процесс установки ролей сервера. По итогам установки будет выведены ее результаты. Если потребуется, перезагрузите сервер

На этом завершена установка Windows Deployment Services. Однако для запуска работоспособного WDS-сервера требуется выполнить его настройку.

Для этого откройте консоль управления WDS, wdsmgmt.msc, раскройте список серверов в дереве консоли, и выполните команду «Настроить сервер» из контекстного меню локального WDS-сервера.

Будет запущен мастер начальной настройки WDS. На стартовом экране нажмите кнопку «Далее». Будет предложено выбрать папку, которая будет использоваться в качестве хранилища образов. Не рекомендуется использовать папку на системном томе, так как при более-менее значительной нагрузке на сервер может упасть производительность работы системы. Также учитывайте, что обязательным требованием по хранилищу образов является NTFS-раздел. Если ваш сервер будет обеспечивать развертывание систем в крупной (>100 рабочих станций) сети, то рекомендуется использовать для этой роли несколько выделенных физических серверов с SSD-накопителями, при условии пропускной способности сети >1 Гбит\с

После того, как папка назначения выбрана, можно нажать кнопку «Далее». Далее вам будет выведено сообщение о возможном конфликте с DHCP. Если роль DHCP выполняется на этом сервере, то может возникнуть конфликт использования порта 67 PXE-сервером и DHCP-сервером. Для его разрешения необходимо установить оба(!) флажка на данной странице мастера. Если на этом же сервере выполняется DHCP-сервер стороннего производителя, то требуется установить только второй флажок. После этого нажмите кнопку «Далее»

Следующая страница мастера начальной настройки WDS посвящена параметрам ответа клиентским компьютерам. На ней можно настроить следующие опции:

· Не отвечать никаким клиентским компьютерам.
При данной опции WDS-сервер будет фактически неработоспособен

· Отвечать только известным клиентским компьютерам.
При выборе данной опции WDS-сервер будет отвечать только тем компьютерам, MAC-адреса PXE-совместимых сетевых адаптеров которых были занесены в Active Directory в свойства учетной записи компьютера.

· Отвечать всем клиенским компьютерам (известным и неизвестным)
Эта опция позволяет любому колиенскому компьютеру в сети, который смог выполнить обнаружение PXE-сервера выполнять установку операционной системы при помощи Windows Deployment Services.
Установка флажка под этой опцией позволяет администратору напрямую управлять параметрами отклика.

Выбор одной из этих опций зависит от вашей корпоративной политике безопасности. Если это маленькая организация с определенным числом сотрудников и компьютеров, которые принадлежат вашей организации, то вы можете смело устанавливать опцию «Отвечать всем клиенским компьютерам (известным и неизвестным)» без флажка.

Если сеть большая и слабозащищенная от подключений неавторизованных компьютеров в физическом смысле, то имеет смысл установить опцию «Отвечать только известным клиентским компьютерам» для предотвращения неавторизованных установок ОС с вашего WDS-сервера.(пример – компьютерный класс, где доступ к сетевому коммутатору неограничен)

Устанавливать опцию «Отвечать всем клиентским компьютерам (известным и неизвестным)» и флажок имеет смысл только в большой организации, где WDS-сервер используется очень часто и вводить клиентские компьютеры в домен не требуется (пример – сервис-центр), но в тоже время требуется обезопасить WDS-сервер от неавторизованных подключений.

После выбора оптимальных параметров и их установки необходимо нажать кнопку «Далее» , на следующем экране снять флажок «Добавить образы на сервер», и нажать кнопку «Готово».

Начальная настройка сервера выполнена.

Расширенная настройка сервера


Опции, настроенные на этапе начальной настройки, были жизненно важными для работы Windows Deployment Services. Но список всех настроек WDS не ограничивается ими. Все параметры настройки WDS можно открыть, выполнив команду «Свойства» из контекстного меню сервера.

Более подробно рассмотрим каждую из вкладок.

Вкладка «Общие»


На неё выводятся общие параметры WDS: FQDN сервера, путь к хранилищу образов и режим работы сервера.

Вкладка «Отклик PXE»


Хранит в себе настройки отклика, которые были сделаны при начальной настройке сервера, а также параметры задержки отклика PXE.

Вкладка «Доменные службы Active Directory»



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

%First - Личное имя пользователя. Длину личного имени можно ограничить, добавляя числовое значение между % и First. Например, %10First ограничит длину личного имени десятью знаками.

%Last - Фамилия пользователя. Длину фамилии можно ограничить, добавляя числовое значение между % и Last. Например, %6Last ограничит длину фамилии шестью знаками.

%Username - Имя пользователя. Длину имени пользователя можно ограничить, добавляя числовое значение между % и Username. Например, %7Username ограничит длину имени пользователя семью знаками.

%MAC - MAC-адрес сетевого адаптера клиента.

%[0][n]# - К имени компьютера будет добавляться последовательный номер, состоящий из n цифр. Чтобы к последовательному номеру добавлялись нули, укажите ноль, как показано ниже. Например, если ввести %04#, будет использоваться трехзначный номер в диапазоне от 0001 до 9999.

Также на этой вкладке моно указать расположение для создания учетных записей компьютеров после выполнения установки.

Обычно, администраторы хранят учетные записи компьютеров в отдельных организационных подразделениях, поэтому имеет cмысл установить опцию «Следующее местоположение», и указать организационное подразделение.

Вкладка «Загрузка»

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

Есть возможность настроить, поведение PXE загрузчика:

· «Запрашивать нажатие клавиши F12 для продолжения загрузки PXE».
При выборе этой опции, при загрузке клиентского компьютера, после того, как был получен IP-адрес, требуется нажать клавишу F12 на клавиатуре, в течение ого времени, пока отображается приглашение. В противном случае загрузка будет прервана.

· «Всегда продолжать загрузку PXE».
Данная опция позволяет выполнить PXE-загрузку клиента без участия администратора

· «Продолжать загрузку PXE, если не нажата клавиша ESC».
Эта опция, на мой взгляд, самая оптимальная, так как не мешает процессу установки, но также позволяет администратору прервать процесс загрузки.

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

Вкладка «Клиент»


Эта вкладка содержит в себе следующие параметры:

· «Включить автоматическую установку».
При установке этого флажка и выборе файлов ответов для каждой архитектуры установка ОС на эту архитектуру будет выполняться в соответствии с параметрами, указанными в файле ответов.

· «Присоединение к домену».
При установке этого флажка клиентский компьютер будет включаться в состав рабочей группы WORKGROUP, а не того же домена, в который входит WDS-сервер.

· «Включить ведение журнала клиента».
Этот флажок отвечает за протоколирование процесса установки, а также за уровень протоколирования. Рекомендуется установить этот флажок, если при установке происходят сбои.

Вкладка "Протокол DHCP"


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

Вкладка «Многоадресная рассылки»


Помимо пересылки данных через порт 69, TFTP-сервер позволяет выполнять многоадресную рассылку.

Параметры IP-адресации для многоадресной рассылки лучше оставить по умолчанию.
Но параметры переноса требуют более детального рассмотрения:
· «Поддерживать одинаковую скорость рассылки для всех клиентов многоадресной рассылки в сеансе». Данная опция предназначена для малых сетей, состоящих из одного коммутатора, где скорость передачи данных по всем портам примерно одинакова.
· «Разделять клиентов на три сеанса (медленные, средние и быстрые)». Опция для крупных сетей.
· «Разделять клиентов на два сеанса (медленные и быстрые)». Опция для средних сетей.
· «Автоматически отключать клиенты, если скорость меньшее указанной (в Кбит/с)». Опция для очень крупных сред. Иногда бывает полезно отключить медленную передачу, чтобы запустить ее заново при большей пропускной способности сети, например после завершения других передач.

Вкладка «Дополнительно»


На этой вкладке лучше всего оставить все параметры по умолчанию.

Вкладка «Сеть»


На этой вкладке указывается диапазон UDP-портов, через который будет выполняться пересылка. Также здесь указывается профиль пропускной способности сети, если он не был определён автоматически.

Заключение


В данной стать был рассмотрена роль Windows Deployment Services, и перечислены все ее параметры и настройки, выполняемые из графического интерфейса. В продолжении этой статьи будет рассказано о работе с хранилищем образов, выполнении развёртывания, а также о работе со средством командной строки wdsutil.exe.