Ubuntu19.10へzabbix 4.4をインストールする


Ubuntu19.10をインストール後、aptコマンドでのzabbixインストール時にエラーが発生した為、ソースコードからインストール実行しました。

その際の備忘録となります。

対象環境

  • Ubuntu19.10
  • Apache2
  • Mysql8.0
  • php7.3

インストール

zabbix本体をオフィシャルサイトからダウンロードし、/tmp以下にtar.gzファイルを置いた前提で進めます。

MySQLにDB、ユーザー、データを登録する

# パスワードは適宜変更してください。
export DBPASSWD='c9d8d9s9sd89dZ90as9d?d9x'

sudo mysql
create database zabbix DEFAULT CHARACTER SET utf8;
CREATE USER 'zabbix'@'localhost' IDENTIFIED WITH mysql_native_password BY ' c9d8d9s9sd89dZ90as9d?d9x ';
GRANT ALL ON zabbix.* TO 'zabbix'@'localhost';
flush privileges;
exit;

cd /tmp
tar -zxvf zabbix-4.4.4.tar.gz
cd zabbix-4.4.4/database/mysql/
sudo mysql -u zabbix -p zabbix < schema.sql
sudo mysql -u zabbix -p zabbix < images.sql
sudo mysql -u zabbix -p zabbix < data.sql

必要なパッケージをインストールする

# 日本語表示できるようにする
localedef -f UTF-8 -i ja_JP ja_JP

sudo groupadd zabbix
sudo useradd -g zabbix -s /bin/bash zabbix
sudo apt-get install apache2 php php-mysql libapache2-mod-php php-mbstring php-xml \
php-gd php-bcmath php-ldap build-essential libmysqlclient-dev libssl-dev \
libsnmp-dev libevent-dev libopenipmi-dev libcurl4-openssl-dev libxml2-dev \
libssh2-1-dev libpcre3-dev libldap2-dev libiksemel-dev libcurl4-openssl-dev \
libgnutls28-dev unixodbc unixodbc-dev

cd /tmp/zabbix-4.4.4
./configure --enable-server --enable-agent --with-mysql \
--with-openssl --with-net-snmp --with-openipmi --with-libcurl \
--with-libxml2 --with-ssh2 --with-unixodbc

sudo make
sudo make install
sudo cp /usr/local/etc/zabbix_server.conf /usr/local/etc/zabbix_server.conf.org

sudo sed -i 's/^LogFile=./LogFile=\/var\/log\/zabbix_server.log/g' /usr/local/etc/zabbix_server.conf
sudo sed -i 's/^[# ]DBHost=./DBHost=localhost/g' /usr/local/etc/zabbix_server.conf
sudo sed -i 's/^DBName=./DBName=zabbix/g' /usr/local/etc/zabbix_server.conf
sudo sed -i 's/^DBUser=.*/DBUser=zabbix/g' /usr/local/etc/zabbix_server.conf
echo "DBPassword=${DBPASSWD}" >> /usr/local/etc/zabbix_server.conf

# ログファイルを作成してパーミッション付与
touch /var/log/zabbix_server.log
chown zabbix:zabbix /var/log/zabbix_server.log

# 起動スクリプトの登録
cp /tmp/zabbix-4.4.4/misc/init.d/debian/zabbix-server.conf /etc/init.d/
cp /tmp/zabbix-4.4.4/misc/init.d/debian/zabbix-agent.conf /etc/init.d/
/etc/init.d/zabbix-server restart

