ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ ื‘ืึทืึทืžื˜ืขืจ PostgreSQL ืžื•ืกื˜ืขืจ ืื•ื™ืฃ Zabbix 4.4

ื”ืขืœื ืึทืœืขืžืขืŸ.

ื–ืื‘ื™ืงืก ื”ืื˜ ืื™ืฆื˜ ื ื‘ืืืžื˜ืขืจ ืžื•ืกื˜ืขืจ DB PostgreSQL. ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ ืžื™ืจ ื•ื•ืขืœืŸ ืงืึทื ืคื™ื’ื™ืขืจ ืขืก ืื™ืŸ Zabbix 4.4.

ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ ื‘ืึทืึทืžื˜ืขืจ PostgreSQL ืžื•ืกื˜ืขืจ ืื•ื™ืฃ Zabbix 4.4

NOTE

ืื•ื™ื‘ ืื™ืจ ื–ืขื ื˜ ื’ื•ื˜ ืžื™ื˜ ืขื ื’ืœื™ืฉ, ืื™ืš ืจืขืงืึธืžืขื ื“ื™ืจืŸ ืฆื• ื™ื ืกื˜ืึทืœื™ืจืŸ ื“ื™ ืžื•ืกื˜ืขืจ ืœื•ื™ื˜ ื“ืขืจ ื‘ืึทืึทืžื˜ืขืจ ืžืึทื ื•ืึทืœ

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

ืึธื‘ืขืจ, ืžื™ื™ืŸ ืึทืจื˜ื™ืงืœ ื ืขืžื˜ ืื™ืŸ ื—ืฉื‘ื•ืŸ ื ื•ืึทื ืกื™ื– ื•ื•ืึธืก ื–ืขื ืขืŸ ื ื™ืฉื˜ ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ืื™ืŸ ื“ืขื ืœื™ื ืง.

ืคึผืจื™ืคึผืขืจื™ื ื’ ื“ื™ ืžื•ืกื˜ืขืจ

1. ื’ื™ื™ืŸ ืฆื• ื“ื™ื™ืŸ ื”ื™ื™ื ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ.

cd ~

2. ืืจืืคืงืืคื™ืข ื“ื™ ื’ื™ื˜ ื ื•ืฆืŸ ืื•ืŸ ืงืœืึธื•ืŸ ื“ื™ ื‘ืึทืึทืžื˜ืขืจ 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

NOTE

ืื•ื™ื‘ 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. ื’ื™ื™ืŸ ืฆื• ื“ื™ ื–ืึทื‘ื™ืงืก ื‘ืœืึทื˜;
  2. ื’ื™ื™ืŸ ืฆื• ื“ื™ ื‘ืœืึทื˜ "ืงืึธื ืคื™ื’ื•ืจืึทื˜ื™ืึธืŸ" => "ื‘ืึทืœืขื‘ืึธืก";
  3. ื“ืจื™ืงื˜ ืื•ื™ืฃ ื“ื™ ืงื ืขืคึผืœ "ืฉืึทืคึฟืŸ ื‘ืึทืœืขื‘ืึธืก"ืึธื“ืขืจ ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืึท ื™ื’ื–ื™ืกื˜ื™ื ื’ ื‘ืึทืœืขื‘ืึธืก;
  4. ืื•ื™ืฃ ื“ืขืจ ื‘ืึทืœืขื‘ืึธืก ืฉืึทืคื•ื ื’ / ืขื“ื™ื˜ื™ื ื’ ื‘ืœืึทื˜, ืกืขืœืขืงื˜ื™ืจืŸ ื“ืขื "ื˜ืขืžืคึผืœืึทื˜ืขืก"ืื•ืŸ ืื•ืŸ ื’ื™ื˜ ืื•ื™ืฃ ื“ื™ ืœื™ื ืง"ืฆื•ื’ืขื‘ืŸ";
  5. ืื™ืŸ "ื’ืจื•ืคืข", ืกืขืœืขืงื˜ื™ืจืŸ "ื˜ืขืžืคึผืœืึทื˜ืขืก / ื“ืึทื˜ืึทื‘ื™ื™ืกื™ื–" ืคื•ืŸ ื“ืขืจ ืจืฉื™ืžื”, ืกืขืœืขืงื˜ื™ืจืŸ ื“ืขื ืžื•ืกื˜ืขืจ "ืžื•ืกื˜ืขืจ DB PostgreSQL", ื“ืจื™ืงืŸ ื“ืขื ืงื ืขืคึผืœ "ืงืœื™ื™ึทื‘ืŸ"ืื•ืŸ ื“ืจื™ืงืŸ ื“ืขื ืงื ืขืคึผืœ"ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงืŸ";

ืžื™ืจ ื•ื•ืึทืจื˜ืŸ ืคึฟืึทืจ ืขื˜ืœืขื›ืข ืžืึธืœ ืื•ืŸ ืœืขืกืึธืฃ ื’ื™ื™ืŸ ืฆื• "ืžืึธื ื™ื˜ืึธืจื™ื ื’" => "ืœืขืฆื˜ ื“ืึทื˜ืข" => "Hosts"ืกืขืœืขืงื˜ื™ืจืŸ ืึท ืกืขืจื•ื•ืขืจ ืžื™ื˜ PostgreSQL => ื’ื™ื˜ "ืฆื•ืœื™ื™ื’ืŸ".

ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ ื‘ืึทืึทืžื˜ืขืจ PostgreSQL ืžื•ืกื˜ืขืจ ืื•ื™ืฃ Zabbix 4.4
ื”ื ืื”!

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

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’