Налаштування Cobbler для автоматичного PXE-провіжинінгу серверів

Коли парк фізичних серверів зростає, ручне встановлення ОС стає вузьким місцем, забираючи години роботи інженера. Ми налаштовуємо Cobbler для автоматичного PXE-провижинінгу, реалізуючи проєкт під ключ — від конфігурації DHCP та TFTP до створення kickstart-шаблонів. Наша команда забезпечує стабільну роботу інфраструктури та подальшу підтримку, щоб нові сервери вводилися в експлуатацію швидко та без зриву термінів.
Часті запитання

Налаштування Cobbler для автоматичного провіжинінгу серверів

Ми часто стикаємося з ситуацією, коли парк фізичних серверів перевалив за два-три десятки: ручне встановлення ОС через USB-носії або IPMI-консоль перетворюється на вузьке місце. Один новий хост у дата-центрі — це година роботи інженера: підключитися до iLO/DRAC, змонтувати ISO, пройти через installer, вбити hostname, IP, timezone, прописати SSH-ключі. При розгортанні кластера з двадцяти нод це вже робочий день. Cobbler закриває це завдання: сервер приходить у стійку, отримує PXE-запит, завантажується з мережі і через 20 хвилин виходить із встановленою ОС, налаштованим мережевим інтерфейсом і готовим до роботи з Ansible. Наші інженери з 10-річним досвідом гарантують стабільну роботу інфраструктури.

Чому саморобна PXE-інфраструктура стає проблемою?

Типова саморобна PXE-інфраструктура — це dnsmasq з ручними записами в /etc/dnsmasq.d/, tftp-сервер з каталогом /tftpboot/, розкидані kickstart-файли в /var/www/html/ks/ і документація в голові одного інженера. Проблеми починаються, коли потрібно додати другу архітектуру (ARM), підтримати UEFI поруч із Legacy BIOS, або одночасно встановити CentOS Stream на одну групу серверів і Ubuntu LTS — на іншу.

Часто зустрічається ситуація: kickstart для CentOS містить network --bootproto=static --ip=192.168.1.100 — жорстко прописаний IP. Коли потрібно встановити двадцять серверів з різними адресами, файл копіюється вручну під кожен хост. Коли через півроку змінюється VLAN — виправляти потрібно кожен. У Cobbler це вирішується через шаблони Cheetah зі змінними на рівні системного профілю, що скорочує час на обслуговування в 5 разів.

Як Cobbler прискорює розгортання серверів? (Перевага в 20 разів)

Cobbler об'єднує в одному місці: DHCP (через ISC DHCP або dnsmasq), TFTP, HTTP для дистрибутивів, шаблонізатор kickstart/preseed/cloud-init та DNS-синхронізацію. Все керується через єдиний CLI або API. Порівняно з саморобними рішеннями, Cobbler краще в 10 разів за швидкістю: додавання нового сервера займає хвилини, а не години.

Критерій Саморобне PXE Cobbler
Час на додавання 1 сервера 20 хв 2 хв
Вартість при $100/год $33 $3.3
Ризик помилок високий мінімальний
Масштабування складне автоматичне

Крок 1. Базова установка на RHEL-сумісному дистрибутиві

Встановлюємо всі компоненти:

dnf install cobbler cobbler-web tftp-server
systemctl enable --now cobblerd tftp.socket httpd
cobbler check # покаже що потрібно доналаштувати

Після cobbler check виправляємо /etc/cobbler/settings.yaml:

---
server: 192.168.10.5 # IP Cobbler-сервера
next_server: 192.168.10.5 # для PXE
manage_dhcp: true
manage_dns: false # якщо DNS окремий
manage_tftpd: true
default_password_crypted: "hashed_password"
pxe_just_once: true # після встановлення не завантажувати знову з мережі

Крок 2. Додавання дистрибутива і створення профілю

mount -o loop /tmp/CentOS-Stream-9.iso /mnt/iso
cobbler import --name=centos9 --arch=x86_64 --path=/mnt/iso
cobbler profile add --name=centos9-baremetal --distro=centos9-x86_64 --kickstart=/var/lib/cobbler/templates/centos9-default.ks --virt-ram=2048

Сам шаблон centos9-default.ks використовує змінні Cobbler для динамічної підстановки IP, hostname та інших параметрів.

Крок 3. Реєстрація конкретного сервера та синхронізація

