[Donationsの書き込み]の一部として寄付を受け取りましたプログラム。前書きZabbixは、ネットワークおよびアプリケーション用のオープンソースの監視ソフトウェアです。サーバー、仮想マシン、ネットワークデバイス、およびWebアプリケーションから収集された数千のメトリックのリアルタイム監視を提供します。これらのメトリックは、お客様が苦情を申し立てる前に、ITインフラストラクチャの現在の状態を判断し、ハードウェアまたはソフトウェアコンポーネントの問題を検出するのに役立ちます。有用な情報はデータベースに保存されるため、長期間にわたってデータを分析し、提供されるサービスの品質を改善したり、機器のアップグレードを計画したりできます。Zabbixでは、ユーザーサービスやクライアント/サーバーアーキテクチャのエージェントレス監視など、メトリックを収集するためのいくつかのオプションを使用します。サーバーメトリクスを収集するために、監視対象クライアント上の小さなエージェントを使用してデータを収集し、Zabbixサーバーに送信します。Zabbixは、サーバーと接続されたクライアント間の暗号化された通信をサポートしているため、安全でないネットワーク上を移動する間、データは保護されます。[PostgreSQL]、またはhttps://www.oracle.comを使用したリレーショナルデータベースにデータを保存します。/index.html[Oracle]。Elasticsearchやhttps://www.timescale.com/[TimescaleDB]などのnosqlデータベースに履歴データを保存することもできます。Zabbixには、データを表示してシステム設定を構成できるWebインターフェースが用意されています。このチュートリアルでは、2台のマシンを構成します。1つはサーバーとして構成され、もう1つは監視するクライアントとして構成されます。サーバーはMySQLデータベースを使用して監視データを記録し、Apacheを使用してWebインターフェースを提供します。前提条件このチュートリアルを実行するには、次のものが必要です。18.04サーバーをセットアップしました。+`で設定されたファイアウォール。1つのサーバーにZabbixをインストールします。Zabbixサーバー*と呼びます。2番目のサーバーを監視します。2番目のUbuntuサーバー*と呼ばれます。Zabbixサーバーを実行するサーバーには、Apache、MySQL、およびPHPがインストールされている必要があります。[このガイド]に従って、Zabbixサーバーでこれらを設定します。SSL証明書をインストールしてサーバーを安全に保つことが重要です。これはオプションですが、強くお勧めします。18.04で暗号化しましょうのガイドに従ってください。SSL証明書を取得します。ステップ1-Zabbixサーバーのインストールまず、MySQL、Apache、およびPHPをインストールしたサーバーにZabbixをインストールする必要があります。非rootユーザーとしてこのマシンにログインします。[Zabbix公式リポジトリ]を使用して最新の安定バージョンをインストールしてください。リポジトリー構成パッケージをダウンロードしてインストールします。zabbix-release_+bionic_all.deb次の出力が表示されます。...新しいリポジトリが含まれるようにパッケージインデックスを更新します。update次に、MySQLデータベースをサポートするZabbixサーバーとWebフロントエンドをインストールします。zabbix-frontend-phpまた、Zabbixサーバーのステータス自体に関するデータを収集できるZabbixエージェントをインストールします。zabbix-agentZabbixを使用する前に、Zabbixサーバーがエージェントから収集するデータを保持するデータベースを設定する必要があります。次のステップでこれを行うことができます。新しいMySQLデータベースを作成し、Zabbixに適したデータベースにするために、いくつかの基本情報を入力する必要があります。+`アカウントでMySQLにログインしないようにします。*ユーザーとしてMySQLにログインします。-pUTF-8文字をサポートするZabbixデータベースを作成します。utf8_bin;次に、Zabbixサーバーが使用するユーザーを作成し、新しいデータベースへのアクセスを許可し、ユーザーのパスワードを設定します。'';次に、これらの新しい権限を適用します。privileges;ユーザーとデータベースの面倒を見てくれます。データベースコンソールを終了します。quit;次に、初期スキーマとデータをインポートする必要があります。Zabbixのインストールにより、これを設定するファイルが提供されました。`データベースにインポートします。+」MySQLユーザーのパスワードを入力します。このコマンドは、成功した場合、エラーを出力しません。Zabbixサーバーがこのデータベースを使用するには、Zabbixサーバー設定ファイルでデータベースパスワードを設定する必要があります。任意のテキストエディターで構成ファイルを開きます。/etc/zabbix/zabbix_server.confファイルの次のセクションを探します。DBPassword=ファイル内のこれらのコメントは、データベースへの接続方法を説明しています。+`値をデータベースユーザーのパスワードに設定する必要があります。これらのコメントの下に次の行を追加して、データベースを構成します。zabbix_server.conf」を保存して閉じます。これにより、Zabbixサーバーの設定が処理されます。Webインターフェースが適切に機能するように、PHPのセットアップにいくつかの変更を加えます。ステップ3-Zabbix用のPHPの構成ZabbixウェブインターフェースはPHPで書かれており、いくつかの特別なPHPサーバー設定が必要です。Zabbixのインストールプロセスにより、これらの設定を含むApache設定ファイルが作成されました。+`にあり、Apacheによって自動的にロードされます。このファイルに小さな変更を加える必要があるので、次のようにして開きます。Webインターフェースに必要な要件を満たすPHP設定が含まれています。タイムゾーン設定はデフォルトでコメント化されています。Zabbixが正しい時間を使用していることを確認するには、適切なタイムゾーンを設定する必要があります。-1</IfModule>前のコードブロックで強調表示されているタイムゾーンの行のコメントを解除し、タイムゾーンに変更します。[サポートされているタイムゾーンのリスト]を使用して、適切なものを見つけることができます。次に、ファイルを保存して閉じます。次に、Apacheを再起動して、これらの新しい設定を適用します。apache2これで、Zabbixサーバーを起動できます。zabbix-server次のステータスが表示されます。...最後に、起動時にサーバーを起動できるようにします。zabbix-serverサーバーがセットアップされ、データベースに接続されます。次に、Webフロントエンドをセットアップします。Webインターフェイスの設定の構成Webインターフェースでは、レポートを表示し、監視するホストを追加できますが、使用する前に初期設定が必要です。最初の画面に、ようこそメッセージが表示されます。[次のステップ]をクリックして続行します。次の画面で、Zabbixを実行するためのすべての前提条件をリストした表が表示されます。*である必要があるため、値が正しいことを確認してください。下にスクロールして、すべての前提条件を確認してください。すべての準備が整ったことを確認したら、[次のステップ]をクリックして続行します。次の画面では、データベース接続情報を求められます。Webインターフェースはホストを管理しデータを読み取るためにデータベースへのアクセスも必要とします。したがって、手順2で設定したMySQL資格情報を入力し、[次の手順]をクリックして続行します。次の画面で、オプションをデフォルト値のままにしておくことができます。[Zabbixサーバーの詳細]*名前*はオプションです。複数の監視サーバーがある場合に、Webインターフェイスでサーバーを区別するために使用されます。[次のステップ]をクリックして続行します。次の画面にはインストール前の概要が表示されるため、すべてが正しいことを確認できます。[概要]*次のステップ*をクリックして、最終画面に進みます。これは将来バックアップして使用できます。[完了]をクリックして、ログイン画面に進みます。ログインする前に、2台目のUbuntuサーバーでZabbixエージェントをセットアップします。次に、Zabbixサーバーに監視データを送信するエージェントソフトウェアを設定する必要があります。2番目のUbuntuサーバーにログインします。@次に、Zabbixサーバーと同様に、次のコマンドを実行してリポジトリ設定パッケージをインストールします。zabbix-release_+bionic_all.deb次に、パッケージインデックスを更新します。update次に、Zabbixエージェントをインストールします。zabbix-agentZabbixは証明書ベースの暗号化をサポートしていますが、認証局の設定はこのチュートリアルの範囲外ですが、事前共有キー(PSK)を使用してサーバーとエージェント間の接続を保護できます。/etc/zabbix/zabbix_agentd.psk"キーを表示して、どこかにコピーできるようにします。ホストを構成するために必要になります。/etc/zabbix/zabbix_agentd.pskキーは次のようになります。OutputZabbixエージェントの設定を編集して、Zabbixサーバーへの安全な接続を設定します。テキストエディターでエージェント構成ファイルを開きます。/etc/zabbix/zabbix_agentd.confこのファイル内の各設定は、ファイル全体の有益なコメントを介して文書化されますが、編集する必要があるのはそれらの一部のみです。最初に、ZabbixサーバーのIPアドレスを編集する必要があります。次のセクションを見つけます。Server=Server=127.0.0.1...デフォルト値をZabbixサーバーのIPに変更します。/etc/zabbix/zabbix_agentd.conf...Server=...次に、Zabbixサーバーへの安全な接続を設定し、事前共有キーのサポートを有効にするセクションを見つけます。+`セクションを見つけます。TLSConnect=unencrypted...次に、次の行を追加して、事前共有キーのサポートを構成します。+`セクションを見つけます。TLSAccept=unencrypted...次の行を追加して、事前共有キーをサポートする着信接続を構成します。+`セクションを見つけます。TLSPSKIdentity=...次の行を追加して、事前共有キーを識別する一意の名前を選択します。次に、以前に作成した事前共有キーを指すオプションを設定します。TLSPSKFile=...次の行を追加して、Zabbixエージェントが作成したPSKファイルを指すようにします。/etc/zabbix/zabbix_agentd.conf...TLSPSKFile=...ファイルを保存して閉じます。これで、Zabbixエージェントを再起動し、ブート時に起動するように設定できます。zabbix-agent適切な測定のために、Zabbixエージェントが正しく実行されていることを確認します。zabbix-agent次のステータスが表示され、エージェントが実行されていることが示されます。+`でリッスンします。このポートへの接続を許可するようにUFWを構成します。18.04でのUFWを使用したファイアウォール]。これで、エージェントはZabbixサーバーにデータを送信する準備ができました。それを使用するには、サーバーのウェブコンソールからリンクする必要があります。次のステップでは、構成を完了します。監視するサーバーにエージェントをインストールすることは、プロセスの半分だけです。監視する各ホストは、Zabbixサーバーに登録する必要があります。これは、Webインターフェースから実行できます。+`に移動して、ZabbixサーバーのWebインターフェースにログインします。[Zabbixログイン画面]ログインしたら、*構成*をクリックしてから、上部ナビゲーションバーの*ホスト*をクリックします。次に、画面の右上隅にある[ホストの作成]ボタンをクリックします。これにより、ホスト構成ページが開きます。IPアドレス*を調整し、ホストをグループに追加します。Linuxサーバー*などの既存のグループを選択するか、独自のグループを作成できます。ホストは複数のグループに属することができます。これを行うには、[グループ]フィールドに既存または新しいグループの名前を入力し、提案されたリストから目的の値を選択します。グループを追加したら、[テンプレート]タブをクリックします。*をクリックしてこのテンプレートをホストに追加します。次に、[暗号化]タブに移動します。001+」に設定します。*の値を、Zabbixエージェント用に生成したキーに設定します。+」に保存されているものです。[暗号化のセットアップ]最後に、フォームの下部にある[追加]ボタンをクリックして、ホストを作成します。リストに新しいホストが表示されます。待ってからページをリロードして、すべてが正常に機能し、接続が暗号化されていることを示す緑色のラベルを確認します。[Zabbixは新しいホストを示します]追加のサーバーを監視する必要がある場合は、各ホストにログインし、Zabbixエージェントをインストールし、PSKを生成し、エージェントを設定し、最初のホストを追加するための手順と同じ手順に従って、ホストをWebインターフェースに追加します。Zabbixサーバーは2番目のUbuntuサーバーを監視しています。次に、電子メール通知を設定して、問題が通知されるようにします。[Jabber]、SMSなどのいくつかのタイプの通知を自動的にサポートします。TelegramやSlackなどの代替通知方法を使用することもできます。[こちら]で確認できます。簡単な通信方法は電子メールです。このチュートリアルでは、このメディアタイプの通知を構成します。*管理*をクリックしてから、上部ナビゲーションバーの*メディアタイプ*をクリックします。すべてのメディアタイプのリストが表示されます。[メール]をクリックします。電子メールサービスによって提供される設定に従って、SMTPオプションを調整します。このチュートリアルでは、GmailのSMTP機能を使用してメール通知を設定します。[GoogleのSMTPサーバーの使用方法]をご覧ください。メッセージformat-h​​tmlまたはプレーンテキストを選択することもできます。最後に、フォームの下部にある[更新]ボタンをクリックして、メールパラメータを更新します。[メールのセットアップ]次に、新しいユーザーを作成します。*管理*をクリックし、上部のナビゲーションバーで*ユーザー*をクリックします。ユーザーのリストが表示されます。次に、画面の右上隅にある[*ユーザーの作成]ボタンをクリックします。これにより、ユーザー構成ページが開きます。[ユーザーの作成]エイリアス*フィールドに新しいユーザー名を入力し、新しいパスワードを設定します。次に、ユーザーを管理者のグループに追加します。Zabbix管理者+」と入力し、提案されたリストから選択します。グループを追加したら、[メディア]タブをクリックし、下線付きの[追加]リンクをクリックします。ポップアップウィンドウが表示されます。[メールの追加][送信先]フィールドにメールアドレスを入力します。残りのオプションはデフォルト値のままにしておくことができます。下部にある[追加]ボタンをクリックして送信します。