Zabbix подржава TimescaleDB, решење базе података засновано на PostgreSQL-у за аутоматско партиционисање података у делове засноване на времену како би се подржале брже перформансе у скали.
Zabbix прокси тренутно не подржава TimescaleDB.
Упутства на овој страници се могу користити за следеће сценарије:
Претпостављамо да је TimescaleDB екстензија већ инсталирана на серверу базе података (погледајте упутства за инсталацију у Timescale документацији).
Такође, TimescaleDB екстензија мора бити омогућена за одређени DB извршавањем наредбе:
За покретање ове команде потребне су привилегије администратора базе података.
Ако користите шему базе података која није 'public', потребно је додати SCHEMA клаузулу горњој команди. Нпр.:
echo "CREATE EXTENSION IF NOT EXISTS timescaledb SCHEMA yourschema CASCADE;" | sudo -u postgres psql zabbix
Затим покрените скрипту postgresql/timescaledb/schema.sql
. За нове инсталације, скрипта се мора покренути након што се креира обична PostgreSQL база података са почетном шемом/подацима (погледајте креирање базе података).
Занемарите поруке упозорења које обавештавају да се најбоље праксе не поштују док се извршава скрипта schema.sql
на TimescaleDB верзији 2.9.0 и новијим. Без обзира на ово упозорење, конфигурација ће бити успешно завршена.
Миграција постојеће историје, трендова и података евиденције ревизије може потрајати доста времена. Zabbix сервер и кориснички интерфејс морају бити искључени током периода миграције.
Скрипта schema.sql
поставља следеће параметре одржавања:
Да бисте користили партиционирано чишћење за историју и трендове, обе ове опције морају бити омогућене. Такође је могуће индивидуално омогућити било само за историју или само за трендове.
Скрипта postgresql/timescaledb/schema.sql
поставља два додатна параметра:
Да бисте успешно уклонили компримоване податке од стране housekeeper-а, обе опције Замени период историје ставки и Прегази период тренда ставке морају бити омогућене. Ако је заобилажење онемогућено и табеле имају компримоване делове, housekeeper неће уклонити податке из ових табела и биће приказана упозорења о неисправној конфигурацији у секцијамаHousekeeping и Информацијама о систему.
Сви ови параметри се могу променити у Администрација → Housekeeping након инсталације.
Можда ћете желети да покренете timescaledb-tune алат обезбеђен од стране TimescaleDB да бисте оптимизовали конфигурационе параметре PostgreSQL у вашем postgresql.conf
.
Приликом надоградње Zabbix-а на верзију која садржи нове TimescaleDB хипертабеле, Zabbix сервер не конфигурише аутоматски те хипертабеле (на пример, приликом надоградње са Zabbix-а 6.4 на 7.0.3, пошто су верзије 7.0.0 и 7.0.2 увеле нове хипертабеле).
Да бисте конфигурисали нове TimescaleDB хипертабеле, следите ове кораке:
postgresql/timescaledb/schema.sql
; ово конфигурише нове TimescaleDB хипертабеле. Имајте на уму да су се од Zabbix-а 7.0.0 локација и име скрипте променили из postgresql/timescaledb.sql
у postgresql/timescaledb/schema.sql
.Занемарите поруке упозорења које обавештавају да се најбоље праксе не поштују док се покреће скрипта schema.sql
на TimescaleDB верзији 2.9.0 и новијим. Без обзира на ово упозорење, конфигурација ће бити успешно завршена.
Нативна ТимесцалеДБ компресија је подржана за све Zabbix табеле које су TimescaleDB хипертабеле. Током надоградње или миграције на TimescaleDB, почетна компресија великих табела може трајати дуже времена.
Имајте на уму да је компресија подржана под "timescale" лиценцом заједнице Timescale Community и није подржан под "apache" Apache 2.0 лиценцом. Ако Zabbix открије да компресија није подржана порука упозорења се уписује у лог Zabbix сервера и корисници не могу омогућити компресију у корисничком интерфејсу.
Корисницима се препоручује да се упознају са компресијом у документацији Timescale пре употребе компресије.
Имајте на уму да постоје одређена ограничења која намеће компресија, конкретно:
Подешавања компресије се могу променити у Историји и трендовима блок компресије у Администрацији → Кућанству одељак Заббик фронтенда.
Parameter | Default | Comments |
---|---|---|
Омогући компресију | Омогућено | Означавањем или поништавањем поља за потврду не активира/деактивира компресију одмах. Пошто се компресија обрађује преко Housekeeper-а, промене ће ступити на снагу за највише 2 пута HousekeepingFrequency (подешено у zabbix_server.conf)))Након онемогућавања компресије, нови сегменти који спадају у период компресије неће бити компримовани. Међутим, сви претходно компримовани подаци ће остати компримовани. Да бисте декомпримовали претходно компримоване делове, пратите упутства у Документацији Timescale. Када вршите надоградњу са старијих верзија Zabbix-а помоћу TimescaleDB подршке, компресија неће бити подразумевано омогућена. |
Компресујте записе старије од | 7d | Овај параметар не може бити краћи од 7 дана. Због непроменљивости компримованих делова, сви закаснели подаци (нпр. подаци одложени од стране проксија) који су старији од ове вредности биће одбачени. |