eRadical.php_fpm_exporter
php-fpm-exporter
Exportador de PHP-FPM para Prometheus desde https://github.com/bakins/php-fpm-exporter
Variables del Rol
php_fpm_exporter_version - versión del exportador que se descargará del repositorio mencionado.
php_fpm_exporter_system_group - grupo bajo el cual se guardará y ejecutará el ejecutable, por defecto es
php_fpm_exporter
.php_fpm_exporter_system_user - usuario bajo el cual se guardará y ejecutará el ejecutable.
php_fpm_exporter_export_ip - dirección IP que será expuesta por el exportador, por defecto es
ansible_eth0.ipv4.address
.php_fpm_pools - Puedes definir más de un exportador para cada grupo de PHP-FPM o (como en mi caso) para cada contenedor docker que ejecuta php-fpm, el playbook generará un servicio systemd para cada grupo.
Para cada grupo, tienes un diccionario que contiene:
- name - debe estar presente, el nombre del grupo, se usará en el nombre del servicio systemd.
- export_port - debe estar presente, este es el puerto al que el exportador se vincula, lo necesitarás para scrappear desde Prometheus.
Y uno de:
- fastcgi_endpoint - esto se conectará directamente al proceso php-fpm y obtendrá las estadísticas.
- http_endpoint - esto pasará a través del servidor web local, ten en cuenta que debes configurar el servidor web tú mismo para exponer esto.
Luego puedes usar php_fpm_pools
en tu servidor Prometheus para indicarle qué scrappear.
Ejemplo de Playbook
Agrega esto a tu playbook
- hosts: servers
roles:
- role: eRadical.php-fpm-exporter
Ejemplo de grupos:
php_fpm_pools:
- name: www export_port: 8080 fastcgi_endpoint: tcp://127.0.0.1:9000/status
- name: otro_grupo export_port: 8081 http_endpoint: http://127.0.0.1:9000/status
Licencia
- GPLv3
- basado principalmente en https://github.com/cloudalchemy/ansible-node-exporter
ansible-galaxy install eRadical.php_fpm_exporter