Назад | Перейти на главную страницу

Создание новых сред на Puppet Server

Мы используем общий Puppet Server для управления средами QA и DEV. По умолчанию Puppet Server использует конфигурацию "Производственная среда".

# puppet master --configprint all | grep production

environment = production
manifest = /data/puppetlabs/code/environments/production/manifests
modulepath = /data/puppetlabs/code/environments/production/modules:/data/puppetlabs/code/modules:/opt/puppetlabs/puppet/modules

Я хочу включить еще две среды DEV и QA. Для этого я скопирую указанные выше каталоги и переименую в qa и development среды соответственно на Puppet Server. Какие элементы конфигурации включить в puppet.conf для включения новых сред на Puppet Server. Если я создам несколько записей, как в примере выше, это сработает. Пожалуйста, предложите.

Классический способ настройки окружения таков:

#Environments
[development]
     modulepath =/etc/puppet/development/modules
     manifest = /etc/puppet/development/manifest/site.pp
     manifestdir = /etc/puppet/development/manifest

[testing]
     modulepath =/etc/puppet/testing/modules
     manifest = /etc/puppet/testing/manifest/site.pp
     manifestdir = /etc/puppet/testing/manifest

[production]
     modulepath =/etc/puppet/production/modules
     manifest = /etc/puppet/production/manifest/site.pp
     manifestdir = /etc/puppet/production/manifest

Затем вы можете разместить в этих папках модули и манифесты для каждой среды.

Но этот метод считается устаревшим, и люди используют среду на основе каталогов. Устанавливать environmentpath к /etc/puppet/environments и создайте папки среды с modules и manifests там.

Например:

/etc/puppet/environments/production/modules/
/etc/puppet/environments/production/manifests/
/etc/puppet/environments/testing/modules/
/etc/puppet/environments/testing/manifests/

Вы можете использовать r10k для автоматической загрузки этих сред из веток Git.