【Linux】【Zabbix】 Ubuntu 18.04 への Zabbix 3.0 のインストール【SW】

Ubuntu 18.04 への Zabbix 3.0 のインストール手順

Ubuntu 18.04 に Zabbix 3.0 のインストールしたときの手順メモ。
 

 

はじめに

f:id:dnkrnka:20181111010800p:plain:right
インストールが成功するまでに四苦八苦し、何度も SQL, Zabbix, PHP のアンインストールを行った。
Zabbix 公式手順 をはじめ、各サイトに記されている手順を実施したが、以下のような現象であった。

  • schema.sql images.sql data.sql が存在しない
  • create.sql.gz が存在しているものの PostgreSQL 用であり、MySQL 用である
  • MySQL をインストールしたつもりなのに MariaDB である
  • schema.sql images.sql data.sql をインポートしたが、zabbix が起動しない
  • schema.sql.gz のインポートでだんまりになってしまう
  • schema.sql.gz のインポートを実行すると Using a password on the command line interface can be insecure. というメッセージが出てダンマリになる

 
最終的には、MySQL や Zabbix 、 PHP をアンインストールした後に Ubuntu 18.04: ウェブベースシステムモニタツールのZabbixをインストールする - Narrow Escape 様の手順を実行することで Zabbix のインストールに成功した。
 
当記事では、Zabbix 3.0 をインストールできたときの手順も記すが、主につまづいた点を書き残しておく。
 

環境

  • Ubuntu 18.04
  • Apache2 稼動済み (手順はこちらを参照)

 

インストールに成功したときの手順

まず先にインストールに成功したときの手順を記しておく。
なお、MySQL、 MariaDB、 Zabbix のアンインストールをしているが、問題が起きる恐れがあるのでくれぐれも自己責任で実施すること。
下記に成功すると各アカウントは次のようになる。

項目 アカウント パスワード 備考
MySQL全体の管理者権限 root mysql  
MySQL Zabbix データベース管理者権限 zabbix zabbix  
Zabbix ページの管理者権限 admin zabbix Zabbix のデフォルト設定

 

1. Zabbix インストールに失敗したときの MySQL (MariaDB) をシステムから削除しておく

% sudo apt-get remove --purge "mysql-server*" mysql-common

 

2. Zabbix インストールに失敗したときの Zabbix をシステムからアンインストールする

2-1. Zabbix Server をシステムから削除しておく
% sudo apt-get remove "zabbix*" zabbix-server-mysql zabbix-agent zabbix-frontend-php

 

2-2. Zabbix Agent をシステムから削除しておく
% sudo apt-get remove "zabbix*"  zabbix-agent

 

2-3. Zabbix frontend をシステムから削除しておく
% sudo apt-get remove "zabbix*" zabbix-frontend-php

 

2-4. Zabbix 関連ファイルをシステムから消去する
% sudo find /etc/ -type l -iname "*zabbix*" |xargs -I@ sudo rm -f @
% sudo find /etc/ -type f -iname "*zabbix*" |xargs -I@ sudo rm -f @

 

3. Narrow Escape 様のインストーラを改造する

Narrow Escape 様のスクリプトをそのまま実行したところ、下記 2ファイルの作成に失敗したため、以下の対策を施した。

  • /etc/zabbix/zabbix_server.conf
  • /etc/zabbix/zabbix_agentd.conf

まず変更箇所を書き出す

@@ -35,11 +35,19 @@
       sudo mysql -uzabbix -p${ZABBIX_PASSWD} zabbix;
   done
 
+  test ! -f /etc/zabbix/zabbix_server.conf && {
+      sudo cp /usr/share/zabbix-server-mysql/zabbix_server.conf /etc/zabbix/zabbix_server.conf
+  }
+
   sudo sed -e 's/# ListenPort=.*/ListenPort=10051/g' \
        -e "s/# DBPassword=.*/DBPassword=${ZABBIX_PASSWD}/g" \
        -i /etc/zabbix/zabbix_server.conf
 
   # Skip setup.php
+  test ! -f /etc/zabbix/zabbix.conf.php && {
+      touch /etc/zabbix/zabbix.conf.php
+  }
+
   cat <<EOF | sudo tee /etc/zabbix/zabbix.conf.php
 <?php
 // Zabbix GUI configuration file.
