Puppet что за программа

Библиотека сайта rus-linux.net

/etc/resolv.conf . Без инструментов управления конфигурацией систем эти изменения могут вноситься либо путем установки соединений по протоколу SSH с каждым из серверов и ручного редактирования упомянутого файла конфигурации, либо путем копирования на каждый из серверов обновленного файла конфигурации с помощью утилиты scp , на что уйдет слишком много времени. В случае задействования Puppet для этой цели будет использоваться небольшой файл манифеста, который будет передаваться всем клиентам Puppet (или агентам) при следующем обмене данными и содержать директивы для копирования файла конфигурации и выполнения необходимых мероприятий.

Как говорилось ранее, система управления конфигурацией Puppet состоит из двух элементов: мастер-сервера Puppet, на котором хранятся все манифесты и агентов Puppet, которые исполняются на всех клиентских серверах или рабочих станциях. Агенты опрашивают мастер-сервер через заданные промежутки времени (по умолчанию через каждые 30 минут) и проверяют изменения в принятых от него манифестах.

How Puppet works

Пакеты RPM доступны из репозитория по адресу yum.puppetlabs.com, пакеты DEB - из репозитория по адресу apt.puppetlabs.com

Пакеты RPM доступны из репозитория по адресу yum.puppetlabs.com, пакеты DEB — из репозитория по адресу apt.puppetlabs.com

В рамках данного руководства мы рассмотрим процесс установки и настройки мастер-сервера Puppet и соединенных с ним агентов для автоматизации процесса изменения конфигурации машин, на которых будут установлены упомянутые агенты. Мы будем использовать дистрибутив CentOS 7, но стоит иметь в виду, что пакеты программного обеспечения с компонентами Puppet доступны из репозиториев большинства, а может быть и всех существующих на сегодняшний день дистрибутивов.

Перед установкой Puppet следует обратить внимание на системные требования:

  • Необходимо установить имена узлов — это позволит осуществлять гарантированную передачу корректной информацию в процессе их конфигурации.
  • Необходимо настроить сервер DNS — как и в большинстве проектов, записи сервера доменных имен или файла с именами узлов сети (/etc/hosts) являются важным элементом процесса сетевого взаимодействия, позволяющим использовать имена машин, а их не IP-адреса.
  • Агенты Puppet по умолчанию используют имя узла ‘puppet’ для доступа к мастер-серверу Puppet — и хотя на уровне каждого из клиентов может быть установлено отличное имя мастер-сервера, гораздо проще соответствующим образом настроить сервер доменных имен или создать соотвествующий файл с именами узлов сети.
  • Необходимо настроить сервер NTP — очень важно организовать автоматический процесс установки точного времени на всех машинах для того, чтобы все компоненты Puppet функционировали корректно, главным образом ввиду того, что мастер-сервер также выполняет функции центра выдачи сертификатов. В том случае, если на машинах с мастер-сервером и агентами будет установлено отличающееся время, в некоторых случаях сертификат может быть признан просроченным, а изменения в конфигурации машины — не применены.
Читайте также:
Безопасность что это за программа на Андроид

Мы запускаем фоновые службы Puppet с помощью systemd. Попытайтесь не увлекаться чтением всех сообщений мастер-сервера Puppet

IaC-1. Создание сервера puppet

Как установить Puppet для управления вашей серверной инфраструктурой

[.note] #Note: Более новую версию этого руководства, в которой используется Puppet Server вместо Puppet с Passenger, можно найти здесь:How To Install Puppet 4 in a Master-Agent Setup on Ubuntu 14.04.
#

Вступление

Puppet из Puppet Labs — это инструмент управления конфигурацией, который помогает системным администраторам автоматизировать подготовку, настройку и управление инфраструктурой сервера. Заблаговременное планирование и использование инструментов управления конфигурациями, таких как Puppet, могут сократить время, затрачиваемое на повторение основных задач, и помочь обеспечить согласованность и точность ваших конфигураций в вашей инфраструктуре. Как только вы научитесь управлять своими серверами с помощью Puppet и других средств автоматизации, вы освободите время, которое можно потратить на улучшение других аспектов вашей общей настройки.

Puppet выпускается в двух вариантах: Puppet Enterprise и Puppet с открытым исходным кодом. Он работает на большинстве дистрибутивов Linux, различных платформах UNIX и Windows.

В этом руководстве мы расскажем, как установить Puppet с открытым исходным кодом в настройках агента / мастера. Эта установка состоит из центрального сервераPuppet Master, с которого будут управляться и распределяться все ваши данные конфигурации, а все ваши оставшиеся серверы будут узламиPuppet Agent, которые могут быть настроены главным сервером марионетки.

Предпосылки

Чтобы следовать этому руководству, вы должны иметь root-доступ ко всем серверам, с которыми вы хотите настроить Puppet. Вам также потребуется создать новый Ubuntu 14.04 VPS, который будет выступать в качестве главного сервера Puppet. Если у вас нет существующей инфраструктуры, смело воссоздайте пример инфраструктуры (описанной ниже), следуя обязательному руководству по настройке DNS.

Прежде чем мы начнем установку Puppet, убедитесь, что у вас есть следующие предварительные условия:

  • Private Network DNS: Необходимо настроить прямой и обратный DNS, и каждый сервер должен иметь уникальное имя хоста. Вот руководство поconfigure your own private network DNS server. Если у вас не настроен DNS, вы должны использовать файл hosts для разрешения имен. Мы предполагаем, что вы будете использовать вашу частную сеть для связи в вашей инфраструктуре.
  • Firewall Open Ports: Мастер Puppet должен быть доступен через порт 8140. Если ваш брандмауэр слишком строгий, ознакомьтесь с этимUFW Tutorial, чтобы узнать, как разрешить входящие запросы на порт 8140.
Читайте также:
Портал смешанной реальности что это за программа и нужна ли она на ноутбуке

Пример инфраструктуры

Puppet

Прежде всего нужно настроить ваш dns сервер на резолва адресов. Для примера можно внести настройки в файл /etc/hosts :

127.0.0.1 localhost.localdomain localhost 10.10.3.107 puppetserver 10.10.3.5 puppetclient

После установки всех пакетов настройки dns, конфигурационные файлы puppet находятся в директории /etc/puppet/ . Измените файл настройки /etc/puppet/puppet.conf так:

[main] certname=puppetserver server=puppetserver [master] certname=puppetserver environment=production

Для создания файлов на агентах нужно отредактировать файл /etc/puppet/fileserver.conf :

[files] path /etc/puppet/code/modules/files allow *

  • в секции main находятся глобальные настройки сервиса, а в секции master, находятся настройки сервера puppet;
  • параметр server говорит клиенту, с каким сервером работать;
  • параметр certname задает имя с которым клиент будет обращаться к серверу.

# systemctl enable —now puppet # systemctl enable —now puppetserver

Для подписи всех сертификатов необходимо выполнить команду:

# puppetserver ca sign —all

Настройка агента puppet

Для примера на клиенте также был настроен файл /etc/hosts , как показано выше.

Файл настроек агента /etc/puppet/puppet.conf должен выглядеть следующим образом:

[agent] server=puppetserver

Однако, вместо puppetserver вы можете подставить, при необходимости, имя вашего сервера.

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru