Автоматическая установка Centos с помощью cobbler

Thank you for reading this post, don't forget to subscribe!

Cobbler-это Linux систе­ма, для авто­ма­ти­че­ской уста­нов­ки и обнов­ле­ния опе­ра­ци­он­ных систем по сети. Неза­ме­ни­мая вещь для систем­ных адми­ни­стра­то­ров кото­рым по дол­гу служ­бы при­хо­дит­ся раз­во­ра­чи­вать систе­му сра­зу на несколь­ких десят­ков машин.

Установка Cobbler

Уста­нав­ли­ва­ем репо­зи­то­рий epel-release

Уста­нав­ли­ва­ем сам cobbler с необ­хо­ди­мы­ми пакетами

Запус­ка­ем cobbler и дру­гие сер­ви­сы необ­хо­ди­мые для рабо­ты и добав­ля­ем их в автозагрузку

Если запу­щен selinux то отклю­ча­ем его, редак­ти­ру­ем файл /etc/selinux/config

Пере­за­гру­жа­ем сервер

Добав­ля­ем раз­ре­ше­ния в firewalld

под­клю­ча­ем­ся к веб интерфейсу

Вво­дим логин пароль cobbler/cobbler

Если вы види­те эту стра­ни­цу, то первую часть уста­нов­ки мож­но счи­тать завер­шен­ной. Все даль­ней­шие настрой­ки мож­но делать как через кон­соль так и через веб интерфейс.

Настройка Cobbler

Зада­ем пароль root. Этот пароль будет уста­нав­ли­вать­ся в новых уста­нав­ли­ва­е­мых систе­мах, если не задан в kickstart фай­ле. Для это­го гене­рим хэш пароля

[root@cobbler ~]# openssl passwd -1
Password:
Verifying - Password:
$1$ARiIyBMV$VYePnl2guqtp3lHKqPfI10

Сохра­ня­ем ори­ги­наль­ный файл /etc/cobbler/settings на вся­кий случай.

Редак­ти­ру­ем settings при­ве­дя его к сле­ду­ю­ще­му виду

В пара­метр default_password_crypted про­пи­сы­ва­ем сге­не­ри­ро­ван­ный хэш
next_server – адрес tftp сервера
server – ip cobbler сер­ве­ра У нас tftp и cobber сер­вер на одной машине, поэто­му ука­зы­ва­ем ip адрес сервера.

 

Пра­вим файл: /etc/cobbler/modules.conf
при­во­дим к виду:

Редак­ти­ру­ем файл /etc/cobbler/dhcp.template, в нем про­пи­сы­ва­ем под­сеть кото­рая будет выда­вать­ся по DHCP клиентам

192.168.1.1 - это наш gateway

Отре­дак­ти­ру­ем файл /etc/cobbler/dnsmasq.template ука­зав диа­па­зон адре­сов выда­ва­е­мых PXE клиентам

Пере­за­пус­ка­ем cobbler

выпол­ня­ем

cat /etc/dhcp/dhcpd.conf

[codesyntax lang="php"]

[/codesyntax]

[codesyntax lang="php"]

[/codesyntax]

Если видим TASK COMPLETE зна­чит син­хро­ни­за­ция про­шла успеш­но Про­ве­ря­ем что все нормально

Вывод пока­зы­ва­ет следующее

[codesyntax lang="php"]

[/codesyntax]

В общем кри­ти­че­ских заме­ча­ний нет, ну давай­те испра­вим и эти Запус­ка­ем команду

[codesyntax lang="php"]

[/codesyntax]

Редак­ти­ру­ем /etc/debmirror.conf и /etc/debmirror.conf

Уста­нав­ли­ва­ем fence-agents

сно­ва про­ве­ря­ем кобблер

Теперь вывод пока­зы­ва­ет что ника­ких заме­ча­ний нет

[root@cobbler ~]# cobbler check
No configuration problems found. All systems go.

Подготовка установочного образа системы

Сле­ду­ю­щим шагом мон­ти­ру­ем iso образ. Загру­зим на наш сер­вер iso образ какой нибудь систе­мы, напри­мер Centos 7

Мон­ти­ру­ем iso образ в mnt

Пере­хо­дим в веб интер­фейс и импор­ти­ру­ем образ, для это­го пере­хо­дим на вклад­ку Import DVD, Запол­ня­ем поля и нажи­ма­ем Run

=============================

Или через консоль

Если полу­чи­ли ошибку

Уда­ля­ем дирек­то­рию /var/www/cobbler/ks_mirror/CentOS7-x86_64

Обнав­ля­ем сиг­на­ту­ру и пере­за­пус­ка­ем сервис.

Сно­ва импор­ти­ру­ем образ системы.

Если все успеш­но вы уви­ди­те сле­ду­ю­щий вывод

Смот­рим смон­ти­ро­ван­ные образы

Или через веб интер­фейс меню Distros

Инфор­ма­цию о сбор­ке мож­но посмот­реть командой

Создание kickstart файла для установки

Сле­ду­ю­щим шагом созда­ем Kickstart файл. Назо­вем его Centos7.ks. В этом фай­ле зада­ем пара­мет­ры для авто­ма­ти­че­ской уста­нов­ки, такие как пароль для поль­зо­ва­те­ля root, настрой­ки сети и т.д. Дирек­то­рия для kickstart фай­лов /var/lib/cobbler/kickstarts.

[codesyntax lang="php"]

[/codesyntax]

Обнов­ля­ем профиль

необя­за­тель­ная часть (если вруч­ную клю­чи импор­ти­ру­ешь то надо)
wget https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
mv RPM-GPG-KEY-elrepo.org  /var/www/cobbler/links/centos7-x86_64/

Запуск установки по сети

Вклю­ча­ем ком­пью­тер на кото­рый нуж­но уста­но­вить систе­му, в каче­стве источ­ни­ка загруз­ки выби­ра­ем загруз­ку по сети Net boot. Если все сде­ла­но пра­виль­но, то мы уви­дим как наш ком­пью­тер полу­ча­ет ip адрес и начи­на­ет загру­жать по tftp ОС

отре­дак­ти­ро­вать дан­ное окно мож­но вот тут:
/var/lib/tftpboot/pxelinux.cfg/default

 

боль­шой спи­сок тут
https://www.golinuxcloud.com/rhel-centos-8-kickstart-example-generator/