@@ -72,9 +80,13 @@
   # This Hostname is used for Host name in
   # Configuration -> Hosts -> Create Host.
   sudo apt install -y zabbix-agent
+
+  test ! -f /etc/zabbix/zabbix_agentd.conf && {
+    cp /usr/share/zabbix-agent/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf
+  }
+
   sudo sed -e "s/^Hostname=.*/Hostname=localhost/g" \
        -i /etc/zabbix/zabbix_agentd.conf
 }
 
 zabbix_install

 
追加変更
文字コードが latin になってしまう問題の対策をする。

+ sudo cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/mysql.conf.d/.mysqld.cnf.ORIG
+ sudo sed -i -e 's%\[mysqld]%[mysqld]\ncharacter-set-server=utf8%g' \
+                    -e '$s%\(.*\)%\1\n\[client]\ndefault-character-set=utf8\n%g' /etc/mysql/mysql.conf.d/mysqld.cnf
+ sudo systemctl restart mysql


そして、上記変更を加えたスクリプト全文は以下である。
改造後のスクリプト

#!/bin/sh -e


PHP_VERSION=7.2
MYSQL_VERSION=5.7
[ -z "${MYSQL_PASSWD}" ] && MYSQL_PASSWD=mysql
[ -z "${ZABBIX_PASSWD}" ] && ZABBIX_PASSWD=zabbix

zabbix_install()
{
  cat <<EOF | sudo debconf-set-selections
mysql-server-${MYSQL_VERSION} mysql-server/root_password password ${MYSQL_PASSWD}
mysql-server-${MYSQL_VERSION} mysql-server/root_password_again password ${MYSQL_PASSWD}
EOF

  sudo apt install -y zabbix-server-mysql zabbix-frontend-php \
       php-mysql libapache2-mod-php
  sudo a2enconf zabbix-frontend-php

  timezone=$(cat /etc/timezone)
  sudo sed -i /etc/php/${PHP_VERSION}/apache2/php.ini \
       -e 's/^post_max_size = .*/post_max_size = 16M/g' \
       -e 's/^max_execution_time = .*/max_execution_time = 300/g' \
       -e 's/^max_input_time = .*/max_input_time = 300/g' \
       -e "s:^;date.timezone =.*:date.timezone = \"${timezone}\":g"

sudo cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/mysql.conf.d/.mysqld.cnf.ORIG
sudo sed -i -e 's%\[mysqld]%[mysqld]\ncharacter-set-server=utf8%g' \
                   -e '$s%\(.*\)%\1\n\[client]\ndefault-character-set=utf8\n%g' /etc/mysql/mysql.conf.d/mysqld.cnf
sudo systemctl restart mysql

  cat <<EOF | sudo mysql -uroot -p${MYSQL_PASSWD}
create database zabbix;
grant all privileges on zabbix.* to zabbix@localhost identified by '${ZABBIX_PASSWD}';
exit
EOF

  for sql in schema.sql.gz images.sql.gz data.sql.gz; do
    zcat /usr/share/zabbix-server-mysql/"${sql}" | \
      sudo mysql -uzabbix -p${ZABBIX_PASSWD} zabbix;
  done

  test ! -f /etc/zabbix/zabbix_server.conf && {
      sudo cp /usr/share/zabbix-server-mysql/zabbix_server.conf /etc/zabbix/zabbix_server.conf
  }

  sudo sed -e 's/# ListenPort=.*/ListenPort=10051/g' \
       -e "s/# DBPassword=.*/DBPassword=${ZABBIX_PASSWD}/g" \
       -i /etc/zabbix/zabbix_server.conf

  # Skip setup.php
  test ! -f /etc/zabbix/zabbix.conf.php && {
      touch /etc/zabbix/zabbix.conf.php
  }

  cat <<EOF | sudo tee /etc/zabbix/zabbix.conf.php
<?php
// Zabbix GUI configuration file.
global \$DB;

\$DB['TYPE']     = 'MYSQL';
\$DB['SERVER']   = 'localhost';
\$DB['PORT']     = '0';
\$DB['DATABASE'] = 'zabbix';
\$DB['USER']     = 'zabbix';
\$DB['PASSWORD'] = '${ZABBIX_PASSWD}';

// Schema name. Used for IBM DB2 and PostgreSQL.
\$DB['SCHEMA'] = '';

\$ZBX_SERVER      = 'localhost';
\$ZBX_SERVER_PORT = '10051';
\$ZBX_SERVER_NAME = '';

\$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
?>
EOF

  sudo a2enmod ssl
  sudo a2ensite default-ssl

  sudo systemctl enable apache2 zabbix-server
  sudo systemctl restart apache2 zabbix-server

  # This Hostname is used for Host name in
  # Configuration -> Hosts -> Create Host.
  sudo apt install -y zabbix-agent

  test ! -f /etc/zabbix/zabbix_agentd.conf && {
    cp /usr/share/zabbix-agent/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf
  }

  sudo sed -e "s/^Hostname=.*/Hostname=localhost/g" \
       -i /etc/zabbix/zabbix_agentd.conf
}

