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';
で、
を叩くとセットアップウィザードが出るので、メッセージに従って足りないモジュールの追加や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です。ログイン後にパスワード変更をしましょう。