Учебники

Кукольный — Окружающая среда Conf

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

Место нахождения

В Puppet для всех определенных сред среда file.conf находится на верхнем уровне домашней среды, рядом с директорами манифеста и модулей. Рассматривая пример, если ваша среда находится в каталогах по умолчанию (Vipin / testing / environment) , то файл конфигурации тестовой среды находится в Vipin / testing / environment / test / environment.conf .

пример

 # /etc/testingdir/code/environments/test/environment.conf  
 # Puppet Enterprise требует $ basemodulepath;  см. примечание ниже под modulepath ". 
 modulepath = site: dist: modules: $ basemodulepath  
 # Используйте наш пользовательский скрипт, чтобы получить git commit для текущего состояния кода: 
 config_version = get_environment_commit.sh 

Формат

Все файлы конфигурации в Puppet одинаково используют один и тот же INI-подобный формат. Файл environment.conf имеет тот же INI-подобный формат, что и другие, например, файл puppet.conf. Единственная разница между environment.conf и puppet.conf в том, что файл environment.conf не может содержать раздел [main]. Все настройки в файле environment.conf должны быть вне любого раздела конфигурации.

Относительный путь в ценностях

Большинство разрешенных настроек принимают путь к файлу или список путей в качестве значения. Если какой-либо из путей является релевантным путем, они начинаются без косой черты или буквы диска — они будут в основном разрешены относительно основного каталога этой среды.

Интерполяция в ценностях

Файл настроек Environment.conf может использовать значения других настроек в качестве переменных. Существует несколько полезных переменных, которые можно вставить в файл environment.conf. Вот список нескольких важных переменных —

  • $ basemodulepath — полезно для включения каталогов в настройки пути модуля. Пользователь Puppet Enterprise обычно должен включать это значение modulepath, поскольку ядро Puppet использует модуль в базовом модуле path .

  • $ environment — Используется в качестве аргумента командной строки для вашего скрипта config_version. Вы можете интерполировать эту переменную только в настройке config_version.

  • $ codedir — Полезно для поиска файлов.

$ basemodulepath — полезно для включения каталогов в настройки пути модуля. Пользователь Puppet Enterprise обычно должен включать это значение modulepath, поскольку ядро Puppet использует модуль в базовом модуле path .

$ environment — Используется в качестве аргумента командной строки для вашего скрипта config_version. Вы можете интерполировать эту переменную только в настройке config_version.

$ codedir — Полезно для поиска файлов.

Разрешенные настройки

По умолчанию в файле Puppet environment.conf разрешено переопределять только четыре параметра в конфигурации, как указано в списке.

  • ModulePath
  • манифест
  • Config_version
  • Environment_timeout

ModulePath

Это один из ключевых параметров в файле environment.conf. Все директора, определенные в modulepath, по умолчанию загружаются Puppet. Это путь, откуда Puppet загружает свои модули. Нужно явно настроить это. Если этот параметр не установлен, путь модуля по умолчанию для любой среды в Puppet будет —

 <СПРАВОЧНИК МОДУЛЕЙ ИЗ ОКРУЖАЮЩЕЙ СРЕДЫ>: $ basemodulepath 

манифест

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

Необходимо явно определить этот параметр в файле environment.conf. Если нет, то Puppet будет использовать каталог манифеста по умолчанию в качестве основного манифеста.

Config_version

Config_version может быть определена как определенная версия, используемая для идентификации каталогов и событий. Когда Puppet компилирует любой файл манифеста по умолчанию, он добавляет версию конфигурации в сгенерированные каталоги, а также в отчеты, которые генерируются, когда мастер Puppet применяет любой определенный каталог к ​​узлам Puppet. Puppet запускает скрипт для выполнения всех вышеперечисленных шагов и использует весь сгенерированный вывод как Config_version.

Тайм-аут среды

Он используется для получения подробной информации о количестве времени, которое Puppet должен использовать для загрузки данных для данной среды. Если значение определено в файле puppet.conf, то эти значения переопределят значение тайм-аута по умолчанию.

Образец файла environment.conf

 [мастер] 
    manifest = $ confdir / environment / $ environment / manifts / site.pp 
    modulepath = $ confdir / environment / $ environment / modules

В приведенном выше коде $ confdir — это путь к каталогу, в котором находятся файлы конфигурации среды. $ environment — это имя среды, для которой выполняется конфигурация.