zabbix_install

 

4. Zabbix のインストーラを実行する

Narrow Escape 様のインストーラを実行する。
スクリプト実行時のログを (300行超あるが) 書き残しておく。
ただし、上記の改造を施す前のスクリプトであるため、zabbix_server.conf と zabbix_agentd.conf の作成に失敗している点に注意すること。
また、php もアンインストールした後に実行している点にも注意すること。
 

パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  galera-3 libconfig-inifiles-perl libdbi-perl libreadline5 libterm-readkey-perl postgresql socat
これを削除するには 'sudo apt autoremove' を利用してください。
以下の追加パッケージがインストールされます:
  default-mysql-server libapache2-mod-php7.2 libmysqlclient20 mysql-client-5.7 mysql-common mysql-server-5.7
  mysql-server-core-5.7 php php-bcmath php-common php-gd php-ldap php-mbstring php-xml php7.2 php7.2-bcmath
  php7.2-cli php7.2-common php7.2-gd php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-opcache
  php7.2-readline php7.2-xml
提案パッケージ:
  php-pear mailx tinyca snmp-mibs-downloader
以下のパッケージが新たにインストールされます:
  default-mysql-server libapache2-mod-php libapache2-mod-php7.2 libmysqlclient20 mysql-client-5.7
  mysql-common mysql-server-5.7 mysql-server-core-5.7 php php-bcmath php-common php-gd php-ldap php-mbstring
  php-mysql php-xml php7.2 php7.2-bcmath php7.2-cli php7.2-common php7.2-gd php7.2-json php7.2-ldap
  php7.2-mbstring php7.2-mysql php7.2-opcache php7.2-readline php7.2-xml zabbix-frontend-php
  zabbix-server-mysql
