Update to 2021-12-01 19:13

This commit is contained in:
Daniel Berteaud
2021-12-01 19:13:34 +01:00
commit 4c4556c660
2153 changed files with 60999 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
<Directory "/usr/share/zabbix">
Options FollowSymLinks
AllowOverride All
{% if zabbix_server_web_src_ip is defined %}
Require ip {{ zabbix_server_web_src_ip | join(' ') }}
{% else %}
Require all granted
{% endif %}
{% if zabbix_server_auth_http %}
SetEnvIfNoCase Auth-User "(.*)" PHP_AUTH_USER=$1
SetEnvIfNoCase Auth-User "(.*)" PHP_AUTH_PW=$1
{% endif %}
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php-fpm/{{ zabbix_server_php_fpm_pool | default('zabbix_server') }}.sock|fcgi://localhost"
</FilesMatch>
</Directory>

View File

@@ -0,0 +1,11 @@
; {{ ansible_managed }}
[default]
{% if zabbix_server_matrix_user is defined and zabbix_server_matrix_pass is defined %}
user={{ zabbix_server_matrix_user }}
password={{ zabbix_server_matrix_pass }}
{% elif zabbix_server_matrix_access_token is defined %}
access_token={{ zabbix_server_matrix_access_token }}
{% endif %}
{% if zabbix_server_matrix_server is defined %}
server={{ zabbix_server_matrix_server }}
{% endif %}

View File

@@ -0,0 +1,36 @@
; {{ ansible_managed }}
[zabbix_server]
listen.owner = root
listen.group = apache
listen.mode = 0660
listen = /run/php-fpm/zabbix_server.sock
user = apache
group = apache
catch_workers_output = yes
pm = dynamic
pm.max_children = 15
pm.start_servers = 3
pm.min_spare_servers = 3
pm.max_spare_servers = 6
pm.max_requests = 5000
request_terminate_timeout = 5m
php_flag[display_errors] = off
php_admin_flag[log_errors] = on
php_admin_value[error_log] = syslog
php_admin_value[memory_limit] = 512M
php_admin_value[session.save_path] = /var/lib/zabbix/sessions
php_admin_value[upload_tmp_dir] = /tmp
php_admin_value[post_max_size] = 32M
php_admin_value[upload_max_filesize] = 5M
php_admin_value[disable_functions] = system, show_source, symlink, exec, dl, shell_exec, passthru, phpinfo, escapeshellarg, escapeshellcmd
php_admin_value[open_basedir] = /usr/share/zabbix:/etc/zabbix:/tmp:/var/lib/zabbix/sessions:/etc/alternative/:/usr/share/fonts/dejavu/
php_admin_value[max_execution_time] = 600
php_admin_value[max_input_time] = 600
php_admin_flag[allow_url_include] = off
php_admin_flag[allow_url_fopen] = off
php_admin_flag[file_uploads] = on
php_admin_flag[session.cookie_httponly] = on

View File

@@ -0,0 +1,7 @@
#!/bin/bash -e
{% if zabbix_server_backup_hooks %}
rm -f /home/lbkp/zabbix/*
{% else %}
# pre and post backup hooks are disabled on this host
{% endif %}

View File

@@ -0,0 +1,47 @@
#!/bin/sh
set -eo pipefail
{% if zabbix_server_backup_hooks %}
mkdir -p /home/lbkp/zabbix
# First, backup the schema
/usr/bin/mysqldump --user={{ zabbix_server_db_user | quote }} \
--password={{ zabbix_server_db_pass | quote }} \
--host={{ zabbix_server_db_server | quote }} \
--port={{ zabbix_server_db_port }} \
--no-data \
--quick --single-transaction \
--add-drop-table {{ zabbix_server_db_name | quote }} | zstd -T0 -c > /home/lbkp/zabbix/{{ zabbix_server_db_name }}_schema.sql.zst
# Then, backup data
{% if zabbix_server_backup_on_full_only %}
if [[ "$1" == "full" ]]; then
/usr/bin/mysqldump --user={{ zabbix_server_db_user | quote }} \
--password={{ zabbix_server_db_pass | quote }} \
--host={{ zabbix_server_db_server | quote }} \
--port={{ zabbix_server_db_port }} \
--no-create-info \
--quick --single-transaction \
--add-locks \
{{ zabbix_server_db_name | quote }} | zstd -T0 -c > /home/lbkp/zabbix/{{ zabbix_server_db_name }}_data.sql.zst
else
{% endif %}
/usr/bin/mysqldump --user={{ zabbix_server_db_user | quote }} \
--password={{ zabbix_server_db_pass | quote }} \
--host={{ zabbix_server_db_server | quote }} \
--port={{ zabbix_server_db_port }} \
--no-create-info \
{% if zabbix_server_backup_on_full_only %}
{% for table in ['events', 'history', 'history_uint', 'history_str', 'history_text', 'trends', 'trends_uint'] %}
--ignore-table={{ zabbix_server_db_name }}.{{ table }} \
{% endfor %}
{% endif %}
--quick --single-transaction \
--add-locks \
{{ zabbix_server_db_name | quote }} | zstd -T0 -c > /home/lbkp/zabbix/{{ zabbix_server_db_name }}_data.sql.zst
{% if zabbix_server_backup_on_full_only %}
fi
{% endif %}
{% else %}
# pre and post backup hooks are disabled on this host
{% endif %}

View File

@@ -0,0 +1,15 @@
<?php
global $DB;
$DB['TYPE'] = 'MYSQL';
$DB['SERVER'] = '{{ zabbix_server_db_server }}';
$DB['PORT'] = '{{ zabbix_server_db_port }}';
$DB['DATABASE'] = '{{ zabbix_server_db_name }}';
$DB['USER'] = '{{ zabbix_server_db_user }}';
$DB['PASSWORD'] = '{{ zabbix_server_db_pass }}';
$ZBX_SERVER = 'localhost';
$ZBX_SERVER_PORT = '{{ zabbix_server_port }}';
$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
{% if zabbix_server_version.stdout is version('5.0', '>=') %}
$DB['DOUBLE_IEEE754'] = 'true';
{% endif %}
?>

View File

@@ -0,0 +1,3 @@
LISTEN_IP=127.0.0.1
LISTEN_PORT={{ zabbix_server_java_gateway_port }}
PID_FILE="/var/run/zabbix/zabbix_java.pid"

View File

@@ -0,0 +1,16 @@
ListenPort={{ zabbix_server_port }}
DBHost={{ zabbix_server_db_server }}
DBName={{ zabbix_server_db_name }}
DBUser={{ zabbix_server_db_user }}
DBPassword={{ zabbix_server_db_pass }}
{% if zabbix_server_db_server == 'localhost' %}
DBSocket=/var/lib/mysql/mysql.sock
{% else %}
DBPort={{ zabbix_server_db_port }}
{% endif %}
{% for key in zabbix_server_conf.keys() | list %}
{{ key }}={{zabbix_server_conf[key] }}
{% endfor %}
{% if ansible_all_ipv6_addresses | length < 1 %}
Fping6Location=
{% endif %}