php-fpm

Статус сборки Ansible Galaxy

php-fpm

Эта роль устанавливает и настраивает интерпретатор php-fpm.

Внимание

Поддержка RedHat прекращена в версии 2.0.0. С удовольствием примем ваши запросы на изменения.

Требования

Эта роль требует Ansible 1.4 или выше, протестированные платформы указаны в файле метаданных.

Переменные роли

Роль использует следующие переменные:

  • php_fpm_version: Версия PHP, которая должна быть установлена. Доступные версии: 5.5, 5.6, 7.0, 7.1. По умолчанию: 5.6. Внимание: PHP 5.5 можно использовать, но он достиг конца жизни и должен быть избегаем!
  • php_fpm_pools: Список пулов для php-fpm, каждый пул представляет собой хэш с записью имени (используется для имени файла), все остальные записи в хэше являются директивами пула (см. http://php.net/manual/en/install.fpm.configuration.php). Поддерживается вложение словарей на один уровень, чтобы передавать переменные окружения и настройки PHP в виде словарей.
  • php_fpm_pool_defaults: Список стандартных директив, используемых для всех пулов php-fpm (см. http://php.net/manual/en/install.fpm.configuration.php).
  • php_fpm_apt_packages: Список пакетов, которые будут установлены с помощью

apt, по умолчанию [php5-fpm].

  • php_fpm_yum_packages: Список пакетов, которые будут установлены с помощью yum, по умолчанию [php-fpm].
  • php_fpm_ini: Настройка php.ini для php-fpm в виде списка опций, каждая опция – это хэш со следующей структурой:
    • option: Название опции.
    • value: Строковое значение, которое будет связано с опцией.
    • section: Название секции в INI-файле.
  • php_fpm_config: Настройка конфигурационного файла php-fpm в виде списка опций.
  • php_fpm_default_pool:
    • delete: Установите значение True, чтобы удалить стандартный пул.
    • name: Имя файла конфигурации стандартного пула.
  • php_fpm_apt_latest: Если установлено в yes, обновит пакеты до последней версии.

Пример конфигурации

- role: php-fpm
  php_fpm_pool_defaults:
    pm: dynamic
    pm.max_children: 5
    pm.start_servers: 2
    pm.min_spare_servers: 1
    pm.max_spare_servers: 3
  php_fpm_pools:
   - name: foo
     user: www-data
     group: www-data
     listen: 8000
     chdir: /
   - name: bar
     user: www-data
     group: www-data
     listen: 8001
     env:
       PATH: "/usr/local/bin:/usr/bin:/bin"
       TMPDIR: "/tmp"
     php_admin_value:
       sendmail_path: "/usr/sbin/sendmail -t -i -f [email protected]"
       error_log = "/var/log/fpm-bar.www.log"
   php_fpm_ini:
   # Директивы секции PHP
   - option: "engine"
     section: "PHP"
     value: "1"
   - option: "error_reporting"
     section: "PHP"
     value: "E_ALL & ~E_DEPRECATED & ~E_STRICT"
   - option: "date.timezone"
     section: "PHP"
     value: "Europe/Berlin"
   # Директивы секции soap
   - option: "soap.wsdl_cache_dir"
     section: "soap"
     value: "/tmp"
   # Директивы секции Pdo_mysql
   - option: "pdo_mysql.cache_size"
     section: "Pdo_mysql"
     value: "2000"
   php_fpm_config:
   - option: "log_level"
     section: "global"
     value: "notice"
   - option: "syslog.facility"
     section: "global"
     value: "daemon"

Пример использования

---
# файл: task.yml
- hosts: all
  roles:
    - nbz4live.php-fpm
    - {
        role: nbz4live.php-fpm,
        php_fpm_pools:[
          {name: foo, user: www-data, group: www-data, listen: 8000, chdir: /}
        ]
      }
    - role: php-fpm
        php_fpm_pools:
          - name: bar
            user: www-data
            group: www-data
            listen: 9000
            chdir: /

Внимание

Конфигурация менеджера процессов (pm, pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers), в настройках по умолчанию предназначена только для тестирования. Эти значения всегда должны рассчитываться на основе используемых ресурсов сервера (аппаратные средства, количество пулов, другое программное обеспечение на сервере). Пожалуйста, прочтите документацию для получения дополнительной информации об этих директивах или следуйте этому руководству для расчета наилучших значений для вашего случая.

Лицензия

BSD

Информация об авторе

О проекте

Ansible role for installing and configuring php-fpm

Установить
ansible-galaxy install swcc/ansible-php-fpm
Лицензия
Unknown
Загрузки
70
Владелец