osprey's diary

日々の雑感を書き綴ります

Ubuntu16.04にZabbix3.2(Postgresql)をパッケージで入れてみる

Ubuntu Server 16.04にZabbixを入れてみる。DBはPostgresqlを使ってみます。

 

まずリポジトリ追加するのでリポジトリファイルをダウンロード

$ wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+xenial_all.deb

 

リポジトリ追加

$ sudo dpkg -i zabbix-release_3.2-1+xenial_all.deb

 

apt update

$ sudo apt update

 

まずはzabbix-agent追加

$ sudo apt install zabbix-agent

 

サーバに必要なパッケージ類の追加

$ sudo apt install zabbix-server-pgsql zabbix-frontend-php php-pgsql 

 

バックエンドのDBはPostgres-9.5の模様。pg_hba.confを編集。

$ sudo vi /etc/postgresql/9.5/main/pg_hba.conf

+ local   all             zabbix                                password

 

postgresql restart

$ /etc/init.d/postgresql restart

 

postgresユーザーからzabbixユーザー追加

$ sudo su - postgres

postgres$ psql

postgres=> createuser zabbix;

postgres=> \q

 

zabbixのテーブル等をimport

$ zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | psql -U postgres zabbix

※たぶんzabbixユーザーでやらないといけない。postgresユーザーでやってしまってハマった。やっちゃったらOwnerShipを変える必要があるので以下で出力されるSQLを流し込む。

SELECT
'ALTER TABLE ' || schemaname
|| '.' || tablename ||
' OWNER TO zabbix;'
FROM pg_tables
WHERE tableowner ='postgres';

 

で、

http://zabbix-host/zabbix/

を叩くとセットアップウィザードが出るので、メッセージに従って足りないモジュールの追加やphp.iniの設定などを追加していく。ちなみにZabbix3.2はPHP7だそうです。(どのバージョンからかは調べてません)

今回は以下のようなものを追加。

$ sudo apt install php7.0-mbstring php7.0-bcmath php-sabre-xml

pip.iniは以下の部分を追加。

# vi /etc/php/7.0/apache2/php.ini

[Date]

date.timezone = "Asia/Tokyo"

 

zabbix-server/zabbix-agentを起動時に上がるようにしておく。

$ sudo update-rc.d zabbix-server enable

$ sudo update-rc.d zabbix-server enable

 

ちなみにzabbixのdefaultのusername/passはAdmin/zabbixです。ログイン後にパスワード変更をしましょう。