アップグレード: 0 個、新規インストール: 30 個、削除: 0 個、保留: 486 個。
22.3 MB 中 15.0 MB のアーカイブを取得する必要があります。
この操作後に追加で 170 MB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu bionic-updates/main amd64 mysql-client-5.7 amd64 5.7.24-0ubuntu0.18.04.1 [2,312 kB]
取得:2 http://jp.archive.ubuntu.com/ubuntu bionic-updates/main amd64 mysql-server-core-5.7 amd64 5.7.24-0ubuntu0.18.04.1 [7,777 kB]
取得:3 http://jp.archive.ubuntu.com/ubuntu bionic-updates/main amd64 mysql-server-5.7 amd64 5.7.24-0ubuntu0.18.04.1 [3,193 kB]
取得:4 http://jp.archive.ubuntu.com/ubuntu bionic/universe amd64 default-mysql-server all 1.0.4 [3,520 B]
取得:5 http://jp.archive.ubuntu.com/ubuntu bionic/universe amd64 zabbix-server-mysql amd64 1:3.0.12+dfsg-1 [1,675 kB]
15.0 MB を 1秒 で取得しました (18.5 MB/s)      
パッケージを事前設定しています ...
以前に未選択のパッケージ mysql-common を選択しています。
(データベースを読み込んでいます ... 現在 284353 個のファイルとディレクトリがインストールされています。)
.../mysql-common_5.8+1.0.4_all.deb を展開する準備をしています ...
mysql-common (5.8+1.0.4) を展開しています...
以前に未選択のパッケージ mysql-client-5.7 を選択しています。
.../mysql-client-5.7_5.7.24-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
mysql-client-5.7 (5.7.24-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ mysql-server-core-5.7 を選択しています。
.../mysql-server-core-5.7_5.7.24-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
mysql-server-core-5.7 (5.7.24-0ubuntu0.18.04.1) を展開しています...
mysql-common (5.8+1.0.4) を設定しています ...
update-alternatives: /etc/mysql/my.cnf (my.cnf) を提供するために自動モードで /etc/mysql/my.cnf.fallback を使います
以前に未選択のパッケージ mysql-server-5.7 を選択しています。
(データベースを読み込んでいます ... 現在 284499 個のファイルとディレクトリがインストールされています。)
.../00-mysql-server-5.7_5.7.24-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
mysql-server-5.7 (5.7.24-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ default-mysql-server を選択しています。
.../01-default-mysql-server_1.0.4_all.deb を展開する準備をしています ...
default-mysql-server (1.0.4) を展開しています...
以前に未選択のパッケージ php-common を選択しています。
.../02-php-common_1%3a60ubuntu1_all.deb を展開する準備をしています ...
php-common (1:60ubuntu1) を展開しています...
以前に未選択のパッケージ php7.2-common を選択しています。
.../03-php7.2-common_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-common (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php7.2-json を選択しています。
.../04-php7.2-json_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-json (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php7.2-opcache を選択しています。
.../05-php7.2-opcache_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-opcache (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php7.2-readline を選択しています。
.../06-php7.2-readline_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-readline (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php7.2-cli を選択しています。
.../07-php7.2-cli_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-cli (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ libapache2-mod-php7.2 を選択しています。
.../08-libapache2-mod-php7.2_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
libapache2-mod-php7.2 (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ libapache2-mod-php を選択しています。
.../09-libapache2-mod-php_1%3a7.2+60ubuntu1_all.deb を展開する準備をしています ...
libapache2-mod-php (1:7.2+60ubuntu1) を展開しています...
以前に未選択のパッケージ libmysqlclient20:amd64 を選択しています。
.../10-libmysqlclient20_5.7.24-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
libmysqlclient20:amd64 (5.7.24-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php7.2 を選択しています。
.../11-php7.2_7.2.10-0ubuntu0.18.04.1_all.deb を展開する準備をしています ...
php7.2 (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php を選択しています。
.../12-php_1%3a7.2+60ubuntu1_all.deb を展開する準備をしています ...
php (1:7.2+60ubuntu1) を展開しています...
以前に未選択のパッケージ php7.2-bcmath を選択しています。
.../13-php7.2-bcmath_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-bcmath (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php-bcmath を選択しています。
.../14-php-bcmath_1%3a7.2+60ubuntu1_all.deb を展開する準備をしています ...
php-bcmath (1:7.2+60ubuntu1) を展開しています...
以前に未選択のパッケージ php7.2-gd を選択しています。
.../15-php7.2-gd_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-gd (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php-gd を選択しています。
.../16-php-gd_1%3a7.2+60ubuntu1_all.deb を展開する準備をしています ...
php-gd (1:7.2+60ubuntu1) を展開しています...
以前に未選択のパッケージ php7.2-ldap を選択しています。
.../17-php7.2-ldap_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-ldap (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php-ldap を選択しています。
.../18-php-ldap_1%3a7.2+60ubuntu1_all.deb を展開する準備をしています ...
php-ldap (1:7.2+60ubuntu1) を展開しています...
以前に未選択のパッケージ php7.2-mbstring を選択しています。
.../19-php7.2-mbstring_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-mbstring (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php-mbstring を選択しています。
.../20-php-mbstring_1%3a7.2+60ubuntu1_all.deb を展開する準備をしています ...
php-mbstring (1:7.2+60ubuntu1) を展開しています...
以前に未選択のパッケージ php7.2-mysql を選択しています。
.../21-php7.2-mysql_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-mysql (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php-mysql を選択しています。
.../22-php-mysql_1%3a7.2+60ubuntu1_all.deb を展開する準備をしています ...
php-mysql (1:7.2+60ubuntu1) を展開しています...
以前に未選択のパッケージ php7.2-xml を選択しています。
.../23-php7.2-xml_7.2.10-0ubuntu0.18.04.1_amd64.deb を展開する準備をしています ...
php7.2-xml (7.2.10-0ubuntu0.18.04.1) を展開しています...
以前に未選択のパッケージ php-xml を選択しています。
.../24-php-xml_1%3a7.2+60ubuntu1_all.deb を展開する準備をしています ...
php-xml (1:7.2+60ubuntu1) を展開しています...
以前に未選択のパッケージ zabbix-frontend-php を選択しています。
.../25-zabbix-frontend-php_1%3a3.0.12+dfsg-1_all.deb を展開する準備をしています ...
zabbix-frontend-php (1:3.0.12+dfsg-1) を展開しています...
以前に未選択のパッケージ zabbix-server-mysql を選択しています。
.../26-zabbix-server-mysql_1%3a3.0.12+dfsg-1_amd64.deb を展開する準備をしています ...
zabbix-server-mysql (1:3.0.12+dfsg-1) を展開しています...
ureadahead (0.100.0-20) のトリガを処理しています ...
mysql-server-core-5.7 (5.7.24-0ubuntu0.18.04.1) を設定しています ...
libc-bin (2.27-3ubuntu1) のトリガを処理しています ...
php-common (1:60ubuntu1) を設定しています ...
Created symlink /etc/systemd/system/timers.target.wants/phpsessionclean.timer → /lib/systemd/system/phpsessionclean.timer.
systemd (237-3ubuntu10.3) のトリガを処理しています ...
man-db (2.8.3-2) のトリガを処理しています ...
libmysqlclient20:amd64 (5.7.24-0ubuntu0.18.04.1) を設定しています ...
mysql-client-5.7 (5.7.24-0ubuntu0.18.04.1) を設定しています ...
php7.2-common (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/calendar.ini with new version

Creating config file /etc/php/7.2/mods-available/ctype.ini with new version

Creating config file /etc/php/7.2/mods-available/exif.ini with new version

Creating config file /etc/php/7.2/mods-available/fileinfo.ini with new version

Creating config file /etc/php/7.2/mods-available/ftp.ini with new version

Creating config file /etc/php/7.2/mods-available/gettext.ini with new version

Creating config file /etc/php/7.2/mods-available/iconv.ini with new version

Creating config file /etc/php/7.2/mods-available/pdo.ini with new version

Creating config file /etc/php/7.2/mods-available/phar.ini with new version

Creating config file /etc/php/7.2/mods-available/posix.ini with new version

Creating config file /etc/php/7.2/mods-available/shmop.ini with new version

Creating config file /etc/php/7.2/mods-available/sockets.ini with new version

Creating config file /etc/php/7.2/mods-available/sysvmsg.ini with new version

Creating config file /etc/php/7.2/mods-available/sysvsem.ini with new version

Creating config file /etc/php/7.2/mods-available/sysvshm.ini with new version

Creating config file /etc/php/7.2/mods-available/tokenizer.ini with new version
zabbix-server-mysql (1:3.0.12+dfsg-1) を設定しています ...
Not replacing deleted config file /etc/zabbix/zabbix_server.conf
Not replacing deleted config file /etc/sudoers.d/zabbix
php7.2-ldap (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/ldap.ini with new version
php7.2-mbstring (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/mbstring.ini with new version
php7.2-readline (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/readline.ini with new version
php7.2-bcmath (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/bcmath.ini with new version
php-ldap (1:7.2+60ubuntu1) を設定しています ...
php-mbstring (1:7.2+60ubuntu1) を設定しています ...
php7.2-json (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/json.ini with new version
mysql-server-5.7 (5.7.24-0ubuntu0.18.04.1) を設定しています ...
update-alternatives: /etc/mysql/my.cnf (my.cnf) を提供するために自動モードで /etc/mysql/mysql.cnf を使います
Renaming removed key_buffer and myisam-recover options (if present)
Created symlink /etc/systemd/system/multi-user.target.wants/mysql.service → /lib/systemd/system/mysql.service.
php7.2-opcache (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/opcache.ini with new version
php7.2-mysql (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/mysqlnd.ini with new version

Creating config file /etc/php/7.2/mods-available/mysqli.ini with new version

Creating config file /etc/php/7.2/mods-available/pdo_mysql.ini with new version
php7.2-gd (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/gd.ini with new version
php7.2-xml (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/mods-available/dom.ini with new version

Creating config file /etc/php/7.2/mods-available/simplexml.ini with new version

Creating config file /etc/php/7.2/mods-available/wddx.ini with new version

Creating config file /etc/php/7.2/mods-available/xml.ini with new version

Creating config file /etc/php/7.2/mods-available/xmlreader.ini with new version

Creating config file /etc/php/7.2/mods-available/xmlwriter.ini with new version

Creating config file /etc/php/7.2/mods-available/xsl.ini with new version
default-mysql-server (1.0.4) を設定しています ...
php-bcmath (1:7.2+60ubuntu1) を設定しています ...
php-xml (1:7.2+60ubuntu1) を設定しています ...
php7.2-cli (7.2.10-0ubuntu0.18.04.1) を設定しています ...
update-alternatives: /usr/bin/php (php) を提供するために自動モードで /usr/bin/php7.2 を使います
update-alternatives: /usr/bin/phar (phar) を提供するために自動モードで /usr/bin/phar7.2 を使います
update-alternatives: /usr/bin/phar.phar (phar.phar) を提供するために自動モードで /usr/bin/phar.phar7.2 を使います

Creating config file /etc/php/7.2/cli/php.ini with new version
php-gd (1:7.2+60ubuntu1) を設定しています ...
libapache2-mod-php7.2 (7.2.10-0ubuntu0.18.04.1) を設定しています ...

Creating config file /etc/php/7.2/apache2/php.ini with new version
apache2_invoke: Enable module php7.2
php-mysql (1:7.2+60ubuntu1) を設定しています ...
libapache2-mod-php (1:7.2+60ubuntu1) を設定しています ...
php7.2 (7.2.10-0ubuntu0.18.04.1) を設定しています ...
zabbix-frontend-php (1:3.0.12+dfsg-1) を設定しています ...
php (1:7.2+60ubuntu1) を設定しています ...
libc-bin (2.27-3ubuntu1) のトリガを処理しています ...
systemd (237-3ubuntu10.3) のトリガを処理しています ...
ureadahead (0.100.0-20) のトリガを処理しています ...
Enabling conf zabbix-frontend-php.
To activate the new configuration, you need to run:
  systemctl reload apache2
mysql: [Warning] Using a password on the command line interface can be insecure.
mysql: [Warning] Using a password on the command line interface can be insecure.
mysql: [Warning] Using a password on the command line interface can be insecure.
mysql: [Warning] Using a password on the command line interface can be insecure.
sed: can't read /etc/zabbix/zabbix_server.conf: No such file or directory
<?php
// Zabbix GUI configuration file.
global $DB;

$DB['TYPE']     = 'MYSQL';
$DB['SERVER']   = 'localhost';
$DB['PORT']     = '0';
$DB['DATABASE'] = 'zabbix';
$DB['USER']     = 'zabbix';
$DB['PASSWORD'] = 'zabbix';

// Schema name. Used for IBM DB2 and PostgreSQL.
$DB['SCHEMA'] = '';

$ZBX_SERVER      = 'localhost';
$ZBX_SERVER_PORT = '10051';
$ZBX_SERVER_NAME = '';

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
?>
Considering dependency setenvif for ssl:
Module setenvif already enabled
Considering dependency mime for ssl:
Module mime already enabled
Considering dependency socache_shmcb for ssl:
Module socache_shmcb already enabled
Module ssl already enabled
Site default-ssl already enabled
Synchronizing state of apache2.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable apache2
Created symlink /etc/systemd/system/multi-user.target.wants/zabbix-server.service → /lib/systemd/system/zabbix-server.service.
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  galera-3 libconfig-inifiles-perl libdbi-perl libreadline5 libterm-readkey-perl postgresql socat
これを削除するには 'sudo apt autoremove' を利用してください。
以下のパッケージが新たにインストールされます:
  zabbix-agent
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 486 個。
197 kB のアーカイブを取得する必要があります。
この操作後に追加で 664 kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu bionic/universe amd64 zabbix-agent amd64 1:3.0.12+dfsg-1 [197 kB]
197 kB を 0秒 で取得しました (2,158 kB/s)
以前に未選択のパッケージ zabbix-agent を選択しています。
(データベースを読み込んでいます ... 現在 285712 個のファイルとディレクトリがインストールされています。)
.../zabbix-agent_1%3a3.0.12+dfsg-1_amd64.deb を展開する準備をしています ...
zabbix-agent (1:3.0.12+dfsg-1) を展開しています...
ureadahead (0.100.0-20) のトリガを処理しています ...
zabbix-agent (1:3.0.12+dfsg-1) を設定しています ...
Not replacing deleted config file /etc/zabbix/zabbix_agentd.conf
Not replacing deleted config file /etc/zabbix/zabbix_agentd.conf
systemd (237-3ubuntu10.3) のトリガを処理しています ...
man-db (2.8.3-2) のトリガを処理しています ...
sed: can't read /etc/zabbix/zabbix_agentd.conf: No such file or directory

 
 
 

Zabbix インストール時につまづいた点

 

schema.sql images.sql data.sql が存在しない

上記 3ファイルは、/usr/share/zabbix-server-mysql/. にインストールされるが、 zabbix-server-mysql をインストールしても上記 3ファイルが存在していなかった。
このとき「mysql --version」を実行すると、実行している DB 情報には MariaDB と表示された。
どうやら、以前に MariaDB をインストールしていたようで、これが影響していたのかも知れない。
結論としては、影響が無いのであれば、MariaDB をアンインストールしておきたい。
 

create.sql.gz が存在しているものの PostgreSQL 用であり、MySQL 用である

create.sql.gz が /usr/share/doc/zabbix-server-pgsql/create.sql.gz として配置されていた。
しかし、使用している DB は MySQL (MariaDB) であるため、この create.sql.gz を使用しても正しく zabbix データベースが構築できないものと思われる。
どうやら、以前に PostgreSQL をインストールしており、これが影響していた疑いがある。
ただし、PostgreSQL のアンインストールは不要である。
 

MySQL をインストールしたつもりなのに MariaDB である

以前に何かのときに MariaDB をインストールしたことがあったのかも知れない。
その影響で MySQL の実体が MariaDB となっていたものと思われる。
結論としては、影響が無いのであれば、MariaDB をアンインストールしておきたい。
 

schema.sql images.sql data.sql をインポートしたが、zabbix が起動しない

正しく MySQL をインストールしたものの, http://localhost/zabbix にアクセスしても Zabbix のページが表示されない。
ただし、zabbix プロセスは稼動しており、Apache2 も当然稼動している。
また /etc/zabbix/zabbix_server.conf にて、DBHost=localhost としていた
 
原因として考えられるのは、schema.sql のインポートに時間が掛っており、Ctrl-C を連打して停止させたことが影響しているのかも知れない。
schema.sql 、 data.sql のインポートは結構時間が掛かる。Core i7 4770 (7コア) + RAM=16GB + SSD という環境だが、10分くらい待機する気で待つこと。
 

schema.sql.gz のインポートでだんまりになってしまう

上記と同じであり、10分くらい待つつもりでいること。
schema.sql のファイルサイズが小さいので、時間が掛かっていることに疑心暗鬼になるが、気長に待つつもりでいること。
 

data.sql.gz のインポートに失敗する

以下のようにエラーが出てしまった。
どうやら、schema.sql → images.sql → data.sql の順番でインポートする必要があるらしい。(情報元:zabbixインストールでテーブルを作成するときの注意 - ニシキヘビってかわいいよね、実際みたことないけど。)
)

% zcat /usr/share/zabbix-server-mysql/data.sql.gz | sudo mysql -uzabbix -p zabbix
ERROR 1146 (42S02) at line 2: Table 'zabbix.hosts' doesn't exist

 

schema.sql.gz のインポートを実行すると Using a password on the command line interface can be insecure. というメッセージが出てダンマリになる

「Using a password on the command line interface can be insecure.」というメッセージは mysql コマンドの引数に -pパスワード を渡しているために出ている警告であり、schema.sql のインポートがだんまりになる現象には影響は無い。
だんまりの現象については、単にインポートに時間が掛かっているだけである。

% zcat /usr/share/zabbix-server-mysql/schema.sql.gz | sudo mysql -uzabbix -pzabbix zabbix
mysql: [Warning] Using a password on the command line interface can be insecure.