【Zabbix】Zabbixサーバの構築_02_PostgreSQLの設定

PostgreSQL

はじめに

前回の続きで、PostgreSQLの設定を入れていきます。

構成図

ホスト名:zabbix-ap01
IP:172.16.1.101
構成:AlmaLinux 9、Zabbix6.0

ホスト名:zabbix-ap02
IP:172.16.1.102
構成:AlmaLinux 9、Zabbix6.0

ホスト名:zabbix-db01
IP:172.16.1.104
構成:AlmaLinux 9、PostgreSQL 13

ホスト名:zabbix-db02
IP:172.16.1.105
構成:AlmaLinux 9、PostgreSQL 13

PostgreSQL設定

実施するサーバ:zabbix-db01、zabbix-db02

まず、環境変数PGDATAの値を確認します。PGDATAはおおよそ以下の実行結果と同じになっていると思いますが、違うと後々の作業に影響があるので、念のため確認しておきましょう。

データベースの初期化を行います。

レプリケーション用のユーザを作成します。パスワード設定はしますが、操作者がレプリケーションユーザでDB接続することはないです。

次にPacemaker用の設定を行います。ただ、今回の設定はDBへの接続制限をガチガチにしないので、正直なくても良いです。PacemakerでのDB起動時にtemplate1への接続が行われるため、接続制限がある場合は以下の設定がないと起動に失敗するので、お守りみたいなものです。

いよいよpostgresql.confを設定します。念のためコピーを作成しておきましょう。なお、キャッシュやメモリ容量は構築されるサーバの容量に応じて変える必要があります。その他、要件に応じて設定は変える必要はありますが、本構築では以下の設定を入れて構築します。

pg_hba.confを編集します。今回は検証用なので、同セグからの接続を許可しておきます。下は一例です。
昨今、MZにあるDBであっても内部関係者からの接続を厳しくする場合はこんな設定ではダメです。構築の要件は事前に確認しましょう。(監視サーバのDBなので、やはりガチガチにすることは少ない?かも)

アーカイブデータの格納ディレクトリを作成しておきます。これは先ほどのpostgresql.conf内の「archive_command」に対応するディレクトリです。

最後にpg_ctl実行用のPATH設定を行います。/usr/pgsql-13/binをPATHに追加します。

DBの準備ができたので、Zabbix用のDBを作成します。

以下のコマンドでzabbixユーザとzabbix用のDBを作成し、zcatでSQLを実行してDB用のデータを作ります。
※/usr/share/zabbix-sql-scripts/postgresql/server.sql.gz はap側にあるデータなので、どうにかしてデータをDB側に持って来ておきます。面倒な場合はZabbixをインストールしてしまう手も一つです。

以上です。既にお気づき方がいるかと思いますが、主な設定はdb01のみの実施で問題なく、あとでdb02にベースバックアップさせれば良かったりします。※厳密に分けると漏れがありそうだったので、今回は分けずに実行するポイントを書きました。

次はPacemakerの設定を行い、PostgreSQLを冗長化させます。

タイトルとURLをコピーしました