Zabbix 4.4 āĻ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ PostgreSQL āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ āĻ¸ā§‡āĻŸ āĻ†āĻĒ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻšāĻžāĻ‡ āĻ¸āĻŦāĻžāĻ‡

Zabbix āĻāĻ–āĻ¨ āĻāĻ•āĻœāĻ¨ āĻ•āĻ°ā§āĻŽāĻ•āĻ°ā§āĻ¤āĻž āĻ†āĻ›ā§‡ āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ DB PostgreSQL. āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡ āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻŋ Zabbix 4.4 āĻ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻŦāĨ¤

Zabbix 4.4 āĻ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ PostgreSQL āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ āĻ¸ā§‡āĻŸ āĻ†āĻĒ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–ā§āĻ¯

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ‡āĻ‚āĻ°ā§‡āĻœāĻŋāĻ¤ā§‡ āĻ­āĻžāĻ˛ āĻšāĻ¨ āĻ¤āĻŦā§‡ āĻ†āĻŽāĻŋ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻāĻŋāĻ‡

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

āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ†āĻŽāĻžāĻ° āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŸāĻŋ āĻāĻ‡ āĻ˛āĻŋāĻ™ā§āĻ•ā§‡ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ¨āĻ¯āĻŧ āĻāĻŽāĻ¨ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽāĻ¤āĻž āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°ā§‡āĨ¤

āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

1. āĻ†āĻĒāĻ¨āĻžāĻ° āĻšā§‹āĻŽ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ āĻ¯āĻžāĻ¨āĨ¤

cd ~

2. āĻ—āĻŋāĻŸ āĻ‡āĻ‰āĻŸāĻŋāĻ˛āĻŋāĻŸāĻŋ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ—āĻŋāĻŸāĻšāĻžāĻŦā§‡ āĻ…āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻœā§āĻ¯āĻžāĻŦāĻŋāĻ•ā§āĻ¸ āĻ°āĻŋāĻĒā§‹āĻœāĻŋāĻŸāĻ°āĻŋ āĻ•ā§āĻ˛ā§‹āĻ¨ āĻ•āĻ°ā§āĻ¨āĨ¤

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. PostgreSQL āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻĒāĻ āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ zbx_monitor āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨āĨ¤

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/ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ āĻ…āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¯āĻĻāĻŋ /var/lib/-āĻ āĻāĻ•āĻŸāĻŋ zabbix/ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨āĻž āĻĨāĻžāĻ•ā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻāĻŸāĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨āĨ¤ Postgresql / āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ PostgreSQL āĻĨā§‡āĻ•ā§‡ āĻŽā§‡āĻŸā§āĻ°āĻŋāĻ•ā§āĻ¸ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻĢāĻžāĻ‡āĻ˛ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

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

4. āĻ¤āĻžāĻ°āĻĒāĻ° Zabbix āĻāĻœā§‡āĻ¨ā§āĻŸ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ /etc/zabbix/zabbix_agentd.d/-āĻ template_db_postgresql.conf āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ…āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ Zabbix āĻāĻœā§‡āĻ¨ā§āĻŸ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻšāĻžāĻ˛ā§ āĻ•āĻ°ā§āĻ¨āĨ¤

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

5. āĻāĻ–āĻ¨ Zabbix-āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻāĻŋāĻ¤ā§‡ pg_hba.conf āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻ•āĻ°āĻž āĻ¯āĻžāĻ•āĨ¤ 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

āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–ā§āĻ¯

PGDG āĻ¸āĻ‚āĻ—ā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ āĻĨā§‡āĻ•ā§‡ PostgreSQL āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻĨāĻžāĻ•āĻ˛ā§‡, zabbix āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻœāĻ¨ā§āĻ¯ PATH āĻāĻ¨āĻ­āĻžāĻ¯āĻŧāĻ°āĻ¨āĻŽā§‡āĻ¨ā§āĻŸ āĻ­ā§‡āĻ°āĻŋāĻ¯āĻŧā§‡āĻŦāĻ˛ā§‡ pg_isready-āĻ āĻĒāĻžāĻĨ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨āĨ¤

āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻšāĻŋāĻ¸āĻžāĻŦā§‡:

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 āĻĻāĻŋāĻ¯āĻŧā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°ā§āĻ¨ => āĻ•ā§āĻ˛āĻŋāĻ• āĻ•āĻ°ā§āĻ¨"āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°āĻž"āĨ¤

Zabbix 4.4 āĻ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ PostgreSQL āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ āĻ¸ā§‡āĻŸ āĻ†āĻĒ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡
āĻ‰āĻĒāĻ­ā§‹āĻ— āĻ•āĻ°ā§āĻ¨!

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