mv /tmp/zabbix-4.4.4/frontends/php /var/www/html/zabbix
sudo cp /etc/php/7.3/apache2/php.ini /etc/php/7.3/apache2/php.ini.bak
sudo sed -i 's/^post_max_size =./post_max_size = 32M/g' /etc/php/7.3/apache2/php.ini
sudo sed -i 's/^max_execution_time =./max_execution_time = 300/g' /etc/php/7.3/apache2/php.ini
sudo sed -i 's/^memory_limit =./memory_limit = 256M/g' /etc/php/7.3/apache2/php.ini
sudo sed -i 's/^max_input_time =./max_input_time = 300/g' /etc/php/7.3/apache2/php.ini
sudo sed -i 's/;date.timezone =/date.timezone = "Asia\/Tokyo"/g' /etc/php/7.3/apache2/php.ini

sudo service apache2 restart

Zabbixの設定

ウェブブラウザで、zabbixをインストールしたサーバのURL(http://host/zabbix)へアクセスする。

Finishを押すと、ログイン画面へ遷移する。 デフォルトユーザーパスワードはAdmin/zabbix。

自動起動を有効にする

設定完了したら、自動起動を有効にします。上記までで、/etc/init.d/の下にzabbixパッケージにあった起動スクリプトをコピーしていますが、そのスクリプトのコメントアウト部分に以下の文言を追加します。

/etc/init.d/zabbix-server.conf 、 /etc/init.d/zabbix-agent.conf が対象です。Providesと、Short-Descriptionは適当に変更してください。

### Provides:          zabbix-server
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: zabbix-server
### END INIT INFO

次に、以下コマンドでサービス登録します。

systemctl enable zabbix-agent
systemctl enable zabbix-server

ls -lrt /etc/rc*.d/*zabbix*
で、起動スクリプトが出来ていることを確認します。

root@fileserver:/etc/init.d# ls -lrt /etc/rc.d/zabbix*
lrwxrwxrwx 1 root root 23 Jan 26 17:14 /etc/rc5.d/S01zabbix-server -> ../init.d/zabbix-server
lrwxrwxrwx 1 root root 23 Jan 26 17:14 /etc/rc4.d/S01zabbix-server -> ../init.d/zabbix-server
lrwxrwxrwx 1 root root 23 Jan 26 17:14 /etc/rc3.d/S01zabbix-server -> ../init.d/zabbix-server
lrwxrwxrwx 1 root root 23 Jan 26 17:14 /etc/rc2.d/S01zabbix-server -> ../init.d/zabbix-server
lrwxrwxrwx 1 root root 23 Jan 26 17:14 /etc/rc0.d/K01zabbix-server -> ../init.d/zabbix-server
lrwxrwxrwx 1 root root 23 Jan 26 17:14 /etc/rc6.d/K01zabbix-server -> ../init.d/zabbix-server
lrwxrwxrwx 1 root root 23 Jan 26 17:14 /etc/rc1.d/K01zabbix-server -> ../init.d/zabbix-server
lrwxrwxrwx 1 root root 22 Jan 26 17:14 /etc/rc6.d/K01zabbix-agent -> ../init.d/zabbix-agent
lrwxrwxrwx 1 root root 22 Jan 26 17:14 /etc/rc5.d/S01zabbix-agent -> ../init.d/zabbix-agent
lrwxrwxrwx 1 root root 22 Jan 26 17:14 /etc/rc4.d/S01zabbix-agent -> ../init.d/zabbix-agent
lrwxrwxrwx 1 root root 22 Jan 26 17:14 /etc/rc3.d/S01zabbix-agent -> ../init.d/zabbix-agent
lrwxrwxrwx 1 root root 22 Jan 26 17:14 /etc/rc2.d/S01zabbix-agent -> ../init.d/zabbix-agent
lrwxrwxrwx 1 root root 22 Jan 26 17:14 /etc/rc1.d/K01zabbix-agent -> ../init.d/zabbix-agent
lrwxrwxrwx 1 root root 22 Jan 26 17:14 /etc/rc0.d/K01zabbix-agent -> ../init.d/zabbix-agent

OSを再起動して、該当サービスが再起動してくることを確認します。あとは、zabbixの管理画面から適宜設定を行います。

タグ , . ブックマークする パーマリンク.

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください