Bashプログラミング
 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

Zabbix は、無料かつオープンソースのエンタープライズ向け統合監視ソフトウェアです。柔軟性・拡張性に優れ、分散型アーキテクチャを採用しており、IT インフラ全体、サービス、アプリケーション、サーバーリソースを一元的に監視できます。世界中で最も広く利用されているオープンソース監視ソリューションのひとつであり、コンピューターネットワークの各種パラメータやサーバーの稼働状態・整合性を継続的にチェックします。

Zabbix の大きな特長は、柔軟な通知機能です。ほぼすべてのイベントに対してメールベースのアラートを設定できるため、サーバー障害発生時に迅速な対応が可能になります。また、蓄積されたデータをもとにした高品質なレポート機能とデータ可視化ツールも備えています。

さらに重要な点として、Zabbix が収集したすべてのレポートや統計情報、設定パラメータは Web ベースのフロントエンドからアクセスできます。つまり、場所を選ばずにどこからでもシステムを監視できるのです。

前提条件

作業を始める前に、以下の要件が満たされていることを確認してください。

  1. 最小構成でインストールされた RHEL 8
  2. Red Hat サブスクリプションが有効化された RHEL 8
  3. 固定 IP アドレスを設定済みの RHEL 8

本チュートリアルでは、RHEL 8 上に最新版の Zabbix 4.2 サーバーをインストールし、データ保存用に MySQL/MariaDB データベース、Web インターフェースとして PHPApache Web サーバーを使用する構成を構築する手順を解説します。

ステップ 1:Apache と PHP パッケージのインストール

1. まず、Zabbix の依存パッケージを含む EPEL 8 リポジトリを有効化します。その後、HTTPD パッケージで提供される Apache Web サーバー、PHP インタプリタ、PHP-FPM(PHP FastCGI Process Manager)、およびその他の必要なモジュールを以下のコマンドでインストールします。

# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# dnf install httpd php php-fpm php-mysqlnd php-ldap php-bcmath php-mbstring php-gd php-pdo php-xml

2. インストールが完了したら、HTTPDPHP-FPM サービスを起動し、システム起動時(再起動後)に自動的に開始されるよう有効化します。その後、サービスが正常に稼働しているか以下のコマンドで確認しましょう。

# systemctl start httpd
# systemctl enable httpd
# systemctl status httpd
# systemctl start php-fpm
# systemctl enable php-fpm
# systemctl status php-fpm

ステップ 2:MariaDB データベースとライブラリのインストール

Zabbix はデータ保存に MySQL データベースを使用します。RHEL 8 では、MySQL の互換代替として MariaDB データベースがデフォルトでサポートされています。

3. MariaDB のサーバー、クライアント、ライブラリパッケージを以下のコマンドでインストールします。

# dnf install mariadb mariadb-server mariadb-devel

4. 続いて MariaDB サービスを起動し、システム起動時に自動的に開始されるよう有効化します。ステータスを確認して、正常に稼働していることを確かめてください。

# systemctl start mariadb
# systemctl enable mariadb
# systemctl status mariadb

5. MariaDB データベースサーバーが稼働したら、mysql_secure_installation スクリプトを実行してセキュリティ設定を行いましょう。このスクリプトにより、匿名ユーザーの削除、root のリモートログイン無効化、テストデータベースとそのアクセス権限の削除など、有用なセキュリティ推奨事項を適用できます。

# mysql_secure_installation

実行すると、以下のスクリーンショットのように各操作の実行可否を尋ねられるので、指示に従って設定してください。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

6. 次にデータベースにログインして MariaDB シェルにアクセスし、Zabbix 用のデータベースを作成します。

# mysql -uroot -p
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;

ステップ 3:Zabbix パッケージのインストールと設定

7. 必要なソフトウェアの準備が整ったら、Zabbix 公式リポジトリから最新版の Zabbix パッケージをインストールします。

# rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/8/x86_64/zabbix-release-4.2-2.el8.noarch.rpm 
# dnf clean all

8. 続いて、Zabbix サーバー、Web フロントエンド、エージェントの各パッケージを以下のコマンドでインストールします。

# dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent 

9. インストールが完了したら、前のステップで作成した Zabbix データベースへ初期スキーマとデータをインポートします(Zabbix データベースユーザーのパスワード入力を求められます)。

# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix

10. 次に、作成したデータベースを使用するよう Zabbix サーバーデーモンを設定します。設定ファイル /etc/zabbix/zabbix_server.conf を編集してください。

# vim /etc/zabbix/zabbix_server.conf

以下の設定項目を検索し、ご自身のデータベース設定に合わせて値を更新します(コメントアウトされている項目はコメントを外し、正しい値を設定してください)。

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=database-passwod-here
RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

変更を保存してファイルを閉じます。

11. 続いて、お好みのテキストエディタで /etc/php-fpm.d/zabbix.conf を編集し、Zabbix フロントエンド向けに PHP を設定します。

# vim /etc/php-fpm.d/zabbix.conf