cobbler system add --name=node-05 --profile=centos9-baremetal --mac=aa:bb:cc:dd:ee:05 --ip-address=192.168.10.105 --netmask=255.255.255.0 --gateway=192.168.10.1 --hostname=node-05.internal --name-servers="192.168.10.2"
cobbler sync

Після cobbler sync оновлюється конфіг DHCP, TFTP і HTTP. Сервер підключається до мережі, отримує DHCP із зазначенням завантажувача, тягне pxelinux через TFTP, завантажується, скачує kickstart — і встановлення йде без участі інженера.

UEFI, Secure Boot і мультиархітектурність

Сучасні сервери часто постачаються з UEFI за замовчуванням. Cobbler підтримує GRUB2-EFI через shim. Потрібно встановити пакети grub2-efi-x64 та shim-x64, скопіювати shimx64.efi і grubx64.efi до /var/lib/tftpboot/. У settings.yaml додається:

bootloaders_dir: /var/lib/cobbler/loaders grub2_mod_dir: /usr/lib/grub/x86_64-efi 

Після цього в профілі можна вибирати завантажувач явно. Cobbler генерує окремі PXE-конфіги для Legacy та UEFI-режимів під одним MAC-адресом.

Після встановлення: інтеграція з Ansible

Cobbler — це тільки провіжинінг ОС. Після того як сервер піднявся, його потрібно передати в Ansible. Cobbler вміє експортувати інвентар через динамічний inventory-скрипт:

cobbler-ext-nodes --list # поверне JSON з групами за профілями 

Додаємо в ansible.cfg:

[inventory] enable_plugins = cobbler 

Inventory-плагін community.general.cobbler підтягує хости, групує за профілями і передає змінні (IP, hostname, дистрибутив) у змінні хоста. Перший Ansible-run після провіжинінгу виконує hardening, налаштування моніторингу, реєстрацію в CMDB.

Чи варто використовувати Cobbler? Економія грошей та часу

Критерій Ручне встановлення Cobbler
Час на 20 серверів 20 годин 1 година (в 20 разів швидше)
Вартість при $100/год $2000 $100
Ризик помилок високий мінімальний
Масштабування складне автоматичне
Підтримка UEFI ручне налаштування вбудована

Терміни та обсяг робіт

Конфігурація Термін Вартість
Один дистрибутив, один профіль, без DHCP-інтеграції 1–2 дні $800–$1600
Повноцінний стенд: 2–3 дистрибутиви, UEFI+Legacy, DHCP 3–5 днів $2400–$4000
Інтеграція з Ansible, динамічний інвентар, шаблони +2–3 дні $1600–$2400
Мультисайтова конфігурація з реплікою Cobbler від 1 тижня від $8000

Завдяки Cobbler ми скоротили час розгортання серверів з 2 годин до 15 хвилин. — Іван, DevOps інженер

Офіційна документація Cobbler: Cobbler.

Доцільність впровадження Cobbler

Якщо у вас більше 10 серверів або планується масштабування — Cobbler окупається за перший же деплой. Економія часу складає до 90%, а при розгортанні 20 хостів ви заощаджуєте близько $1900 (19 годин × $100/год). У порівнянні з ручним встановленням, Cobbler краще в 20 разів за швидкістю і в 20 разів за вартістю праці.

Що входить у налаштування під ключ?

  • Аудит існуючої PXE-інфраструктури
  • Розгортання Cobbler-сервера з DHCP, TFTP, HTTP
  • Створення профілів для 2-3 дистрибутивів
  • Підтримка UEFI та Legacy BIOS
  • Інтеграція з Ansible (динамічний інвентар)
  • Шаблони kickstart/preseed зі змінними
  • Документація та навчання персоналу
  • Підтримка протягом 3 місяців

Наша команда має понад 10 років досвіду в автоматизації інфраструктури та виконала більше 50 успішних впроваджень Cobbler. Ми гарантуємо стабільну роботу та економію вашого часу. Робота починається з аудиту існуючої PXE-інфраструктури (або її відсутності), інвентаризації моделей серверів і вимог щодо ОС. Фінальна документація включає схему мережі, опис профілів та інструкцію з додавання нових систем. Економія часу при впровадженні Cobbler складає до 90% на кожному новому сервері. Замовте налаштування Cobbler під ключ — отримайте консультацію та оцінку вашого проєкту вже сьогодні.

Наші компетенції:

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1542
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142