Установка Auto Deploy, шаг за шагом
Добрый день уважаемые читатели блога pyatilistnik.org, сегодня хочу рассказать, как производится установка Auto Deploy. Уверен, что многие из вас уже слышали про данный продукт, а может быть и уже пробовали внедрять, если нет, то эта статья для вас. Я всегда стараюсь вам подкидывать интересные проекты, статьи по теме виртуализации, давно известно, что когда ты кому-то объясняешь, как и что работает, то сам в этом становишься разбираться лучше, поэтому старайтесь общаться и не зажимать знания, не будьте редисками. Всегда приятно, когда куму-то помог.
Что это:
Auto Deploy – это сервер дистанционной загрузки ESXi по PXE
Зачем он нужен :
Для упрощения ввода в эксплуатацию новых серверов, обновления существующих.
Как это работает:
Для того чтобы ввести новый сервер в эксплуатацию, нам не надо устанавливать на него ESXi. Нам надо:
- Включить этот сервер, биос должен быть настроен на загрузку по сети.
- Дождаться, пока на этом сервере не запуститься ESXi, и он не будет автоматически добавлен в vCenter.
- Создать файл ответов для профиля настроек этого сервера – всякие IP адреса, имя, и прочее уникальное.
После этого при каждой перезагрузке пункт 2 будет повторятся, но уже без нашего вмешательства к серверу будут применяться настройки.
Заменив только образ на сервере AutoDeploy, мы получим обновленные сервера ESXi просто после их перезагрузки, так как стартовать они будут с этого обновленного образа.
Выводы
Прикольная штука. Работает. Нареканий, на удивление, не вызвало. Однако с использование в производственной среде пока непонятно – смущает зависимость возможности старта всех(!) серверов ESXi от машин vCenter и AutoDeploy. Получается, они должны работать или на отдельном кластере vSphere, или на железном сервере, рядом с которым стоит резервный железный сервер. Интересно послушать ваши мнения, особенно тех, в чем ведении десятки и сотни серверов ESXi.
Настройка VMware Auto Deploy
Шаги настройки этого продукта.
1) Устанавливаем Auto Deploy под Windows.

По идее, правильно это делать на отдельную машину, однако у меня почему-то не получилось – выдавало ошибки о невозможности сгенерить ssl. В итоге поставил на машину с vCenter.
Кстати, на vCenter Appliance служба Auto Deploy уже предустановлена.
После успешной установки появляется пиктограмма на странице Home в клиенте vSphere
2) Устанавливаем доп-софт, настраиваем DHCP и TFTP
- PowerCLI
- какой-нибудь TFTP-сервер
- нужен будет DHCP
Также TFTP и DHCP требует специальной настройки:
Пройдя по иконке Auto Deploy в клиенте vSphere, мы получим возможность загрузить файл – TFTP Boot.

Следует загрузить этот архив, и распаковать в папку, выбранную для доступности по TFTP. Файл “undionly.kpxe.vmw-hardwired” следует указать как загрузочный образ.
В настройках DHCP следует прописать параметры:
66 – адрес сервера TFT
67 – имя файла загрузки (undionly.kpxe.vmw-hardwired)
(для серверов с EFI вместо BIOS файл вроде другой).
Теперь в данном сегменте сети сервера могут загрузиться по PXE, однако загружается только предварительная оболочка, которая ругается что нет образа ESXi для загрузки его на данный сервер

3) Настраиваем Auto Deploy
Нам потребуется PowerCLI и в нем открытая сессия к vCenter.
Кроме этого, потребуется дистрибутив ESXi (не в виде iso, а в виде zip. Т.н. software depot, загружается там же, где и iso-вариант).
Обратите внимание – этот дистрибутив можно изменить под себя, обновив или добавив драйверы под свое железо, или такие компоненты как, например, виртуальная циска.
После этого:

В командлете New-DeployRule параметром –Item мы привязываем к стартующим с этого правила серверам контейнер в vCenter (datacenter, cluster, folder) куда они должны быть помещены, Image profile, host profile.
Кроме как для самого первого сервера указывать, скорее всего, будем сразу несколько параметров, как в моем примере:

- “WithLSI” это Image Profile
- ClusterAutoDeploy – имя моего кластер HA\DRS
- 2AutoDeploy – название профиля настроек, host profile. У вас его пока нет, поэтому в самый первый раз его не указывайте, укажем позже.
Теперь сервера начнут загружаться в ESXi. И даже автоматически будут зарегистрированы в vCenter, в тот Datacenter, Cluster или Folder, который был указан при создании правила (у меня это кластер). Какие паттерны, признаки серверов, доступны:

Как видите, мы можем довольно точно назначать тот или иной образ ESXi на сервера по критериям. По производителю, по mac адресу, и пр.
4) Настройка автоматической настройки серверов
Итак, первый сервер стартовал и даже был добавлен в vCenter.
Однако – сервер никак не настроен.
С учетом того, что ESXi был загружен в память по сети, даже если что-то настроить руками – эти настройки пропадут после перезагрузки.
Поэтому для настройки серверов, разворачиваемых при помощи Auto Deploy используется механизм Host Profiles, параметры которого сохраняются в базе vCenter.
Нам потребуется настроить этот первый сервер:
- Виртуальные коммутаторы, интерфейсы VMkernel.
- iSCSI, NFS
- Syslog
- NTP
- и пр.
Теперь создадим с этого сервера профиль, и сразу на этот же сервер его и назначим.
Проверим на соответствие. Проверка покажет расхождения в конфигурации, нам потребуется создать файл ответов (Update answer file).
После прохождения мастера – Check answer file, затем check complince.
Значение в столбце Answer File Status должно стать Complete, настройки сервера должны стать соответствующими этому профилю.
Все. Теперь при перезагрузках сервер будет не только загружать на себя ESXi, но и конфигурацию подтягивать.
На этом этапе мы имеем первый сервер, и этот сервер загружается по сети, и настраивается профилем настроек.
5) Настройка загрузки второго и всех следующих серверов:
Надо изменить правило AutoDeploy так, чтобы оно еще профиль настроек привязывало к загружаемым серверам. Допустим, вы делали по моему примеру, и создали правило командой:

Удалим это правило командой

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

Ну и активируем:

Все.
Теперь любой новый сервер, будучи загруженным в первый раз, сразу попадает в кластер “ClusterAutoDeploy”, и на него назначается профиль настроек “2AutoDeploy”.
Нам остается нажать “Update answer file”, указать уникальные параметры типа IP адресов и т.п., и все – сервер готов к эксплуатации, его настройки после каждой перезагрузки будут подтягиваться из этого файла ответов.
Обновление образа
Допустим, у нас есть желание заменить дистрибутив ESXi, с которого стартуют сервера. Например, мы хотим использовать VMware HA – и нам имеет смысл добавить его агента сразу в образ. Для этого нам потребуется следующие команды:

Материал сайта Pyatilistnik.org