Шаг 1. Установка ОС и Важный нюанс с Именем 🏷️
Запускай установку Ubuntu (важно, версию: 22.04). Процесс стандартный, но есть один критический момент:
- В меню, где нужно ввести Server name (Hostname): 👉 Напиши:
puppet - Username:
user(или как тебе удобно). Установка ssh:
sudo apt install openssh-serverШаг 2. Подготовка к установке (В консоли) 🛠️
Как только сервер установится и перезагрузится:
- Подключись через SSH (PowerShell с реального ПК):
ssh user@IP-АДРЕС - Puppet очень чувствителен к точному времени (из-за сертификатов безопасности). Проверь время:
date- Обнови систему перед стартом:
sudo apt update && sudo apt upgrade -yПоменять имя, если было выбрано другое:
sudo hostnamectl set-hostname puppetИсправляем файл hosts (ОБЯЗАТЕЛЬНО!) ⚠️
Если пропустить этот шаг, команда sudo начнет “тупить” (долго думать), а Puppet не сможет подключиться сам к себе.
- Открой файл hosts:
sudo nano /etc/hosts
- Найди строчку, которая начинается на
127.0.1.1(или127.0.0.1). Там будет старое имя. - Замени старое имя на
puppet.- Пример:
127.0.1.1 puppet
- Пример:
- Сохрани:
Ctrl+O→Enter→Ctrl+X.
Перезапуск:
sudo reboot
Шаг 3. Подключаем репозиторий Puppet 8 📦
В стандартном Ubuntu репозитории Puppet обычно очень старый. Нам нужна версия 8 (Platform 8) — это текущий стандарт индустрии.
Выполни эти команды по очереди:
- Скачиваем пакет репозитория:
wget https://apt.puppet.com/puppet8-release-noble.deb(Если скажет “Command not found”, поставь wget: sudo apt install wget).
2. Устанавливаем его:
sudo dpkg -i puppet8-release-noble.deb
- Обновляем списки пакетов (чтобы система увидела новый софт):
sudo apt update
Шаг 4. Установка Puppetserver 🎭
Теперь ставим сам сервер. Это “мозги” всей конфигурации.
sudo apt install puppetserver -y
Он подтянет Java и кучу библиотек. Это займет пару минут.
Шаг 5. Настройка памяти (Java) 🧠
По умолчанию Puppet Server хочет отхватить 2 ГБ оперативной памяти (Java Heap). Так как мы выделили виртуалке 4 ГБ, настройки по умолчанию нам подходят идеально. Но давай просто заглянем в конфиг, чтобы ты знал, где это менять в будущем (например, если сервер начнет падать):
- Открой файл настроек:
sudo nano /etc/default/puppetserver- Найди строку:
JAVA_ARGS="-Xms2g -Xmx2g ..." - Убедись, что там стоит
2g(2 Гигабайта). Если вдруг у виртуалки станет меньше памяти, здесь нужно будет поменять на1g. - Выходи (
Ctrl+X), ничего не меняя.
Шаг 6. Первый запуск (Долго!) ⏳
Самый ответственный момент. Первый запуск тяжелый, так как сервер генерирует криптографические ключи и сертификаты (CA).
- Запускаем:
sudo systemctl start puppetserver
⚠️ **Внимание:** Команда может "повиснуть" на минуту или две. **Не прерывай её!** Это нормально.
2. Включаем автозапуск (чтобы стартовал сам):
sudo systemctl enable puppetserver
- Проверяем статус:
sudo systemctl status puppetserver
Должно гореть зеленым: active (running).
Шаг 7. Проверка доступности 📡
Puppet работает на порту 8140. Давай проверим, слушает ли он его.
ss -tulpn | grep 8140Если видишь строку, где есть :::8140 и java, — поздравляю! Твой Puppet Master жив и ждет приказов.
Шаг 8. Можно посмотреть файл настроек📡
sudo nano /etc/default/puppetserverШаг 9. Чиним права доступа 🔑
Введи эту команду, чтобы отдать все папки Puppet правильному владельцу:
sudo chown -R puppet:puppet /etc/puppetlabs /var/log/puppetlabs /var/run/puppetlabs /opt/puppetlabs/server/data/puppetserverШаг 10. Перезапускаем сервер 🔄
Теперь, когда права есть, он сможет создать ключи.
sudo systemctl restart puppetserverПодожди минуту и проверь статус:
sudo systemctl status puppetserverПрописываем пути:
echo 'export PATH=$PATH:/opt/puppetlabs/bin:/opt/puppetlabs/puppet/bin' >> ~/.bashrcПримени изменения:
source ~/.bashrcПроверка версии:
puppet --versionПроверка сервера:
sudo puppet agent -tШаг 11. Исправляем /etc/hosts на Puppet Server 🛠️
Мой прошлый совет про 10.0.1.200 был бы верен, если бы сервер смотрел прямо в интернет. Но в твоей схеме сервер должен знать, что он сам — это 192.168.0.14.
- Подключись к Puppet (через SSH, как ты уже делал).
- Открой файл hosts:
sudo nano /etc/hosts
- Впиши туда его внутренний адрес:
192.168.0.14 puppet puppet.local- Сохрани (
Ctrl+O,Enter,Ctrl+X). Теперь сервер знает: “Я — puppet, мой адрес — 192.168.0.14”.