Zabbix 3.0のデータベースにPostgreSQL9.6を使う
ZabbixのデータベースにはMySQLを使うのが一般的かと思いますが、今回PostgreSQL9.6の環境にZabbixをインストールする必要があったので、インストール手順をかんたんにメモします。
インストールメモなのでfirewalldやselinuxは無効状態にしてあります。
またPostgreSQLの認証設定もテスト構築向けになっています。
PostgreSQL9.6のインストール
CentOS7でPostgreSQLをインストールする場合、yumだとPostgreSQLは9.2系がインストールされると思うのですが、今回は現時点で最新の9.6系をインストールします。
標準レポジトリのpostgresqlをインストールしないように設定します。
/etc/yum.repos.d/CentOS-Base.repo
の[base]
と[updates]
セクションに以下を追記します。
exclude=postgresql*
次にPostgreSQL9.6のレポジトリをインストールしてZabbix用のデータベースとユーザーを作成します。
### PostgreSQL9.6のレポジトリをインストール yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm ### PostgreSQL9.6をインストール yum install postgresql96-server ### データベースの初期化 PGSETUP_INITDB_OPTIONS="--encoding=UTF-8 --no-locale" /usr/pgsql-9.6/bin/postgresql96-setup initdb ### PostgreSQLを自動起動にし起動する systemctl enable postgresql-9.6 systemctl start postgresql-9.6 ### Zabbix用のユーザーとデータベースを作成する su - postgres -c "createuser -P zabbix" su - postgres -c "createdb -O zabbix -E UTF8 zabbix" ### pg_hba.confを修正する(テスト構築向け) tee /var/lib/pgsql/9.6/data/pg_hba.conf <<-'EOF' local all all trust host all all 127.0.0.1/32 trust host all all ::1/128 trust EOF ### pg_hba.confの設定を反映させる systemctl reload postgresql-9.6
CentOS 7にZabbix3.0をインストール
CentOS 7にZabbix 3.0をインストールします。
Zabbixはレポジトリをインストールすることでyumでインストールできるようになるので今回はyumでインストールします。
### Zabbix3.0のレポジトリをインストール yum install http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm ### Zabbix3.0のインストール yum install zabbix-agent zabbix-server-pgsql zabbix-web-pgsql zabbix-web-japanese ### Zabbix用phpの設定 sed -i 's|# php_value date.timezone Europe/Riga|php_value date.timezone Asia/Tokyo|' /etc/httpd/conf.d/zabbix.conf ### Zabbix用の初期テーブルを作る zcat /usr/share/doc/zabbix-server-pgsql-3.0.7/create.sql.gz | psql -U zabbix zabbix ### Zabbixのデータベースの設定を変更する(DBPasswordはcreateuser時のパスワードを設定する) sed -i 's/# DBPassword=/DBPassword=zabbix/' /etc/zabbix/zabbix_server.conf sed -i 's/# DBPort=3306/DBPort=5432/' /etc/zabbix/zabbix_server.conf ### Zabbixを自動起動にし起動する systemctl enable httpd systemctl enable zabbix-server systemctl start httpd systemctl start zabbix-server
動作確認
ブラウザでhttp://サーバーIP/zabbix/
を開いて初期設定を行います。
データベースの設定画面でパスワードの入力項目があるので、ここにはPostgreSQLの設定時に作成したzabbix
ユーザーのパスワードを入力します。
問題なければログイン画面が表示されますので初期設定の管理者ユーザーAdmin
、パスワードzabbix
でログインできます。