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

Как применить конфигурацию prefork для Apache в Puppet?

Я использую модуль apache puppetlabs для управления конфигурацией apache.

У меня все настроено, кроме настроек сервера для mod_prefork. Есть шаблон для prefork, и он каким-то образом получает переменную при инициализации класса, но я не совсем уверен, как это сделать.

Я не хочу изменять настройки сервера в шаблоне вручную, потому что я запускаю apache на нескольких хостах и ​​не хочу изменять значение в самом шаблоне.

Ты хоть представляешь, как это сделать? Ссылка на модуль Вот.

Я прочитал документы, но я не могу понять, как это сделать.

Вы можете установить mpm_module к false, чтобы впоследствии явно объявить класс prefork с настраиваемыми параметрами.

class {
  'apache':
    mpm_module      => false,
}
class {
  'apache::mod::prefork':
    startservers    => "5",
    minspareservers => "3",
    maxspareservers => "3",
    serverlimit     => "64",
    maxclients      => "64",
}

Настройки в prefork.conf контролируются параметрами класса, установленными на apache::mod::prefork класс. Видеть manifests/mod/prefork.pp для этих параметров и их значений по умолчанию.

Как вы их установите, зависит от того, как вы на самом деле объявляете apache класс. Похоже, на самом деле это немного сложно, если вы начинаете с class { 'apache': }, поскольку он просто объявляет apache::mod::prefork без возможности передавать параметры. Я бы рекомендовал использовать Hiera для ваших определений узлов, а затем настроить параметры в вашей конфигурации Hiera, например: apache::mod::prefork::maxclients: 256