swcc.php-fpm

php-fpm

Ta rola instaluje i konfiguruje interpreter php-fpm.

Uwaga

Wsparcie dla RedHat zostało zakończone w wersji 2.0.0. Zachęcamy do składania propozycji zmian.

Wymagania

Ta rola wymaga Ansible w wersji 1.4 lub wyższej, a przetestowane platformy są wymienione w pliku metadanych.

Zmienne roli

Rola używa następujących zmiennych:

  • php_fpm_version: wersja PHP, która ma być zainstalowana. Dostępne: 5.5, 5.6, 7.0, 7.1. Domyślne: 5.6. Uwaga: PHP 5.5 można używać, ale osiągnął koniec wsparcia i powinno się go unikać!
  • php_fpm_pools: lista pul dla php-fpm, każda pula to hash z wpisem nazwy (używany do nazwy pliku), wszystkie inne wpisy w hashu to dyrektywy puli (patrz http://php.net/manual/en/install.fpm.configuration.php). Wspierane jest zagnieżdżenie jednego poziomu słowników, aby umożliwić przekazywanie zmiennych środowiskowych i ustawień PHP jako słowników.
  • php_fpm_pool_defaults: lista domyślnych dyrektyw używanych dla wszystkich pul php-fpm (patrz http://php.net/manual/en/install.fpm.configuration.php).
  • php_fpm_apt_packages: lista pakietów do zainstalowania przez moduł

apt, domyślnie [php5-fpm].

  • php_fpm_yum_packages: lista pakietów do zainstalowania przez moduł yum, domyślnie [php-fpm].
  • php_fpm_ini: Dostosowanie do php.ini php-fpm jako lista opcji, każda opcja to hash używający następującej struktury:
    • option: nazwa opcji.
    • value: wartość stringowa powiązana z opcją.
    • section: nazwa sekcji w pliku INI.
  • php_fpm_config: Dostosowanie do pliku konfiguracyjnego php-fpm jako lista opcji.
  • php_fpm_default_pool:
    • delete: Ustaw na wartość True, aby usunąć domyślną pulę.
    • name: Nazwa pliku domyślnego pliku konfiguracyjnego puli.
  • php_fpm_apt_latest: Jeśli ustawione na yes, zaktualizuje pakiety do najnowszej wersji.

Przykład konfiguracji

- rola: 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:
   # Dyrektywy sekcji 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"
   # Dyrektywy sekcji soap
   - option: "soap.wsdl_cache_dir"
     section: "soap"
     value: "/tmp"
   # Dyrektywy sekcji 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"

Przykład użycia

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

Uwaga

Konfiguracja menedżera procesów (pm, pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers), w domyślnych ustawieniach, jest tylko do testowania. Wartości te należy zawsze obliczać w oparciu o wykorzystanie zasobów serwera (hardware, liczba pul, inne oprogramowanie na serwerze). Proszę przeczytać dokumentację dla więcej informacji na temat tych dyrektyw lub postępować zgodnie z tym przewodnikiem aby obliczyć najlepsze wartości dla Twojego przypadku.

Licencja

BSD

Informacje o autorze

O projekcie

Ansible role for installing and configuring php-fpm

Zainstaluj
ansible-galaxy install swcc.php-fpm
Licencja
Unknown
Pobrania
79
Właściciel