ื”ื’ื“ืจืช ืชื‘ื ื™ืช PostgreSQL ื”ืจืฉืžื™ืช ื‘- Zabbix 4.4

ืฉืœื•ื ืœื›ื•ืœื.

ืœ-Zabix ื™ืฉ ืขื›ืฉื™ื• ืคืงื™ื“ ืชื‘ื ื™ืช DB PostgreSQL. ื‘ืžืืžืจ ื–ื” ื ื’ื“ื™ืจ ืื•ืชื• ื‘- Zabbix 4.4.

ื”ื’ื“ืจืช ืชื‘ื ื™ืช PostgreSQL ื”ืจืฉืžื™ืช ื‘- Zabbix 4.4

ื”ืขืจื”

ืื ืืชื” ื˜ื•ื‘ ื‘ืื ื’ืœื™ืช, ืื– ืื ื™ ืžืžืœื™ืฅ ืœื”ืชืงื™ืŸ ืืช ื”ืชื‘ื ื™ืช ืœืคื™ ื”ืžื“ืจื™ืš ื”ืจืฉืžื™

github.com/zabbix/zabbix/tree/master/templates/db/postgresql

ืขื ื–ืืช, ื”ืžืืžืจ ืฉืœื™ ืœื•ืงื— ื‘ื—ืฉื‘ื•ืŸ ื ื™ื•ืื ืกื™ื ืฉืื™ื ื ื›ืœื•ืœื™ื ื‘ืงื™ืฉื•ืจ ื–ื”.

ื”ื›ื ืช ื”ืชื‘ื ื™ืช

1. ืขื‘ื•ืจ ืืœ ืกืคืจื™ื™ืช ื”ื‘ื™ืช ืฉืœืš.

cd ~

2. ื”ื•ืจื“ ืืช ื›ืœื™ ื”ืขื–ืจ git ื•ืฉื‘ื˜ ืืช ื”ืžืื’ืจ ื”ืจืฉืžื™ ืฉืœ Zabbix, ืฉื ืžืฆื ื‘-GitHub.

yum -y install git
git clone https://github.com/zabbix/zabbix.git

3. ืขื‘ื•ืจ ืืœ ื”ืกืคืจื™ื™ื” ืขื ืชื‘ื ื™ืช PostgreSQL.

cd zabbix/templates/db/postgresql/

ื”ื’ื“ืจืช ืชื‘ื ื™ืช ืœืกื•ื›ืŸ Zabbix

1. ื‘ื•ืื• ื ืชื—ื‘ืจ ืœ-PostgreSQL.

psql -U postgres

2. ืฆื•ืจ zbx_monitor ืœืžืฉืชืžืฉ ืœืงืจื™ืื” ื‘ืœื‘ื“ ืขื ื’ื™ืฉื” ืœืฉืจืช PostgreSQL.

ืขื‘ื•ืจ PostgreSQL ื’ืจืกื” 10 ื•ืžืขืœื”:

CREATE USER zbx_monitor WITH PASSWORD '<ะ’ะะจ_ะŸะะ ะžะ›ะฌ>' INHERIT; GRANT pg_monitor TO zbx_monitor;

ืขื‘ื•ืจ PostgreSQL ื’ืจืกื” 9.6 ื•ืžื˜ื”:

CREATE USER zbx_monitor WITH PASSWORD '<ะ’ะะจ_ะŸะะ ะžะ›ะฌ>';
GRANT SELECT ON pg_stat_database TO zbx_monitor;

--ะ”ะปั ัะฑะพั€ะฐ ะผะตั‚ั€ะธะบ WAL ะฟะพะปัŒะทะพะฒะฐั‚ะตะปัŒ ะดะพะปะถะตะฝ ะฑั‹ั‚ัŒ superuser.
ALTER USER zbx_monitor WITH SUPERUSER;

3. ื”ืขืชืง ืืช ืกืคืจื™ื™ืช postgresql/ ืœืกืคืจื™ื™ืช /var/lib/zabbix/. ืื ืื™ืŸ ืœืš ืกืคืจื™ื™ืช zabbix/ ื‘-/var/lib/, ืื– ืฆื•ืจ ืื•ืชื”. ื”ืกืคืจื™ื™ื” postgresql / ืžื›ื™ืœื” ืืช ื”ืงื‘ืฆื™ื ื”ื“ืจื•ืฉื™ื ืœืื—ื–ื•ืจ ืžื“ื“ื™ื ืž-PostgreSQL.

cp -r postgresql/ /var/lib/zabbix/

4. ืœืื—ืจ ืžื›ืŸ ื”ืขืชืง ืืช ื”ืงื•ื‘ืฅ template_db_postgresql.conf ืœืกืคืจื™ื™ืช ื”ืชืฆื•ืจื” ืฉืœ ืกื•ื›ืŸ Zabbix /etc/zabbix/zabbix_agentd.d/ ื•ื”ืคืขืœ ืžื—ื“ืฉ ืืช ื”ืกื•ื›ืŸ Zabbix.

cp template_db_postgresql.conf /etc/zabbix/zabbix_agentd.d/

