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

Установить модуль Puppet в глобальный каталог модулей по умолчанию?

Я впервые настраиваю главный сервер Puppet. Он настроен для использования сред:

/etc/puppet/puppet.conf:

[main]
environmentpath = /var/opt/puppet/environments
basemodulepath = /var/opt/puppet/modules

Каждый раз, когда я устанавливаю модуль, puppet module install foo, он будет установлен в каталог модулей моей "производственной" среды. Я хочу, чтобы модуль был установлен в /var/opt/puppet/modules если я не укажу среду с --environment переключатель.

Как я могу это сделать?

В текущей версии Puppet (v6.0):

По умолчанию эта команда устанавливает модули в первый каталог в пути к модулю Puppet, который по умолчанию равен $ codedir / environment / production / modules.

Это означает, что вам нужно установить путь к модулю так, чтобы «/ var / opt / puppet / modules» был первым каталогом в вашем пути к модулям. Поскольку параметр modulepath может быть установлен только в environment.conf, вам необходимо отредактировать свой environment.conf для всех ваших сред.

nano -w /etc/puppetlabs/code/environments/{environment_name}/environment.conf

modulepath = '/var/opt/puppet/modules:/etc/puppetlabs/code/environments/production/modules:/etc/puppetlabs/code/modules:/opt/puppetlabs/puppet/modules'

Кстати: для Puppet v6.0 '/ etc / puppetlabs / code / modules' может быть лучшим выбором для глобального каталога модулей.

puppet module --modulepath=/var/opt/puppet/modules install foo

Вы используете разделы конфигурации среды. Итак, вы можете установить путь к модулю в разделе каждого окружения файла puppet.conf. Подобно...

[основной]

-

environmentpath = / var / opt / puppet / среды

basemodulepath = / var / opt / puppet / modules

-

[производство]

-

-

[разработчик]

-

-

Если этот параметр отсутствует в данной среде, Puppet вернется к глобальному значению параметра modulepath (/ var / opt / puppet / modules). Или вы можете указать отдельный путь к модулю для каждого раздела каталога. Надеюсь, ты получил ответ ...

Каждая среда может иметь свой собственный путь к модулю, если вы создаете environment.conf файл в каталоге среды.

Более подробную информацию о средах можно найти на веб-сайте Puppet labs здесь:

https://puppet.com/docs/puppet/latest/env_environments.html