Zabbixプロキシ環境・インストール例(PostgresSQL)

以下コマンド例内でpsql接続時のpromptは '[db名]=#'です。jobarranger-serverは3.2.2、postgreは9.5版を使用しています。データベース(jobarg)のユーザとPWはjobarg、データベース(zabbix、zabbix_proxy)のユーザとPWはzabbixとします。

postgresデータベース設定の確認

下記を確認してください。(以下の例は特定のホスト指定無)

# /var/lib/pgsql/9.5/data/postgresql.conf
listen_addresses = '*'
※外部からのアクセスを許可する。
# /var/lib/pgsql/9.5/data/pg_hba.conf
host    all             all             0.0.0.0/0            md5
※PWでのアクセスを許可する。
※これらの許可設定は、ZabbixDB側にも必要です。

Job Server:データベースの作成と初期データ登録

  1. 接続用アカウントjobargを作成、そのユーザをオーナーに指定してJob Arranger専用のデータベースjobargを作成。
    # su - postgres
    $ createuser jobarg -P
    PWを設定
    $ createdb -O jobarg -E UTF8 jobarg
    
  2. jobargデータベースにテーブルを作成し、Job Arranger初期データをインポートします。
    $ cd /usr/share/doc/jobarranger-server-postgresql-3.2.0/database/postgresql
    $ psql -U jobarg jobarg -W < PostgreSQL_JA_CREATE_TABLE.sql
    $ cd /usr/share/doc/jobarranger-server-postgresql-3.2.0/database/data
    $ psql -U jobarg jobarg -W  < JA_INSERT_TABLE.sql
    

外部データラッパー(postgres_fdw)、その他外部データ利用に必要な設定

  1. postgres_fdw拡張をインストール。
    $ psql -U postgres -d jobarg
    jobarg=# CREATE EXTENSION postgres_fdw;
    

    以下で接続作成の確認ができます。

    jobarg=# \dew
    
  2. 上接続する各外部参照データベースを定義する外部サーバオブジェクトを作成。
    jobarg=# CREATE SERVER zabbix_dblink FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host 'ホストのIP', dbname 'zabbix', port '5432');
    jobarg=# CREATE SERVER proxy_dblink FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host '127.0.0.1', dbname 'zabbix_proxy', port '5432');
    

    以下で外部サーバオブジェクト作成の確認ができます。

    jobarg=# select * from pg_foreign_server;
    
  3. 外部サーバへのアクセスを許可するデータベースユーザ毎にユーザマッピングを作成。
    jobarg=# CREATE USER MAPPING FOR public SERVER zabbix_dblink OPTIONS (user 'zabbix', password 'zabbix');
    jobarg=# CREATE USER MAPPING FOR public SERVER proxy_dblink OPTIONS (user 'zabbix', password 'zabbix');
    
  4. jobargユーザに上記で設定した外部サーバオブジェクトへのアクセス権限を付与する。
    jobarg=# GRANT USAGE ON FOREIGN SERVER zabbix_dblink to jobarg;
    jobarg=# GRANT USAGE ON FOREIGN SERVER proxy_dblink to jobarg;
    
  5. 外部参照テーブルをjobargDBにIMPORTする(この接続はjobarg、DBはjobarg)。
    以下で使用のsqlスクリプト(Zabbix3.0版)はPostgreSQL_JA_FOREIGN.zipを解凍してサーバ所定の場所に配置の上ご利用ください。
    $ cd /usr/share/doc/jobarranger-server-postgresql-3.2.0/database/postgresql
    $ psql -U jobarg jobarg -W < PostgreSQL_JA_IMPORT_FOREIGN_SCHEMA.sql
    

    以下でインポートしたテーブルを含め、全テーブルの確認ができます。

    jobarg=> \d
    

Job Serverのconf設定と起動

jobarg_server.confの設定をします。下記DB設定でjobargデータベースに向けます。

< DBName=jobarg
< DBUser=jobarg
< DBPassword=jobarg

起動はJob Server:自動起動設定 参照。