mattintosh note

どこかのエンジニアモドキの備忘録

Ubuntu Server 16.04 LTS に Zabbix 3.0 をインストールする

CentOS 7 にインストールするのは終わったので、今度は Ubuntu に入れてみる。公式のドキュメント通りにやればいいのだけど、ちょっと手順を変更して構築する。

GPG 鍵の登録。LXC の Ubuntucurlwget がないかもしれない。また、ca-certificates が無いと https:// に接続できない。(http://repo.zabbix.com に繋ぎにいってもいいのだけど)

wget の場合は ca-certificates パッケージも付いてくる。

$ sudo apt-get install wget

curl の場合は別途指定してあげる必要がある。

$ sudo apt-get install curl ca-certificates

wget

$ wget -qO- https://repo.zabbix.com/zabbix-official-repo.key | sudo apt-key add -

または curl

$ curl -s https://repo.zabbix.com/zabbix-official-repo.key | sudo apt-key add -

として GPG 鍵を登録する。

次にリポジトリの登録。

※追記:zabbix-release パッケージを入れると /etc/apt/sources.list.d/zabbix.list が作成されるので zabbix-releasedeb をダウンロードして入れた方がいいかもしれない。

$ sudo add-apt-repository 'deb https://repo.zabbix.com/zabbix/3.0/ubuntu/ xenial main'

これは /etc/apt/sources.d 以下に手動で作成してもよい。※上記追記参照

$ sudo tee /etc/apt/sources.d/90-zabbix-official.conf <<!
deb https://repo.zabbix.com/zabbix/3.0/ubuntu/ xenial main
!

パッケージリストの更新。

$ sudo apt-get update

Zabbix のインストール。

$ sudo apt-get install zabbix-{agent,server-mysql,frontend-php} --install-recommends
$ sudo apt-get install php7.0-{bcmath,mbstring,xml}

更新リポジトリから入れられる x86_64 のパッケージは以下の通り。

$ curl -s http://repo.zabbix.com/zabbix/3.0/ubuntu/dists/xenial/main/binary-amd64/Packages | grep ^Package
Package: zabbix-agent
Package: zabbix-frontend-php
Package: zabbix-get
Package: zabbix-java-gateway
Package: zabbix-proxy-mysql
Package: zabbix-proxy-pgsql
Package: zabbix-proxy-sqlite3
Package: zabbix-release
Package: zabbix-sender
Package: zabbix-server-mysql
Package: zabbix-server-pgsql

MySQLMariaDB)の設定。

$ sudo mysql -uroot
> create database zabbix character set utf8 collate utf8_bin;
> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
> quit;

テンプレートを使ってテーブルのセットアップ。

$ zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

設定をバックアップして編集。

$ sudo gzip -k /etc/zabbix/zabbix_server.conf
$ sudo vim /etc/zabbix/zabbix_server.conf

DBPassword のとこだけだった。

$ diff -u <(zcat /etc/zabbix/zabbix_server.conf.gz) /etc/zabbix/zabbix_server.conf
--- /dev/fd/63  2017-06-27 00:56:55.808000984 +0900
+++ /etc/zabbix/zabbix_server.conf      2017-06-27 00:55:06.753552066 +0900
@@ -112,7 +112,7 @@
 #
 # Mandatory: no
 # Default:
-# DBPassword=
+DBPassword=zabbix
 
 ### Option: DBSocket
 #      Path to MySQL socket.

ロケール設定。

$ sudo gzip -k /etc/zabbix/apache.conf
$ sudo vim /etc/zabbix/apache.conf
$ diff -u <(zcat /etc/zabbix/apache.conf.gz) /etc/zabbix/apache.conf
--- /dev/fd/63  2017-06-27 01:12:46.346248048 +0900
+++ /etc/zabbix/apache.conf     2017-06-27 01:05:10.285505239 +0900
@@ -25,7 +25,7 @@
         php_value upload_max_filesize 2M
         php_value max_input_time 300
         php_value always_populate_raw_post_data -1
-        # php_value date.timezone Europe/Riga
+        php_value date.timezone Asia/Tokyo
     </IfModule>
 </Directory>

Apache を再起動。

$ sudo systemctl restart apache2

Zabbix Server を起動。

$ sudo systemctl start zabbix-server
$ ^start^status
sudo systemctl status zabbix-server
● zabbix-server.service - Zabbix Server
   Loaded: loaded (/lib/systemd/system/zabbix-server.service; disabled; vendor preset: enabled)
   Active: active (running) since Tue 2017-06-27 00:55:14 JST; 7s ago
  Process: 1848 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
 Main PID: 1865 (zabbix_server)                                                                                                                     
    Tasks: 27                                                                                                                                       
   Memory: 28.7M                                                                                                                                    
      CPU: 152ms                                                                                                                                    
   CGroup: /system.slice/zabbix-server.service
           ├─1865 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
 :
 :
 :

起動が問題なければ Zabbix Server を自動起動するようにしておく。

$ sudo systemctl enable zabbix-server

これでブラウザから http://${IP_ADDRESS}/zabbix にアクセスする。

f:id:mattintosh4:20170627010257p:plain

オッケー。

f:id:mattintosh4:20170627011433p:plain

f:id:mattintosh4:20170627011632p:plain

CentOS 7 より断然楽。メモリも少なめでよい。

$ free -m
              total        used        free      shared  buff/cache   available
Mem:            991         222         349          16         420         583
Swap:          1906           0        1906

あとはコンテナ化したいなー。

あ、ja_JP.UTF-8 を有効にしてなかったので日本語が選択できなかった。

$ sudo vim /etc/locale.gen
$ sudo systemctl restart apache2

グラフ用に和文フォントも配置。ここは好み。

$ sudo ln -fs /usr/share/fonts/truetype/mplus/mplus-1m-regular.ttf /etc/alternatives/zabbix-web-font