sys_fs.php_fpm
sys_fs.php_fpm
此角色在Ubuntu和Debian上从sury.org仓库安装和配置php-fpm。
要求
此角色至少需要Ansible 2.5版本。
角色变量
php_fpm_packages:
- php7.3
...
- php7.3-zip
要安装的PHP软件包列表。
php_fpm_pools:
- name: www
type: unix
pm: dynamic
php_admin_values:
memory_limit
value: '128M'
要创建的池的列表。每个池中可以定义许多可选变量。以下是池变量的详细说明:
名称 | 默认值 | 描述 |
---|---|---|
name | www | 池的名称。也会影响当类型为unix时的套接字名称。 |
type | '' | 监听的套接字类型。可以是'tcp'或'unix',必须指定。 |
listen | 127.0.0.1:9000 | 当类型为tcp时,监听的地址和端口。 |
listen_allowed_clients | '' | 在tcp类型时,允许与FPM通信的地址。如果省略,默认允许所有地址。 |
pm | '' | 要使用的pm类型。可以是'static'、'dynamic'或'ondemand',必须指定。 |
pm_max_children | 20 | 使用static时创建的子进程总数,或者使用dynamic或ondemand时要创建的最大子进程数。 |
pm_start_servers | 5 | 对于dynamic pm有用。启动时要创建的子进程数。 |
pm_min_spare_servers | 5 | 对于dynamic pm有用。期望的最小子进程数。 |
pm_max_spare_servers | 5 | 对于dynamic pm有用。期望的最大子进程数。 |
pm_process_idle_timeout | 10s | 对于ondemand pm有用。非活动子进程被杀死的时间。 |
pm_max_requests | 500 | 子进程在重启之前应执行的请求数。可以设置为0以表示无限制。 |
php_admin_flags | [] | php.ini值的本地覆盖。仅布尔值(开/关)。不能被ini_set覆盖。 |
php_flags | [] | php.ini值的本地覆盖。仅布尔值('on'和'off')。可以被ini_set覆盖。 |
php_admin_values | [] | php.ini值的本地覆盖。仅布尔值以外的值('on'和'off')。不能被ini_set覆盖。 |
php_values | [] | php.ini值的本地覆盖。仅布尔值以外的值('on'和'off')。可以被ini_set覆盖。 |
示例剧本
- hosts: php
vars:
- php_fpm_pools:
- name: dev
type: unix
pm: static
pm_max_children: 100
php_admin_values:
- name: memory_limit
value: '512M'
- name: 'opcache.enable'
value: 0
roles:
- sys_fs.php_fpm
许可证
MIT