- PVSM.RU - https://www.pvsm.ru -
Мой коллега Гэри Уильямс – системный администратор с большим опытом работы – поделился советами о том, как можно использовать Windows Deployment Services для развертывания не только ОС Windows. И сегодня я предлагаю его рекомендации вашему вниманию.
Windows Deployment Services (WDS) – полезное дополнение к платформе Windows. Для развертывания виртуальных машин с гостевой ОС Windows этот инструмент можно использовать прямо «из коробки». А после нескольких ловких движений руками он вполне в состоянии справиться с задачей развертывания серверов Linux и VMware при помощи загрузочного меню Preboot eXecution Environment (PXE).
В числе этих манипуляций – парочка команд, запускаемых из командной строки. Нужно всего-навсего переключить загрузчик PXE, используемый Windows, на загрузчик для Linux. В результате создастся пункт меню, позволяющий переключать загрузку с Linux PXE на таковую для Windows в случае необходимости, а IIS будет использоваться для работы веб-интерфейса для скачивания конфигурации Linux.
Я использую настроенный WDS для развертывания Windows, CentOS и ESXi, про что и расскажу в этом посте. Думаю, что пользователи других платформ найдут здесь идеи и для их развертывания.
Для нашего примера возьмем чистый сервер Windows с диском С: на 60 ГБ под ОС и диском WDS на 300 ГБ для различных файлов WIM, которые нам понадобятся для установки Windows и Linux.
Install-WindowsFeature –name Web-server -includemanagementtools
Install-Windowsfeature –name WDS -includemanagementtools
-Boot Server Host Name — ввожу IP-адрес сервера WDS.
-Bootfile Name – указываю исполняемый файл WDS, который хочу запускать на клиенте.
Остальные 3 настройки имеют стандартные значения для DHCP.
— Можно интегрировать сервер с Active Directory, т.к. на этом этапе мы задаем настройки Windows, но я предпочитаю отдельно стоящий сервер:
Согласно указываемой настройке, он будет отвечать на запросы клиентских машин и не потребует никаких «танцев» с AD:
— Обычно я меняю путь с C:RemoteInstall на E:RemoteInstall, где E: — это упомянутый выше второй диск, который я предназначил для файлов WIM, Linux и пр.
Теперь можно загрузить виртуальную машину с помощью PXE, увидев стандартный для Windows экран загрузки WDS. Это стоит сделать для того, чтобы убедиться, что все работает, поскольку далее мы будем вносить изменения в основную функциональность WDS.
Итак, наш сервер WDS готов к развертыванию образов Windows, но мы хотим, чтобы можно было развертывать и образы Linux. Для этого мы поменяем загрузчик WDS на Linux PXE.
Для начала нам потребуется копия sysLinux [1].
Важно! Версия должна не превышать 3.86, иначе она не будет работать с ESXi (поскольку его инсталлятор базируется аж на 3.26).
Распаковываем sysLinux 3.86. zip во временный каталог и затем выполняем следующие шаги:
corepxeLinux.0
com32menuvesamenu.c32
com32moduleschain.c32
wdsutil /set-server /bootprogram:bootx86pxeLinux.com /architecture:x86
wdsutil /set-server /N12bootprogram:bootx86pxeLinux.com /architecture:x86
wdsutil /set-server /bootprogram:bootx64pxeLinux.com /architecture:x64
wdsutil /set-server /N12bootprogram:bootx64pxeLinux.com /architecture:x64
DEFAULT vesamenu.c32
PROMPT 0
NOESCAPE 0
ALLOWOPTIONS 0
# Timeout in units of 1/10 s
TIMEOUT 0
MENU MARGIN 10
MENU ROWS 16
MENU TABMSGROW 21
MENU TIMEOUTROW 26
MENU COLOR BORDER 30;44 #20ffffff #00000000 none
MENU COLOR SCROLLBAR 30;44 #20ffffff #00000000 none
MENU COLOR TITLE 0 #ffffffff #00000000 none
MENU COLOR SEL 30;47 #40000000 #20ffffff
MENU BACKGROUND flow.jpg
MENU TITLE PXE Boot Menu
#---
LABEL wds
MENU LABEL Windows Deployment Services
MENU DEFAULT
KERNEL pxeboot.0
#---
LABEL CentOS68
MENU LABEL CentOS 6.8
KERNEL /web/CentOS/6.8/images/pxeboot/vmlinuz
append initrd=/web/CentOS/6.8/images/pxeboot/initrd.img root=/dev/ram0 init=/Linuxrc ramdisk_size=100000 ks=https://[IP of your WDS server]/CentOS/6.8/centos-base-ks.cfg
#---
LABEL CentOS72
MENU LABEL CentOS 7.2
KERNEL /web/CentOS/7.2/images/pxeboot/vmlinuz
append initrd=/web/CentOS/7.2/images/pxeboot/initrd.img
#---
LABEL VMWare500U3
MENU LABEL VMWare 5.0.0 U3
KERNEL /web/VMWare/5.0.0/U3/mboot.c32
APPEND -c /web/VMWare/5.0.0/U3/boot.cfg
#---
LABEL VMWare553b
MENU LABEL VMWare 5.5 U3b
KERNEL /web/VMWare/5.5.0/U3b/mboot.c32
APPEND -c /web/VMWare/5.5.0/U3b/boot.cfg
#---
LABEL VMWare60
MENU LABEL VMWare 6.0
KERNEL /web/VMWare/6.0/mboot.c32
APPEND -c /web/VMWare/6.0/boot.cfg
#---
LABEL VMWare65
MENU LABEL VMWare 6.5
KERNEL /web/VMWare/6.5/mboot.c32
APPEND -c /web/VMWare/6.5/boot.cfg
#---
LABEL Abort
MENU LABEL AbortPXE
Kernel abortpxe.0
#---
LABEL local
MENU LABEL Boot from Harddisk
LOCALBOOT 0
Type 0x80
IIS нужен нам для файлов установки CentOS и ESXi. Я обычно создаю вот такую файловую структуру web-сервера на VMDK с данными:
-E:web – корневая папка, на которую указывает IIS
-E:webcentos7.x7.1 – установочные файлы CentOS 7.1
-E:webvmware6.5 – установочные файлы VMware 6.5
В настройках IIS нужно включить опцию просмотра файловой структуры, чтобы инсталляторы Linux и VMware могли обратиться к соответствующим файлам.
Для этого запускаем консоль управления IIS, выбираем нужный сервер, выбираем его Default site и включаем Directory browsing командой Enable.
Также можно включить работу по HTTPS.
Теперь можно добавить возможность установки Linux. Обычно я выполняю вот такие шаги:
LABEL CentOS72
MENU LABEL CentOS 7.2
KERNEL /web/CentOS/7.2/images/pxeboot/vmlinuz
append initrd=/web/CentOS/7.2/images/pxeboot/initrd.img inst.repo=[IP of your WDS server]/CentOS/7.2 ks=[IP of your WDS server]/CentOS/7.2/centos-base-ks.cfg
В завершение давайте добавим возможность установки ESXi 6.5.
Возможно, кому-то вся эта процедура покажется излишней морокой – но ее результат позволит использовать меню PXE для переключения на WDS и выбирать любую ОС Windows OS, поддерживающую файл WIM. Кроме того, его же можно будет использовать и для установки Linux и VMware. Вы также можете использовать другие программы на свой вкус, например, GParted или Memtest.
Автор: polarowl
Источник [2]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/prakticheskie-sovetyi/277558
Ссылки в тексте:
[1] sysLinux: http://www.kernel.org/pub/Linux/utils/boot/sysLinux/
[2] Источник: https://habrahabr.ru/post/353274/?utm_source=habrahabr&utm_medium=rss&utm_campaign=353274
Нажмите здесь для печати.