Zabbix 4.0 CentOS7.5 導入備忘録
皆さん、こんにちわ。
私、ピン村と申します。
こちらのサイト実は記念すべき "1コンテンツ目" ということで投稿させていただきます。
では、早速やっていきましょう
Contents
Zabbix 4.0について
ZabbixはITインフラストラクチャ・コンポーネントの可用性やパフォーマンスを監視するためのエンタープライス向けソフトウェアです。Zabbixはオープンソース・ソフトウェアとして開発されており、無料でダウンロードいただくことが可能です。
ZABBIX社 HPより
つまり、zabbixを用いて提供しているサービスのマシン(サーバ)を監視するということになります。
では、Zabbix 4.0の新機能をいろいろ見ていきましょう。
Zabbix 4.0の新機能
1 . 新しいグラフウィジェット
まったく新しく開発を行ったグラフウィジェットは収集データをより高度に可視化することができます。グラフウィジェットは様々な形式のグラフを利用でき、複数のデータセットを利用し、データセットごとにグラフの形式と複数のデータを指定できます。グラフ上の線のスタイルや軸、凡例のレイアウトの設定ができるほか、グラフ上に障害の発生状況の情報を表示できます。グラフ上をマウスカーソルでポイントすることで、監視データの情報を表示することもできます。
ZABBIX社 4.0 新機能より
まぁ、これだけだと正直何言ってるのか分かりませんが画像だとこういう感じです。
究極的に監視をまとめたのが上記画像になります。
今回のメインはこれでしょうか。
つまるところ、様々なハードウェア、マシンを監視しているうえでHDD使用量、CPU使用量などを統括でグラフ上に表すことが可能になるということですねぇ。
あと、グラフ上にカーソルを合わせるだけで当該の日付、時刻まで表示してくれるのがzabbix 3.0時代との差異ということになるでしょうか。
2.より簡単なタイムセレクタ
グラフや障害履歴の表示画面で利用する時刻の範囲選択の方法を改善し、まったく新しく開発したタイムセレクタでは「now」「now-1d/d」といった文字による期間選択が可能です。期間はズームインすることも前後に移動することもでき、よく利用する期間はワンクリックで選択することもできます。
あー、グラフの選択範囲も結構自由自在になったんだぁ(フーン)
他は?
まぁ、等々いろいろアップデート内容があるみたいですが申し訳ない、まとめてらんないんで詳細は下記アドレスをご参照ください。
Zabbix 4.0 新機能
とりあえず、zabbix 4.0 の新機能はこんな感じです。
Zabbix 4.0をCentOS7.5に入れて動かす
今回の環境は、下記通りになります。
- OS
- CentOS7.5(1811)
- package
- httpd (apache)
- PHP7.2 (remi repository)
- Mariadb 10.3
- Zabbix 4.0
この構成で行きます。
では早速構築していきましょう
CentOS7.5 (minimal) インストール
まぁ、次へ , 次へと進めていくだけなんですが一応記載します。
あくまで、ご参考までにお願いします。
初期画面
ここで、 “ Install CentOS 7 “ と選択する
選択は、キーボードの矢印キー(←↑↓→)で選択する。
選択後、Bootログと呼ばれるOSインストーラを起動する際のログが表示されるがその時はキーボードに触らないようにする。
初期画面選択後、処理が終わるとこのような画面が表示される。
これは、CentOS をインストールする際 何語 でインストールするかを選択します。
今回は日本語を選択しました。
言語選択が終わると、インストールするパソコンの詳細設定に移ります。
ここでは、CentOS をインストールするHDD の選択、インターネットが使えるようにネットワークを有効化していきます。
初めに、CentOSをインストールするHDD を選択していきます。
ここでは、CentOS をインストールするHDDを選択します。
本来であれば、複数のHDDがある場合一つのHDDを選択しOSのインストール先を決めたりしますが、今回はインストールするHDDが一つしかない為、割愛します。
また、仮想化と言って実験的にLinuxなどを使いたい場合などもこのようにインストール先を設定しなければいけません。
先の、OSのインストール先を決定後次はインターネットへ接続するため、ネットワークを有効化する必要があります。
下記画面のように左下に “ネットワークとホスト名 “ と呼ばれる設定項目がありますのでクリックして詳細を開きます。
まずは、ネットワークを有効化させるために、右上のオフ(初期)となっているボタンのオンへ変更してください。
その後、ネットワークが確立されれば自動でIPアドレスが振られインターネットへ接続できるようになる。
OS のインストール先、ネットワークを有効化した後は、画面右下の青色のボタン インストールを開始 をクリックしてインストールを開始していきます。
最後にサーバへのパスワードを設定します。
インストール完了後、再起動をかけるため右下に再起動ボタンが現れるのでボタンを押して再起動しましょう。
ここまでで、CentOSのインストールは終わりです。
ここからは、SSH接続になります。
Tera termなどのリモート接続ソフトを使ってください。
本題はここからになると思います。
Zabbix , Apacheなどのインストール
ひたすらコマンドだけ並べる形になるので、申し訳ありませんが読み取っていただけると嬉しいです。
root@localhost~#https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
root@localhost ~# yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
SELinux の無効化
root@localhost ~# vi /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX= enforcing ← disabledに変更
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
編集終了後、:wqで保存できる。
root@localhost ~# vi /etc/yum.repos.d/mariadb.repo
# MariaDB 10.3 CentOS repository list - created 2018-11-02 08:16 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
編集終了後、:wqで終了する。
root@localhost ~# yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
php7.2を導入するため、remiレポジトリを導入する。
root@localhost ~# vi /etc/yum.repos.d/remi-php72.repo
[remi-php72]
name=Remi's PHP 7.2 RPM repository for Enterprise Linux 7 - $basearch
#baseurl=http://rpms.remirepo.net/enterprise/7/php72/$basearch/
#mirrorlist=https://rpms.remirepo.net/enterprise/7/php72/httpsmirror
mirrorlist=http://cdn.remirepo.net/enterprise/7/php72/mirror
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
編集終了後、:wqで終了する。
root@localhost ~# yum -y install php72 php72-php php php-fpm php-mysql
root@localhost ~# yum -y install MariaDB-server MariaDB-client
root@localhost ~# vi /etc/php-fpm.d/www.conf
; RPM: apache user chosen to provide access to the same directories as httpd
user = apache ← apache になっているかを確認
; RPM: Keep a group allowed to write in log dir.
group = apache ← apache になっているかを確認
zabbixを導入するにあたり必要な関連パッケージの自動起動設定をオンにする。
root@localhost ~# systemctl enable php-fpm zabbix-server zabbix-agent httpd mariadb
ファイアウォールの自動起動設定をオフにする
root@localhost ~# systemctl disable firewalld
各、システムの変更点を反映させるため再起動を行う。
root@localhost ~# reboot
サーバが再起動次第zabbix用のデータベース構築を行う。
root@localhost ~# mysql -u root
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
‘password’ になっているところは、zabbixデータベースのパスワードになります。
任意変更が可能なため、変更したい場合は任意の文字を入れてください。
MariaDB [(none)]> \q
root@localhost ~# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: Mariadbでzabbix用のデータベースを作った時に設定したパスワード
zabbix のconfig(設定ファイル)を編集します。
root@localhost ~# vi /etc/zabbix/zabbix_server.conf
### Option: DBPassword
# Database password. Ignored for SQLite.
# Comment this line if no password is used.
#
# Mandatory: no
# Default:
# DBPassword= ←コメントアウトしてzabbix
データベースを作った時の
パスワードを入力
編集終了後、:wqで終了する。
root@localhost ~# vi /etc/httpd/conf.d/zabbix.conf
<IfModule mod_php5.c> ←php5.c を php7.cに変更
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value max_input_vars 10000
php_value always_populate_raw_post_data -1
# php_value date.timezone Europe/Riga
↑コメントアウトを外し、timezoneをAsia/Tokyo へ変更
</IfModule>
編集終了後、:wqで終了する
次に、zabbixがphpを使う上で推奨要件としている項目を満たしているか確認する。
root@localhost ~# vi /etc/php.ini
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; http://php.net/post-max-size
post_max_size = 8M ←16Mに変更する
; Maximum execution time of each script, in seconds
; http://php.net/max-execution-time
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 30 ←300に変更する
; Maximum amount of time each script may spend parsing request data. It's a good
; idea to limit this time on productions servers in order to eliminate unexpectedly
; long running scripts.
; Note: This directive is hardcoded to -1 for the CLI SAPI
; Default Value: -1 (Unlimited)
; Development Value: 60 (60 seconds)
; Production Value: 60 (60 seconds)
; http://php.net/max-input-time
max_input_time = 60 ←300に変更する
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezone = ←コメントアウトを外し、Asia/Tokyoとする
ここまで終えたら、サーバを再度再起動する。
root@localhost ~# reboot
再起動後の操作
再起動が完了したら、webブラウザ(Firefox , Google Chrome , IE等々)で http://IPaddress/zabbix とURL欄に入力してください。
エラー等なければ、下記画像のようになります。
次に
画面右下のNext stepを押していきます。
上記のように、すべての項目が “ OK “ になっていることを確認してください。
OKになっていれば Next stepを押します
次に、zabbixデータベースを作成した時のパスワードを入力してください。
ここは、あくまで詳細設定なので何も入力しなくて問題ありません。
ポート番号やhost名を変更したい場合は任意で入力してください。
Next stepを押し次へ進みます。
最後確認画面になります。問題なければ次へ進んでください
確認画面の次、このような画面が表示されれば正常に設定できています。お疲れさまでした。
初期のログインユーザ名はAdmin
パスワードはzabbix になります。ログイン後変更してください
ここまでで、zabbixの導入は終了です。
大変お疲れさまでした!!
この後、監視対象ホストなどを追加したりして本格的に監視する用意を整えていきますが、もしよろしければ続きはpdfでご覧いただければと思います。!