Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
serverguide-precise-ru.pdf
Скачиваний:
75
Добавлен:
03.05.2015
Размер:
1.86 Mб
Скачать

Удалённое администрирование

2. Puppet

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

Этот раздел посвящён установке и настройке Puppet в конфигурации клиент/сервер. Этот простой пример демонстрирует, как установить Apache с использованием Puppet.

2.1. Установка

Для установки Puppet наберите в терминале сервера:

sudo apt-get install puppetmaster

На клиентском компьютере (или нескольких компьютерах), введите:

sudo apt-get install puppet

2.2. Конфигурация

Прежде чем настраивать puppet, вам, возможно, захочется добавить запись

DNS CNAME для puppet.example.com, где example.com — это ваш домен. По умолчанию клиенты Puppet проверяют DNS на наличие puppet.example.com в качестве имени сервера puppet (Puppet Master). Посетите раздел Глава 8, Служба доменных имён (DNS) [158] для дополнительных деталей использования DNS.

Если вы не предполагаете использовать DNS, вы можете добавить записи в файл /etc/hosts на сервере и клиенте. Например, в файл /etc/hosts сервера Puppet добавьте:

127.0.0.1 localhost.localdomain localhost puppet 192.168.1.17 meercat02.example.com meercat02

На каждом клиенте Puppet добавьте запись для сервера:

192.168.1.16 meercat.example.com meercat puppet

98

Удалённое администрирование

Замените указанные в приведённом выше примере IP-адреса и доменные имена на реальные адреса и доменные имена вашего сервера и клиента.

Теперь настроим некоторые ресурсы для apache2. Создайте файл /etc/

puppet/manifests/site.pp, содержащий следующее:

package { 'apache2':

ensure => installed

}

service { 'apache2':

ensure => true, enable => true,

require => Package['apache2']

}

Далее создайте файл узла /etc/puppet/manifests/nodes.pp с:

node 'meercat02.example.com' { include apache2

}

Замените meercat02.example.com на реальное имя хоста вашего клиента Puppet.

Финальным шагом для этого простого сервера Puppet является перезапуск демона:

sudo /etc/init.d/puppetmaster restart

Теперь на сервере Puppet всё настроено, и пришло время настроить клиента.

Сначала настроим демон агента Puppet для запуска. Отредактируйте /etc/ default/puppet, заменив значение START на yes:

START=yes

Далее запустите сервис:

sudo /etc/init.d/puppet start

Возвращаемся на Puppet сервер для подписи клиентского сертификата с помощью команды:

99

Удалённое администрирование

sudo puppetca --sign meercat02.example.com

Проверьте /var/log/syslog на предмет наличия каких-либо ошибок конфигурации. Если всё прошло успешно, пакет apache2 и его зависимости будут установлены на клиенте Puppet.

Этот пример очень простой и не показывает многие возможности и преимущества Puppet. Для дополнительной информации смотрите

Раздел 2.3, «Ресурсы» [100].

2.3. Ресурсы

Посетите сайт официальной документации Puppet4.

Также смотрите Pro Puppet5.

Ещё один источник дополнительной информации — страница Ubuntu Wiki Puppet6.

4http://docs.puppetlabs.com/

5http://www.apress.com/9781430230571

6https://help.ubuntu.com/community/Puppet

100

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]