該当行を探してコメントを解除し(行頭の 「;」 を削除)、サーバーに適したタイムゾーンを設定してください。

php_value date.timezone Asia/Tokyo

12. Zabbix サービスを起動する前に、変更を反映させるため HTTPDPHP-FPM サービスを再起動します。

# systemctl restart httpd php-fpm

13. そして、Zabbix サーバーとエージェントのプロセスを起動し、システムブート時に自動起動するよう設定します。なお、ここで起動するエージェントは localhost 監視用です。リモートサーバーを監視するには、対象サーバーにエージェントをインストールし、サーバー側から問い合わせるよう設定する必要があります。

# systemctl start zabbix-server zabbix-agent
# systemctl enable zabbix-server zabbix-agent

さらに、以下のコマンドで Zabbix サーバーが正常に稼働しているか確認しましょう。

# systemctl status zabbix-server
RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

同様に、エージェントプロセスも稼働していることを確認してください。

# systemctl status zabbix-agent
RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

ステップ 4:Zabbix Web フロントエンドのインストールと設定

14. Zabbix サーバーが稼働したら、Web ブラウザーで以下の URL にアクセスし、Web フロントエンドのインストーラーを開きます。

https://SERVER_FQDM/zabbix
または
https://SERVER_IP/zabbix

Enter キーを押すと、次のスクリーンショットのようなウェルカムページにリダイレクトされます。Next step をクリックして先へ進みましょう。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

15. 次に、インストーラーが前提条件のチェックを行います。すべて OK であれば(下にスクロールして他の要件も確認してください)、Next step をクリックして進みます。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

16. 続いて、Zabbix のデータベース接続を設定します(ステップ 2 で作成したデータベースを指定します)。データベースタイプを選択し、データベースホスト、ポート番号、データベース名、ユーザー名、パスワードを入力してください。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

17. 次に、Zabbix サーバーの詳細情報(ホスト名または IP アドレス、ポート番号)を入力します。インストール名を設定することもできます(任意)。Next step をクリックすると、インストール前のサマリーが表示されます。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

18. インストール前サマリーページの内容を確認し、Next step をクリックすると、表示された情報にもとづいてフロントエンドの設定ファイルが生成されます。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

19. Zabbix フロントエンドの設定とインストールを完了するには、Finish をクリックします。すると、次のスクリーンショットのようにログインページへリダイレクトされます。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

20. ログインページでは、ユーザー名 Admin、パスワード zabbix を入力してログインします。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

21. ログインに成功すると、Zabbix Web フロントエンドの監視ダッシュボード「グローバルビュー」が表示され、システム情報やローカル時刻などのサンプルデータを確認できます。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

22. 最後に、デフォルトパスワードを変更して Zabbix のスーパー管理者アカウントを保護しましょう。Administration(管理)→ Users(ユーザー)へ移動し、ユーザー一覧の Alias 列にある Admin をクリックして、ユーザー詳細の編集画面を開きます。

ユーザー詳細画面で Password 項目を探し、Change password をクリックします。安全なパスワードを入力して確認したら、Update をクリックして管理者アカウントの新しいパスワードを保存してください。

RHEL 8 への Zabbix インストール完全ガイド:エンタープライズ監視環境をステップバイステップで構築

おめでとうございます! RHEL 8 サーバーへの最新版 Zabbix 監視ソフトウェアのインストールが完了しました。ご不明な点がある場合は、下記のフィードバックフォームからお気軽にお問い合わせください。詳細については、Zabbix の公式ドキュメントも併せてご参照ください。

  1. DotfileとBashスクリプトだけで新しいUbuntuデスクトップをセットアップする方法

    GitHub上のオープンソースファイルを見るのが楽しみな理由のひとつは、.bashrcなどのdotfileの設定方法といった、一見地味な作業を他の人たちがどうこなしているのかを覗き見できる点にあります。Linuxを使い始めた頃ほど「ライシング(ricing)」に熱中しなくなったものの、見た目と動作速度を向上させてくれる設定を見つけると、今でもワクワクします。 最近、そんな発見がいくつもありました。特にTom Hudson氏のdotfilesです。Tom氏はスクリプト化がお好きなようで、シンボリックリンクの自動作成や、Ubuntuリポジトリのアプリケーションなどのインストールまで自動化しています

  2. 開発者・ITチーム必見!厳選オープンソース バグ追跡システム10選

    すべてのITプロジェクトには、バグ追跡(課題管理・不具合管理)システムが必要です。 ソフトウェア開発プロジェクトにバグ追跡システムが欠かせないのは言うまでもありません。しかし、必要としているのは開発チームだけではありません。システム管理者チーム、データベース管理者(DBA)チーム、ネットワークチームもまた、日々の業務や、管理対象となるシステム・データベース・ネットワークで発生する問題を記録し、確実に追跡するための仕組みを必要としています。 本記事では、実際に試してみて、自分の好みや要件に合わせて選択できるよう、オープンソースのバグ追跡システムを10個厳選して紹介します。決して網羅的なリストでは