Raspberry Pi 3 Model B
OS: Raspbian Buster Lite
先ずは Download and install Zabbix へアクセスしてインストールしたいZabbixのバージョンを選択する。OSディストリビューションはもちろん「Raspbian」にする。OSバージョンは導入しているものを選び、DBとWebサーバを決める。そうすると其れに合わせたインストール手順が示されるから此れに従う。
$ sudo wget https://repo.zabbix.com/zabbix/4.0/raspbian/pool/main/z/zabbix-release/zabbix-release_4.0-3+buster_all.deb $ sudo dpkg -i zabbix-release_4.0-3+buster_all.deb $ sudo apt update $ sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent
OSインストール直後の状態からZabbixパッケージのインストールを実施すると81にも及ぶパッケージの導入が始まった。
インストールが一段落したら、一先ずrootユーザでMySQLにログインする。パスワードは空っぽうだから何も入力せずにEnterを押下する。
$ sudo mysql -uroot -p Enter password:
そうしてデータベースとユーザを作成する。データベースを作成する際にうっかりして character set utf8 collate utf8_bin
を忘れたら、データをインポートする段になって ERROR 1071 (42000) at line 165: Specified key was too long; max key length is 767 bytes
などとエラーが発生して処理が進まなくなった。
デフォルトでセットされる文字コードutf8mb4では1文字あたり最大で4バイトも使用してテーブルのカラムに収まりきらない。此れを躱すために1文字3バイトのutf8を態々指定する模様である。指示されたとおりにコピー&ペーストすることの肝要さを思い知ったものである。
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin; MariaDB [(none)]> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'password'; MariaDB [(none)]> quit;
そうしたらスキーマとデータをインポートする。
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
次はZabbixサーバがデータベースに接続するためにユーザのパスワードを記載しておく。
$ sudo vi /etc/zabbix/zabbix_server.conf DBPassword=password
それからApacheの設定ファイルにあるPHPのdate.timezoneを編集する。PHP5と7の場合でそれぞれ場合分けをして設定が記載されているけれども、公式の手順に沿うとPHP7がインストールされるからそちら側を弄う必要がある。知らずPHP5のほうだけを編集して満足していると、この後にある作業で Time zone for PHP is not set (configuration parameter "date.timezone").
となって立ち往生する。
$ sudo vi /etc/zabbix/apache.conf <IfModule mod_php7.c> (snip) # php_value date.timezone Europe/Riga php_value date.timezone Asia/Tokyo </IfModule> $ php -v PHP 7.3.14-1~deb10u1 (cli) (built: Feb 16 2020 15:07:23) ( NTS )
$ sudo systemctl restart zabbix-server zabbix-agent apache2 $ sudo systemctl enable zabbix-server zabbix-agent apache2 (snip) Created symlink /etc/systemd/system/multi-user.target.wants/zabbix-server.service → /lib/systemd/system/zabbix-server.service. Created symlink /etc/systemd/system/multi-user.target.wants/zabbix-agent.service → /lib/systemd/system/zabbix-agent.service.
そうしたらブラウザでZabbixのページにアクセスしてウィザードに従いながら設定をする。
インストール直後の初期状態ではユーザ名:Admin、パスワード:zabbixでサインインする。
さっそくZabbixがサーバのグラフ制作に取り掛かってくれているのであるが、如何せん文字が豆腐であるから困る。之を解消せねば寝れない。Notoフォントを導入してZabbixが採用するフォントとして設定してやれば終いである。
$ sudo apt install fonts-noto-cjk $ cd /etc/alternatives/ $ sudo ln -sf /usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc zabbix-frontend-font