Учебники

Кукольный — Мастер

В Puppet архитектура клиент-сервер мастера Puppet рассматривается как контролирующий орган всей установки. Хозяин Puppet действует как сервер в настройке и контролирует все действия на всех узлах.

Для любого сервера, который должен выступать в качестве мастера Puppet, на нем должно быть запущено программное обеспечение сервера Puppet. Это серверное программное обеспечение является ключевым компонентом контроля всех действий на узлах. В этой настройке следует помнить один ключевой момент — иметь доступ суперпользователя ко всем машинам, которые планируется использовать в настройке. Ниже приведены шаги по настройке Puppet master.

Предпосылки

DNS для частной сети — необходимо настроить прямую и обратную передачу, при этом каждый сервер должен иметь уникальное имя хоста. Если у вас нет настроенного DNS, то вы можете использовать частную сеть для связи с инфраструктурой.

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

Создание Puppet Master Server

Мастер Puppet, который мы создаем, будет на компьютере CentOS 7 × 64 с именем Puppet в качестве имени хоста. Минимальная конфигурация системы для создания Puppet master — это два ядра процессора и 1 ГБ памяти. Конфигурация также может иметь больший размер в зависимости от количества узлов, которыми мы будем управлять с помощью этого мастера. В инфраструктуре больше, чем настроено с использованием 2 ГБ оперативной памяти.

Имя хоста Роль Частное полное доменное имя
Brcleprod001 Кукольный мастер bnrcleprod001.brcl.com

Затем необходимо сгенерировать главный SSL-сертификат Puppet, и имя главного компьютера будет скопировано в файл конфигурации всех узлов.

Установка NTP

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

Если возникает проблема временного конфликта, тогда сертификаты могут оказаться устаревшими, если есть расхождения во времени между ведущим и узлом. Протокол сетевого времени является одним из ключевых механизмов, позволяющих избежать подобных проблем.

Список доступных часовых поясов

$ timedatectl list-timezones

Приведенная выше команда предоставит полный список доступных часовых поясов. Это обеспечит регионы доступностью часового пояса.

Следующая команда может быть использована для установки необходимого часового пояса на машине.

$ sudo timedatectl set-timezone India/Delhi 

Установите NTP на компьютере сервера Puppet, используя утилиту yum компьютера CentOS.

$ sudo yum -y install ntp 

Синхронизируйте NTP с системным временем, которое мы установили в приведенных выше командах.

$ sudo ntpdate pool.ntp.org 

В обычной практике мы будем обновлять конфигурацию NTP, чтобы использовать общие пулы, которые доступны ближе к центрам обработки данных компьютеров. Для этого нам нужно отредактировать файл ntp.conf в / etc.

$ sudo vi /etc/ntp.conf 

Добавьте сервер времени из доступных часовых поясов пула NTP. Вот как выглядит файл ntp.conf.

brcleprod001.brcl.pool.ntp.org 
brcleprod002.brcl.pool.ntp.org 
brcleprod003.brcl.pool.ntp.org
brcleprod004.brcl.pool.ntp.org 

Сохраните конфигурацию. Запустите сервер и включите демон.

$ sudo systemctl restart ntpd 
$ sudo systemctl enable ntpd 

Настройка программного обеспечения Puppet Server

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

Включите официальный репозиторий Puppet labs collection с помощью следующей команды.

$ sudo rpm -ivh https://yum.puppetlabs.com/puppetlabs-release-pc1-el7.noarch.rpm

Установите пакет puppetserver.

$ sudo yum -y install puppetserver 

Настройте распределение памяти на сервере Puppet

Как мы уже говорили, по умолчанию сервер Puppet настраивается на 2 ГБ ОЗУ. Можно настроить настройку в соответствии со свободной памятью, доступной на машине, и количеством узлов, которыми будет управлять сервер.

Отредактируйте конфигурацию сервера марионеток в режиме vi

$ sudo vi /etc/sysconfig/puppetserver  
Find the JAVA_ARGS and use the –Xms and –Xms options to set the memory allocation. 
We will allocate 3GB of space  
JAVA_ARGS="-Xms3g -Xmx3g" 

После этого сохраните и выйдите из режима редактирования.

После того, как все вышеперечисленные настройки завершены, мы готовы запустить сервер Puppet на главном компьютере с помощью следующей команды.

$ sudo systemctl start puppetserver 

Далее мы выполним настройку так, чтобы марионеточный сервер запускался при загрузке главного сервера.