Решил описать как я учусь работать с Puppet, так сказать для новичков. Сразу оговорюсь, что есть 2 типа использования Puppet:
Я попробую использовать 2-й вариант и для начала на своей виртуальной debian-wheezy-8 установлю Puppet:
aptitude install puppet
Проверим, установился ли Puppet:
# dpkg --get-selections | grep -v deinstall | grep puppet
puppet-common install
Решил я https://forge.puppetlabs.com/scalia/sphinx Попробуем установить SphinxSearch:
# puppet module install scalia-sphinx
Preparing to install into /etc/puppet/modules ...
Downloading from http://forge.puppetlabs.com ...
Installing -- do not interrupt ...
/etc/puppet/modules
└── scalia-sphinx (v0.0.1)
Создадим в текущей директории файл конфигурации для своего проекта:
nano manifest.pp
с содержимым:
class { 'sphinx':
config_file => '/home/vagrant/yapro.sphinx.conf',
}
Как Вы заметили здесь нужно прописать путь к файлу конфигурации Ваших Sourse и Indexes. Содержимое указанного Вами файла будет скопировано в файл /etc/sphinxsearch/sphinx.conf
Теперь запустим наш файл-манифест:
puppet apply manifest.pp
у меня правда данный запуск выдал ошибку:
err: /Stage[main]/Sphinx::Config/File[/etc/sphinxsearch/sphinx.conf]: Could not evaluate: Could not retrieve information from environment production source(s) file:/home/vagrant/yapro.sphinx.conf at /etc/puppet/modules/sphinx/manifests/config.pp:18
notice: /Stage[main]/Sphinx::Service/Service[sphinxsearch]: Dependency File[/etc/sphinxsearch/sphinx.conf] has failures: true
warning: /Stage[main]/Sphinx::Service/Service[sphinxsearch]: Skipping because of failed dependencies
notice: Finished catalog run in 0.54 seconds
потому что указал неправильный путь в config_file, просто оставил тут информацию об ошибке.
Как альтернативный вариант можно написать свой способ установки:
package { 'sphinxsearch':
ensure => latest
}
p.s. любителям GUI в помощь Puppet IDE
Комментарии
Комментариев пока нет.