Friday, 27 April 2012

Загрузка конфиг-файлов с клиента на сервер Puppet

Это крайне редко используемая, но ОЧЕНЬ полезная функция Puppet. Если кратко, то она дает возможность забэкапить (залить) определенный конфиг-файл с клиента на Puppet сервер.

Итак, на клиенте нужно в конфиг файл:
vim /etc/puppet/puppet.conf 
Там в блоке [main] добавляем адрес puppet сервера:
    server=xxx.domain.ru 
Выполняется выгрузку конфиг-файла:
filebucket backup /etc/hosts
xxx.domain.ru/etc/hosts: 54fb6627dbaa37721048e4549db3224d
Получаем содержимое конфиг файла с сервера (запрос идет по md5 хешу):
filebucket get 54fb6627dbaa37721048e4549db3224d
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
На сервере же этот файл можно найти аналогично, по md5:
echo "`find /var/lib/puppet -type d  -name 54fb6627dbaa37721048e4549db3224d`/contents"
/var/lib/puppet/bucket/5/4/f/b/6/6/2/7/54fb6627dbaa37721048e4549db3224d/contents
Смотрим его содержимое:
cat /var/lib/puppet/bucket/5/4/f/b/6/6/2/7/54fb6627dbaa37721048e4549db3224d/contents
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
Ура! :) Пожалуй, это последнее, чем мне не хватало в Puppet. Очень неудобно было перекидывать настроенные на машине конфиги через sftp/scp.  Также крайне неудобно было обновлять конфиги в Puppet, если исправил их на машине.

No comments:

Post a Comment

Note: only a member of this blog may post a comment.