vmware-puppet-wall.png

VMware vSphere - деплой виртуалки с авто добавлением в puppet

Всех приветствую, Сегодня хотелось бы поделиться информацией, о том как можно упростить немного жизни при развертывании линуксовых виртуалок в VMware с помошью политик кастомизации. Конкретно про мой кейс. У меня есть шаблон виртуальной машины, ранее в этом шаблоне были произведенны настройки безопасности системы и разметка диска. Установлен стандартный пакет программ (vim, tmux, etc..) и агенты мониторинга/сбора логов. При создании новой виртуальной машины из этого шаблона, далее приходиться в ручном порядке настраивать сетку, hostname и добавлять/регистрировать puppet-агент. Затем происходит магия, и puppet сам донастраивал машину под нашу инфру. ...

March 13, 2024 · 5 min · 1022 words · Tony

Puppet - Создаем кастомные факты

Привет всем. В рамках данной заметки хотелось бы поделиться опытом использования кастомных, или как их еще называют внешних (external). Перед каждым запросом к серверу, puppet-агент собирает все факты о системе при помощи улититы facter. Далее эти факты будут переданы на puppet-мастер, который в свою очередь опираясь на полученные факты сгенерит и отправит puppet-агенту обновленный каталог. В больших инфраструктурах бывает недостаточно использования стандартного набора фактов, и дефолтный список дополняют внешними. Мой случаи описывает ситуацию, в которой требуется расширить возможности hiera, за счет логического разделения инфраструкруты по запущенным сервисам, путем добавления дополнительных фактов. ...

December 18, 2023 · 4 min · 651 words · Tony

Подключаем PuppetDB + Puppet Dashboard

Привет всем, Продолжаем практиковаться с puppet, и в рамках этой заметки дополним нашу инфраструктуру новыми компонентами - PuppetDB и Dashboard. Настройка PuppetDB PuppetDB - по сути это отдельный модуль, представляющий из себя хранилище puppet. Все данные помещаются в базу на postgresql. И в дополнение после внедрения puppetdb, нам открывается возможность взаимодействия посредством API. В базе хранятся данные: Последние факты по всем узлам; Последний католог каждого узла; Ну и опционально, есть возможность хранения отчетов по каждому хосту. Установка PostgreSQL Для начала настроим postgresql, и создадим новую базу данных. В документации рекомендуют устанавливать 11 версию postgresql или выше. ...

November 13, 2023 · 11 min · 2187 words · Tony

Puppet - интеграция Hiera

Всем привет, В продолжении знакомства с puppet, хотелось бы сегодня поделиться примером использовании такого замечательного дополнения, как hiera. Немного теории Hiera - это уже встроенный в puppet компонент позволяющий определить переменные или классы под определенные сервера или на группу серверов. В более ранних версиях puppet, для использования иерархии, требовалось подключать hiera как плагин. Затем в последующих версиях она была включена, так скажем в ядро puppet. Название компонента hiera обусловлено иерархической структурой, с помошью которой мы можем определить общие классы и переменные для всех хостов или определенной группы хостов. Или же можем определить классы и переменные точечно для каких-то хостов. ...

November 9, 2023 · 9 min · 1821 words · Tony

Puppet - добавляем кросс-платформенности в модуль

Привет всем, возможно вы читали прошлый пост об использовании puppet. И там в качестве первого примера мы писали модуль, который ставит zabbix-агентов на хосты. Там есть нюанс, этот модуль будет работать только с rhel-based операционными системами, а что если у нас огород из Debian/Ubuntu и Rhel? - Для решения этой задачи модифицируем ранее написанный модуль, добавим так сказать кроссплатформености. Готовим новый хост Для тестов, к текущей инфраструктуре добавил новую ноду на ubuntu22.04 (puppet-node03). Подготовим новую ноду, и заинставим на нее puppet-агента. ...

September 11, 2023 · 7 min · 1313 words · Tony
puppet-setup-wall.png

Puppet - основы и интеграция

Привет всем, Сегодня хотел бы поделится вводной информацией, относительно того как начать использоваться puppet. Итак, как многим уже известно Puppet - система управления конфигурацией кучки хостов. С его помощью мы можем приводить и поддерживать хосты в нужном нам состоянии. Как работает puppet Puppet, в отличии от ansible, работает по pull модели. Хосты на которых устанавливается puppet-агент, каждые пол часа обмениваются информацией с puppet-мастером для получения новой конфигурации. При этом клиенты puppet отправляют факты о себе мастеру. И в случаи наличия изменений применяют их у себя локально. ...

August 30, 2023 · 13 min · 2660 words · Tony