Установка мастер-узел и агента Puppet

Листинг 1.1 – Установка Puppet

# cd /usr/ports/sysutils/puppet

# make install clean

Подготовка puppet-master.example.com:

см.Листинг 1.1

Установка и конфигурирование:

См. Листинг 1.2

Конфигурируем мастер-узел Puppet:

См. Листинг 1.3

Изменим следующие параметры в файле

/usr/local/etc/puppet/puppet.conf:

• factsource = puppet://puppet-master.example.com/facts/

• pluginsource = puppet://puppet-master.example.com/plugins

 

Листинг 1.2 – Создание пустых файлов-скелетов

# mkdir -p /usr/local/etc/puppet/manifests/classes

# mkdir -p /usr/local/etc/puppet/files

# touch /usr/local/etc/puppet/files/sudoers

# touch /usr/local/etc/puppet/files/sshd_config

# touch /usr/local/etc/puppet/files/httpd.conf

# touch /usr/local/etc/puppet/manifests/classes/resource_group.pp

# touch /usr/local/etc/puppet/fileserver.conf

# touch /usr/local/etc/puppet/manifests/site.pp

# touch /usr/local/etc/puppet/manifests/classes/resource_group.pp

 

Листинг 1.3 – конфигурация мастер-узла

# puppet master —genconfig > /usr/local/etc/puppet/

puppet.conf

# cp /usr/local/etc/puppet/auth.conf-dist /usr/local/etc/puppet/auth.conf

 

Создадим следующие файлы с содержимым:

 

Листинг 1.4-/usr/local/etc/puppet/fileserver.conf

[files]

path /usr/local/etc/puppet/files

allow *.example.com

 

Листинг 1.5 –/usr/local/etc/puppet/manifests/site.pp

import “classes/*.pp”

filebucket { main: server => ‘puppet-master.example.

com’ }

File { backup => main }

Exec { path => “/usr/bin:/usr/sbin/:/bin:/sbin” }

node ‘puppet-agent.example.com’ { }

 

И, наконец, запустим мастер-узел, чтобы он принимал на подпись сертификат агента, и далее мог бы отправлять инструкции на агент.

В Листинге 1.5

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

Подготовка puppet-agent.example.com:

 

Листинг 1.6 – Запускаем мастер-узел

# echo ‘puppetmaster_enable=”YES”’ >> /etc/rc.conf

# /usr/local/etc/rc.d/puppetmaster start

 

Листинг 1.7 – установка агента и некоторых зависимых пакетов

# cd /usr/ports/sysutils/puppet

# make install clean

# cd /usr/ports/ports-mgmt/portupgrade

# make install clean

 

Листинг 1.8 – установка и конфигурация агента

# hostname puppet-agent.example.com

# cp /usr/local/etc/puppet/auth.conf-dist /usr/local/etc/puppet/auth.conf

 

Листинг 1.9 – /usr/local/etc/puppet/auth.conf

path /run

method save

allow puppet-master.example.com

 

Начнем сессию подписи сертификата от Puppet

агента на Puppet мастер-сервере:

# puppet agent -v —server puppet-master.example.com

—waitforcert 60 —test

При удачном соединении, подписываем сертификат на мастер-узле

Как только сертификат подписан, сессия на агенте должна завершиться. Дождитесь, пока сам  

агент ее не завершит. Запустите агента на puppet-agent.example.com добавив следующее в /etc/rc.conf:

 

Листинг 1.10 – Подписывается сертификат на мастер-узле

# puppet cert —list —all

# puppet cert —sign puppet-agent.example.com

 

Листинг 1.11 – /etc/rc.conf

puppet_enable=”YES”

puppet_flags=”-v —listen —server puppet-master.example.com”

 

Запустим агент, чтобы он мог забрать инструкции с мастера-узла:

# /usr/local/etc/rc.d/puppet start

 

Когда мастер-узел и агент Puppet более-менее инициализирован, проверьте отсутствие сообщений

об ошибках в /var/log/messages.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *