監視ツールは、システムのステータスを継続的に追跡し、問題が発生した場合にアラートと通知を送信するために使用されます。また、監視ツールは、重要なシステム、アプリケーション、およびサービスが常に稼働していることを確認するのに役立ちます。監視ツールはネットワークセキュリティを補完するものであり、悪意のあるトラフィック、トラフィックの発信元、およびトラフィックをキャンセルする方法を検出できます。
Zabbixは、無料のオープンソースであり、数万のサーバー、仮想マシン、ネットワークから収集された数百万のメトリックをリアルタイムで監視するために設計された、究極のエンタープライズレベルの監視ツールです。デバイス。 Zabbixは、小さな環境から大きな環境までスキルを発揮できるように設計されています。そのWebフロントエンドはPHPで記述され、バックエンドはCで記述され、MySQL、PostgreSQL、SQLite、Oracle、またはIBMDB2を使用してデータを格納します。 Zabbixは、特定のノードとネットワークの現在の状態の概要を取得できるグラフ機能を提供します
Zabbixの主な機能の一部を以下に示します。
- サーバー、データベース、アプリケーション、ネットワークデバイス、Vmwareハイパーバイザー、仮想マシンなどの監視。
- 小規模から大規模の環境をサポートするように特別に設計されており、サービスの品質を向上させ、ダウンタイムを回避することで運用コストを削減します。
- 完全にオープンソースなので、何も支払う必要はありません。
- 中央の場所からすべてを実行するためのユーザーフレンドリーなウェブインターフェースを提供します。
- ネットワークデバイスを監視するためのSNMPとハードウェアデバイスを監視するためのIPMIが付属しています。
- ブラウザからの完全なシステム制御を可能にするWebベースのフロントエンド。
このチュートリアルでは、Debian9サーバーにZabbixサーバーとZabbixエージェントをインストールする方法を段階的に説明します。また、監視のためにZabbixエージェントをZabbixサーバーに追加する方法についても説明します。
- Debian9がインストールされた2つのシステム。
- 最低1GBのRAMと10DBのディスクスペースが必要です。 RAMとディスク容量は、監視対象のホストとパラメータの数によって異なります。
- サーバーにsudo権限が設定されているroot以外のユーザー。
開始する前に、サーバーのパッケージリポジトリを最新の安定バージョンに更新する必要があります。両方のインスタンスで次のコマンドを実行するだけで更新できます。
sudo apt-get update -y
sudo apt-get upgrade -y
次に、システムを再起動してこれらの変更を適用します。
Apache、PHP、MariaDBをインストールします
ZabbixはPHPで記述されたApacheWebサーバー上で実行され、MariaDB/MySQLを使用してデータを保存します。したがって、Zabbixをインストールするには、Apache、MariaDB、およびPHPが機能する必要があります。まず、次のコマンドを実行して、Apache、PHP、およびその他のPHPモジュールをインストールします。
sudo apt-get install apache2 libapache2-mod-php7.0 php7.0 php7.0-xml php7.0-bcmath php7.0-mbstring -y
次に、MariaDBリポジトリをシステムに追加する必要があります。なぜなら、MariaDBの最新バージョンはDebian9のデフォルトリポジトリでは利用できないからです。
次のコマンドを実行して、リポジトリを追加できます。
sudo apt-get install software-properties-common -y
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64] http://www.ftp.saix.net/DB/mariadb/repo/10.1/debian stretch main'
次に、次のコマンドを実行してリポジトリを更新します。
sudo apt-get update -y
最後に、次のコマンドを使用してMariaDBサーバーをインストールします。
sudo apt-get install mariadb-server -y
デフォルトでは、MariaDBのインストールは保護されていません。したがって、最初にそれを保護する必要があります。これを行うには、mysql_secure_installationスクリプトを実行します。
sudo mysql_secure_installation
以下に示すように、すべての質問に答えてください。
Enter current password for root (enter for none): Enter Set root password? [Y/n]: Y New password:Re-enter new password: Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
上記のスクリプトは、rootパスワードを設定し、テストデータベースを削除し、匿名ユーザーを削除し、リモートロケーションからのrootログインを禁止します。
MariaDBのインストールが保護されたら、ApacheおよびMariaDBサービスを開始し、次のコマンドを実行して起動時に開始できるようにします。
sudo systemctl start apache2
sudo systemctl enable apache2
sudo systemctl start mysql
sudo systemctl enable mysql
Zabbixサーバーのインストール
デフォルトでは、ZabbixはDebian 9リポジトリで利用できますが、古くなっている可能性があります。そのため、公式のZabbixリポジトリから最新バージョンをインストールすることをお勧めします。次のコマンドを使用して、Zabbixリポジトリの最新バージョンをダウンロードして追加できます。
wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-2+stretch_all.deb
次に、次のコマンドを使用して、ダウンロードしたリポジトリをインストールします。
sudo dpkg -i zabbix-release_3.0-2+stretch_all.deb
次に、次のコマンドを実行して、パッケージキャッシュを更新し、WebフロントエンドとMysqlをサポートするZabbixサーバーをインストールします。
sudo apt-get update -y
sudo apt-get install zabbix-server-mysql zabbix-frontend-php -y
Zabbixサーバーのステータス自体に関するデータを収集するには、Zabbixエージェントをインストールする必要もあります。
sudo apt-get install zabbix-agent -y
Zabbixエージェントをインストールした後、Zabbixエージェントサービスを開始し、次のコマンドを実行して起動時に開始できるようにします。
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent
Zabbixデータベースの設定
ZabbixはMariaDB/MySQLをデータベースバックエンドとして使用します。したがって、zabbixをインストールするためのMySQLデータベースとユーザーを作成する必要があります。
まず、次のコマンドを使用してMySQLシェルにログインします。
mysql -u root -p
ルートパスワードを入力し、次のコマンドを使用してZabbixのデータベースを作成します。
MariaDB [(none)]> CREATE DATABASE zabbixdb character set utf8 collate utf8_bin;
次に、次のコマンドを使用して、Zabbixのユーザーを作成し、パスワードを割り当て、Zabbixデータベースに対するすべての権限を付与します。
MariaDB [(none)]> CREATE user zabbixuser identified by 'password';
MariaDB [(none)]> GRANT ALL PRIVILEGES on zabbixdb.* to [email protected] identified by 'password';
次に、次のコマンドを使用して特権をフラッシュします。
MariaDB [(none)]> FLUSH PRIVILEGES;
最後に、次のコマンドを使用してMySQLシェルを終了します。
MariaDB [(none)]> exit;
次に、次のコマンドを使用して、新しく作成されたデータベースに初期スキーマとデータをインポートします。
cd /usr/share/doc/zabbix-server-mysql*/
zcat create.sql.gz | mysql -u zabbixuser -p zabbixdb
Zabbixの設定
Zabbixは独自の設定ファイルを`/etc/zabbix/apache.conf`に作成します。このファイルを編集し、必要に応じてタイムゾーンとPHPの設定を更新します。
sudo nano /etc/zabbix/apache.conf
以下に示すようにファイルを変更します:
php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 32M php_value upload_max_filesize 8M php_value max_input_time 300 php_value always_populate_raw_post_data -1 php_value date.timezone Asia/Kolkata
終了したらファイルを保存します。
次に、Zabbixのデータベースの詳細を更新する必要があります。これを行うには、 `/etc/zabbix/zabbix_server.conf`ファイルを編集します:
sudo nano /etc/zabbix/zabbix_server.conf
次の行を変更します:
DBHost=localhost DBName=zabbixdb DBUser=zabbixuser DBPassword=password
終了したら、ファイルを保存して閉じます。次に、次のコマンドを使用してすべてのサービスを再起動します。
sudo systemctl restart apache2
sudo systemctl restart mysql
sudo systemctl restart zabbix-server
先に進む前に、Zabbixサーバーを保護するためにUFWファイアウォールを構成する必要があります。
まず、UFWがシステムにインストールされていることを確認します。それ以外の場合は、次のコマンドを実行してインストールできます。
sudo apt-get install ufw -y
次に、UFWファイアウォールを有効にします:
sudo ufw enable
次に、次のコマンドを使用して、UFWを介してポート10050、10051、および80を許可します。
sudo ufw allow 10050/tcp
sudo ufw allow 10051/tcp
sudo ufw allow 80/tcp
最後に、ファイアウォールをリロードして、次のコマンドでこれらの変更を適用します。
sudo ufw reload
UFWファイアウォールを設定したら、Webインターフェイスを介してZabbixサーバーのインストールに進むことができます。
ZabbixWebインストールウィザードへのアクセス
すべてが正常になったら、ZabbixWebインストールウィザードにアクセスします。
ウェブブラウザを開き、http:// zabbix-server-ip / zabbixのURLに移動すると、次のページにリダイレクトされます。
次のステップをクリックします ボタンをクリックすると、次のページが表示されます:
ここでは、すべてのZabbixの前提条件がチェックおよび検証され、次のステップをクリックします。 ボタンをクリックすると、次のページが表示されます:
ここで、Zabbixデータベース名、データベースユーザー、パスワードを入力し、次のステップをクリックします。 ボタンをクリックすると、次のページが表示されます:
ここで、Zabbixサーバーの詳細とポート番号を指定し、次のステップをクリックします ボタンをクリックすると、次のページにZabbixサーバーのインストール前の概要が表示されます。
次に、次のステップをクリックします ボタンをクリックしてZabbixのインストールを開始します。 Zabbixのインストールが正常に完了すると、次のページが表示されます。
ここで、完了をクリックします ボタンをクリックすると、以下に示すようにZabbixログインページにリダイレクトされます:
ここで、管理者としてユーザー名を、zabbixとしてパスワードを入力し、サインインをクリックします。 ボタン。次の画像にZabbixサーバーダッシュボードが表示されます。
これでZabbixWebのインストールが完了しました。
Zabbixエージェントをインストール
これで、Zabbixサーバーが起動して機能しています。 ZabbixエージェントノードをZabbixサーバーに追加して監視します。
まず、Zabbixエージェントインスタンスにログインし、次のコマンドでZabbixリポジトリを追加します。
wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-2+stretch_all.deb
sudo dpkg -i zabbix-release_3.0-2+stretch_all.deb
sudo apt-get update -y
システムにZabbixリポジトリを設定したら、次のコマンドを実行するだけでZabbixエージェントをインストールします。
sudo apt-get install zabbix-agent -y
Zabbixエージェントをインストールしたら、Zabbixサーバーと通信するようにZabbixエージェントを設定する必要があります。これを行うには、Zabbixエージェント設定ファイルを編集します。
sudo nano /etc/zabbix/zabbix_agentd.conf
以下に示すようにファイルを変更します:
#Zabbix Server IP Address / Hostname Server=192.168.0.103 #Zabbix Agent Hostname Hostname=zabbix-agent
終了したらファイルを保存して閉じ、Zabbixエージェントサービスを再起動し、次のコマンドを使用して起動時に開始できるようにします。
sudo systemctl restart zabbix-agent
sudo systemctl enable zabbix-agent
ZabbixエージェントノードをZabbixサーバーに追加
次に、監視のためにZabbixエージェントノードをZabbixサーバーに追加する必要があります。まず、ZabbixサーバーのWebインターフェースにログインします。
次に、構成->ホスト->ホストの作成をクリックします 、次のページが表示されます:
ここでは、Zabbixエージェントのホスト名、IPアドレス、グループ名を指定します。次に、[テンプレート]タブに移動すると、次のページが表示されます。
ここで、適切なテンプレートを検索し、追加をクリックします ボタンをクリックすると、次のページが表示されます:
最後に、追加をクリックします もう一度ボタンを押します。すべてが正常に機能していることを示す緑色のラベルが付いた新しいホストが表示されます。
監視する追加のサーバーとネットワークデバイスがある場合は、各ホストにログインし、Zabbixエージェントをインストールして、ZabbixWebインターフェイスから各ホストを追加します。
おめでとうございます!これで、ZabbixサーバーとZabbixエージェントがDebian9サーバーに正常にインストールされました。また、監視用にZabbixエージェントノードをZabbixサーバーに追加しました。現在の問題と過去の履歴を簡単に一覧表示し、ホストの最新データを取得し、現在の問題を一覧表示し、収集されたリソース統計(CPU負荷、CPU使用率、メモリ使用量など)をグラフで視覚化できるようになりました。これで、Debian 9サーバーにZabbixを簡単にインストールして構成し、本番環境にデプロイできるようになることを願っています。他のモニタリングソフトウェアと比較して、Zabbixでは、多くのホストをモニタリングしながら、さまざまなネットワークセグメントの独自のマップを作成できます。 ZabbixWindowsエージェントを使用してWindowsホストを監視することもできます。詳細については、Zabbixドキュメントページを参照してください。ご不明な点がございましたら、お気軽にお問い合わせください。