Добрый день уважаемые коллеги!
Стоит задача мониторинга приблизительно 20к хостов. Если быть точным хосты: 18454, элементы данных 20889651 , триггеры - 964722 версия Zabbix 3.2.11. Архитектура решения следующая: СУБД развернута на двух узлах
MariaDB Galera Cluster 10. Подключение к ним происходит через HAProxy в свою очередь развернутого на кластере Pacemaker в качеств еразделяемого ресурса, практическая роль которого - фейловер прокси. Фронтенд развернут в качестве разделяемого Apache там же где и HAPRoxy. Вся инфраструктура живет в виртуальных машинах Hyper-V 2016.
Фронтенд работает крайне медленно. Раздел Мониторинг->Графики /Триггеры открывается по 15-20 минут. Очередь элементов данных выглядит как на картинке.
В чем тут может быть проблема?.. Может кто поделиться опытом аналогичных развертываний?
Конфигурация ВМ:
СУБД:
16 CPU
72GB RAM
300 GB статические VHD.
HAProxy + Frontend:
8 CPU
16GB RAM
50 GB динамический VHD.
Конфиг httpd и папка с фронтендом (/usr/share/zabbix) синхронизируется между узлами через GlusterFS, используется XCache.
Zabbix Сервер:
12 CPU
32GB RAM
50 GB динамический VHD.
Конфиг mysql (идентичен на обоих узлах):
[client-server]
[mysqld]
general_log_file = /var/log/mysqld.log
general_log = 1
log-error = /var/log/mysqld.error.log
wsrep_on=ON
wsrep_node_name=<name>
wsrep_node_address="10.xx.xx.xx"
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_provider_options="gcache.size=10G;gcache.rec over=yes"
wsrep_cluster_name="zabbix"
wsrep_cluster_address="gcomm://10.xx.xx.xx,10.xx.xx.xx"
wsrep_sst_method=rsync
wsrep_slave_threads=32
max_connections=3000
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
binlog_format=ROW
default_storage_engine=innodb
innodb_autoinc_lock_mode=2
innodb_flush_log_at_trx_commit=0
innodb_buffer_pool_size=49152M
innodb_buffer_pool_instance=64
innodb_old_blocks_time=1000
query_cache_size = 32M
innodb_file_per_table = 1
sync_binlog=0
optimizer_switch = 'index_condition_pushdown=off'
slow_query_log = 1
slow_query_log_file = /var/lib/mysql/slow_queries.log
long_query_time = 0.05
log-queries-not-using-indexes = 1
max_allowed_packet=64M
character_set_server=utf8
collation-server=utf8_bin
init_connect="SET NAMES utf8 collate utf8_bin"
[mysql_safe]
log-error = /var/log/mysqld.error.log
pid-file=/var/run/mysqld/mysqld.pid
!includedir /etc/my.cnf.d
Конфиг HAProxy:
global
log 127.0.0.1 local0 notice
user haproxy
group haproxy
defaults
log global
retries 2
timeout connect 5000
timeout server 480m
timeout client 480m
listen mysql-cluster
bind 10.xx.xx.xx:3306
mode tcp
option httpchk
balance leastconn
default-server port 50005 inter 5000 rise 3 fall 2 slowstart 60s maxconn 1024 maxqueue 512 weight 100
server zabbixdb01 10.xx.xx.xx:3306 check backup
server zabbixdb02 10.xx.xx.xx:3306 check
Конфиг Zabbix Сервера:
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
DebugLevel=3
PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=10.xx.xx.xx
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=3306
StartPollers=100
StartPollersUnreachable=100
StartTrappers=300
StartDiscoverers=250
StartEscalators=10
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
ListenIP=0.0.0.0
HousekeepingFrequency=1
MaxHousekeeperDelete=100000
CacheSize=8G
CacheUpdateFrequency=120
StartDBSyncers=50
HistoryCacheSize=512M
HistoryIndexCacheSize=512M
TrendCacheSize=512M
ValueCacheSize=1G
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=0
Стоит задача мониторинга приблизительно 20к хостов. Если быть точным хосты: 18454, элементы данных 20889651 , триггеры - 964722 версия Zabbix 3.2.11. Архитектура решения следующая: СУБД развернута на двух узлах
MariaDB Galera Cluster 10. Подключение к ним происходит через HAProxy в свою очередь развернутого на кластере Pacemaker в качеств еразделяемого ресурса, практическая роль которого - фейловер прокси. Фронтенд развернут в качестве разделяемого Apache там же где и HAPRoxy. Вся инфраструктура живет в виртуальных машинах Hyper-V 2016.
Фронтенд работает крайне медленно. Раздел Мониторинг->Графики /Триггеры открывается по 15-20 минут. Очередь элементов данных выглядит как на картинке.
В чем тут может быть проблема?.. Может кто поделиться опытом аналогичных развертываний?
Конфигурация ВМ:
СУБД:
16 CPU
72GB RAM
300 GB статические VHD.
HAProxy + Frontend:
8 CPU
16GB RAM
50 GB динамический VHD.
Конфиг httpd и папка с фронтендом (/usr/share/zabbix) синхронизируется между узлами через GlusterFS, используется XCache.
Zabbix Сервер:
12 CPU
32GB RAM
50 GB динамический VHD.
Конфиг mysql (идентичен на обоих узлах):
[client-server]
[mysqld]
general_log_file = /var/log/mysqld.log
general_log = 1
log-error = /var/log/mysqld.error.log
wsrep_on=ON
wsrep_node_name=<name>
wsrep_node_address="10.xx.xx.xx"
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_provider_options="gcache.size=10G;gcache.rec over=yes"
wsrep_cluster_name="zabbix"
wsrep_cluster_address="gcomm://10.xx.xx.xx,10.xx.xx.xx"
wsrep_sst_method=rsync
wsrep_slave_threads=32
max_connections=3000
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
binlog_format=ROW
default_storage_engine=innodb
innodb_autoinc_lock_mode=2
innodb_flush_log_at_trx_commit=0
innodb_buffer_pool_size=49152M
innodb_buffer_pool_instance=64
innodb_old_blocks_time=1000
query_cache_size = 32M
innodb_file_per_table = 1
sync_binlog=0
optimizer_switch = 'index_condition_pushdown=off'
slow_query_log = 1
slow_query_log_file = /var/lib/mysql/slow_queries.log
long_query_time = 0.05
log-queries-not-using-indexes = 1
max_allowed_packet=64M
character_set_server=utf8
collation-server=utf8_bin
init_connect="SET NAMES utf8 collate utf8_bin"
[mysql_safe]
log-error = /var/log/mysqld.error.log
pid-file=/var/run/mysqld/mysqld.pid
!includedir /etc/my.cnf.d
Конфиг HAProxy:
global
log 127.0.0.1 local0 notice
user haproxy
group haproxy
defaults
log global
retries 2
timeout connect 5000
timeout server 480m
timeout client 480m
listen mysql-cluster
bind 10.xx.xx.xx:3306
mode tcp
option httpchk
balance leastconn
default-server port 50005 inter 5000 rise 3 fall 2 slowstart 60s maxconn 1024 maxqueue 512 weight 100
server zabbixdb01 10.xx.xx.xx:3306 check backup
server zabbixdb02 10.xx.xx.xx:3306 check
Конфиг Zabbix Сервера:
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
DebugLevel=3
PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=10.xx.xx.xx
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=3306
StartPollers=100
StartPollersUnreachable=100
StartTrappers=300
StartDiscoverers=250
StartEscalators=10
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
ListenIP=0.0.0.0
HousekeepingFrequency=1
MaxHousekeeperDelete=100000
CacheSize=8G
CacheUpdateFrequency=120
StartDBSyncers=50
HistoryCacheSize=512M
HistoryIndexCacheSize=512M
TrendCacheSize=512M
ValueCacheSize=1G
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=0

Comment