5. ื›ืขืช ื‘ื•ืื• ื ืขืจื•ืš ืืช ื”ืงื•ื‘ืฅ pg_hba.conf ื›ื“ื™ ืœืืคืฉืจ ื—ื™ื‘ื•ืจ ืœ- Zabbix. ืคืจื˜ื™ื ื ื•ืกืคื™ื ืขืœ ื”ืงื•ื‘ืฅ pg_hba.conf: https://www.postgresql.org/docs/current/auth-pg-hba-conf.html.

ืคืชื— ืืช ื”ืงื•ื‘ืฅ:

vi /var/lib/pgsql/12/data/pg_hba.conf

ื”ื•ืกืฃ ืื—ืช ืžื”ืฉื•ืจื•ืช (ืื ืื™ื ืš ืžื‘ื™ืŸ ืžื“ื•ืข ื–ื” ื ื—ื•ืฅ, ื”ื•ืกืฃ ืจืง ืืช ื”ืฉื•ืจื” ื”ืจืืฉื•ื ื”).

host all zbx_monitor 127.0.0.1/32 trust
host all zbx_monitor 0.0.0.0/0 md5
host all zbx_monitor ::0/0 md5

ื”ืขืจื”

ืื PostgreSQL ืžื•ืชืงืŸ ืžืžืื’ืจ PGDG, ื”ื•ืกืฃ ืืช ื”ื ืชื™ื‘ ืœ-pg_isready ืœืžืฉืชื ื” ื”ืกื‘ื™ื‘ื” PATH ืขื‘ื•ืจ ืžืฉืชืžืฉ zabbix.

ื›ืื•ืคืฆื™ื”:

ln -s /usr/pgsql-12/bin/pg_isready /usr/bin/pg_isready

* - ืžื›ื™ื•ื•ืŸ ืฉื™ืฉ ืœื™ pgsql ื’ืจืกื” 12, ื™ื”ื™ื” ืœืš ื ืชื™ื‘ ืื—ืจ ื‘ืžืงื•ื pgsql-12.

ืื ื–ื” ืœื ื ืขืฉื”, ืื– ืกื˜ื˜ื•ืก: ืคื™ื ื’ ืชืžื™ื“ ื™ื”ื™ื” ืœืžื˜ื”.

ื”ื•ืกืคืช ืชื‘ื ื™ืช ื‘ื—ื–ื™ืช Zabbix

ืื ื™ ืžืืžื™ืŸ ืฉืžื™ ืฉืฆืจื™ืš ืœืงื—ืช ืžื“ื“ื™ื ืž-PostgreSQL ื›ื‘ืจ ื™ื•ื“ืข ืœื”ื•ืกื™ืฃ ืชื‘ื ื™ื•ืช. ืœื›ืŸ, ืืชืืจ ืืช ื”ืชื”ืœื™ืš ื‘ืงืฆืจื”.

  1. ืขื‘ื•ืจ ืœื“ืฃ Zabbix;
  2. ืขื‘ื•ืจ ืœื“ืฃ "ืชึฐืฆื•ึผืจึธื”" => "ืžืืจื—";
  3. ืœื—ืฅ ืขืœ ื”ื›ืคืชื•ืจ "ืฆื•ืจ ืžืืจื—"ืื• ื‘ื—ืจ ืžืืจื— ืงื™ื™ื;
  4. ื‘ื“ืฃ ื”ื™ืฆื™ืจื”/ืขืจื™ื›ื” ืฉืœ ื”ืžืืจื—, ื‘ื—ืจ ืืช "ืชื‘ื ื™ื•ืช"ื•ืœื—ืฅ ืขืœ ื”ืงื™ืฉื•ืจ"ืœื”ื•ืกื™ืฃ";
  5. ื‘"ืงื‘ื•ืฆื”", ื‘ื—ืจ "ืชื‘ื ื™ื•ืช/ืžืื’ืจื™ ืžื™ื“ืข" ืžื”ืจืฉื™ืžื”, ื‘ื—ืจ ืืช ื”ืชื‘ื ื™ืช "ืชื‘ื ื™ืช DB PostgreSQL", ืœื—ืฅ ืขืœ ื”ื›ืคืชื•ืจ "ื‘ื—ืจ" ื•ืœื—ืฅ ืขืœ ื”ื›ืคืชื•ืจ "ืขื“ื›ื•ืŸ";

ืื ื—ื ื• ืžื—ื›ื™ื ื–ืžืŸ ืžื” ื•ืœื‘ืกื•ืฃ ื”ื•ืœื›ื™ื ืœ"ื ื™ื˜ื•ืจ" => "ื ืชื•ื ื™ื ืื—ืจื•ื ื™ื" => "ืžืืจื—ื™ื"ื‘ื—ืจ ืฉืจืช ืขื PostgreSQL => ืœื—ืฅ ืขืœ "ื”ื—ืœ".

ื”ื’ื“ืจืช ืชื‘ื ื™ืช PostgreSQL ื”ืจืฉืžื™ืช ื‘- Zabbix 4.4
ืชื”ื ื•!

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”