#!/bin/bash
sudo chown -R opc:opc /var/oled/zabbix
cd /var/oled/zabbix && git pull && git reset --hard HEAD && git clean -fd && git checkout master && head -9 ChangeLog && ./bootstrap.sh && ./configure && make dbschema
podman exec -it pg14ts281 psql -U postgres -c "DROP DATABASE IF EXISTS trunk;"
podman exec -it pg14ts281 psql -U postgres -c "CREATE DATABASE trunk OWNER zabbix;"
cat /var/oled/zabbix/database/postgresql/schema.sql | podman exec -i pg14ts281 psql -U zabbix -d trunk
cat /var/oled/zabbix/database/postgresql/images.sql | podman exec -i pg14ts281 psql -U zabbix -d trunk
cat /var/oled/zabbix/database/postgresql/data.sql | podman exec -i pg14ts281 psql -U zabbix -d trunk
cat /var/oled/zabbix/database/postgresql/timescaledb.sql | podman exec -i pg14ts281 psql -U zabbix -d trunk
sudo rm -rf /usr/share/zabbix-trunk
sudo git -c http.sslVerify=false clone https://git.zabbix.com/scm/zbx/zabbix.git --branch master --depth 1 --single-branch /usr/share/zabbix-trunk
sudo chown -R opc:opc /usr/share/zabbix-trunk
cat << EOF > /usr/share/zabbix-trunk/ui/conf/zabbix.conf.php
<?php
// Zabbix GUI configuration file.
global \$DB;
\$DB['TYPE'] = 'POSTGRESQL';
\$DB['SERVER'] = '10.0.0.249';
\$DB['PORT'] = '7414';
\$DB['DATABASE'] = 'trunk';
\$DB['USER'] = 'zabbix';
\$DB['PASSWORD'] = 'zabbix';
\$DB['DOUBLE_IEEE754'] = 'true';
// Schema name. Used for IBM DB2 and PostgreSQL.
\$DB['SCHEMA'] = 'public';
\$ZBX_SERVER = '165.232.80.109';
\$ZBX_SERVER_PORT = '10151';
\$ZBX_SERVER_NAME = '';
\$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
EOF
chmod o+w /usr/share/zabbix-trunk/ui/conf/zabbix.conf.php
echo "
server {
listen 44301 ssl http2;
server_name 10.0.0.249 trunk.aigarskadikis.com;
ssl_certificate /etc/zabbix/wildcard.aigarskadikis.com.cer;
ssl_certificate_key /etc/zabbix/wildcard.aigarskadikis.com.key;
ssl_session_timeout 1d;
ssl_session_cache shared:MozSSL:10m; # about 40000 sessions
ssl_session_tickets off;
# intermediate configuration
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers off;
root /usr/share/zabbix-trunk/ui;
index index.php;
location = /favicon.ico {
log_not_found off;
}
location / {
try_files \$uri \$uri/ =404;
}
location /assets {
access_log off;
expires 10d;
}
location ~ /\.ht {
deny all;
}
location ~ /(api\/|conf[^\.]|include|locale) {
deny all;
return 404;
}
location ~ [^/]\.php(/|$) {
fastcgi_pass unix:/run/php-fpm/zabbix.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_param DOCUMENT_ROOT /usr/share/zabbix-trunk/ui;
fastcgi_param SCRIPT_FILENAME /usr/share/zabbix-trunk/ui\$fastcgi_script_name;
fastcgi_param PATH_TRANSLATED /usr/share/zabbix-trunk/ui\$fastcgi_script_name;
include fastcgi_params;
fastcgi_param QUERY_STRING \$query_string;
fastcgi_param REQUEST_METHOD \$request_method;
fastcgi_param CONTENT_TYPE \$content_type;
fastcgi_param CONTENT_LENGTH \$content_length;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
}
" | sudo tee /etc/nginx/conf.d/http.10.0.0.249.44301.conf
sudo systemctl reload nginx php-fpm
Wow it works, that's great, thank you
ReplyDelete