Ops エージェントを使用して Apache ウェブサーバーの指標を収集する
Ops エージェントを使用して、Compute Engine 仮想マシン(VM)インスタンスにインストールされた Apache ウェブサーバーから指標を収集してモニタリングする方法を学習します。
- Compute Engine VM インスタンスを作成し、Ops エージェントをインストールします。
- Apache ウェブサーバーをインストールします。
- Apache ウェブサーバーの Ops エージェントを構成します。
- Apache ウェブサーバーへのトラフィックを生成します。
- 事前定義された Apache ダッシュボードで指標を表示します。
- アラート ポリシーを作成する
- アラート ポリシーをテストします。
- クリーンアップする。
このタスクを Google Cloud コンソールで直接行う際の順を追ったガイダンスについては、「ガイドを表示」をクリックしてください。
準備
-
組織で定義されているセキュリティの制約により、次の手順を完了できない場合があります。トラブルシューティング情報については、制約のある Google Cloud 環境でアプリケーションを開発するをご覧ください。
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine, Cloud Monitoring, and Cloud Logging APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine, Cloud Monitoring, and Cloud Logging APIs.
VM インスタンスを作成する
-
Google Cloud コンソールで、[VM インスタンス] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Compute Engine] の結果を選択します。
[インスタンスを作成] をクリックして、VM を作成します。
- [
名前 ] フィールドにわかりやすい名前を入力します。 [マシンタイプ] フィールドで [e2-small] を選択します。- [
ブートディスク ] セクションで、[Debian GNU/Linux] をデフォルト設定のままにします。 [ファイアウォール] セクションで、[HTTP トラフィックを許可する] と [HTTPS トラフィックを許可する] の両方を選択します。- [オブザーバビリティ - Ops エージェント] セクションで、[Monitoring と Logging 用の Ops エージェントをインストールする] を選択します。
- [
作成 ] をクリックします。
Apache ウェブサーバーをインストールする
Apache ウェブサーバーを Compute Engine VM インスタンスにインストールする手順は次のとおりです。
[VM インスタンス] ページで、新しい VM を見つけて [接続] 列に移動し、[SSH] をクリックします。
接続できない場合は、SSH のトラブルシューティングをご覧ください。
パッケージ リストを更新するには、次のコマンドをクリップボードにコピーし、SSH ターミナルにコマンドを貼り付け、Enter キーを押します。
sudo apt-get update
SSH ターミナルで、「パッケージ リストを読み取っています...完了」のメッセージを確認した後、次のコマンドを実行して、Apache2 ウェブサーバーをインストールします。
sudo apt-get install apache2 php7.0
インストールを続行するように求められたら、
Y
と入力します。インストールのコマンドが失敗した場合、sudo apt-get install apache2 php
を使用します。コマンド プロンプトが返されたら、[VM インスタンス] ページに移動し、VM の外部 IP アドレスを次の URL にコピーします。
http://EXTERNAL_IP
Apache ウェブサーバーに接続するには、新しいブラウザタブを開き、前のステップの URL を入力します。
ウェブサーバーが正常にインストールされると、ブラウザタブに Apache2 Debian のデフォルト ページが表示されます。
Apache ウェブサーバーのログと指標を収集する
これらの手順では、Apache ウェブサーバーからログと指標を収集するように Ops エージェントを構成します。VM インスタンスの SSH ターミナルに移動します。 ターミナルを開いていない場合は、次のようにします。
-
Google Cloud コンソールで、[VM インスタンス] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Compute Engine] の結果を選択します。
- 新しい VM を見つけて、[SSH] をクリックします。
-
次のコマンドをコピーして、インスタンスのターミナルに貼り付け、Enter キーを押します。
上記のコマンドにより、Apache ウェブサーバーからログと指標を収集して取り込むための構成が作成されます。詳細については、Apache ウェブサーバーの Ops エージェントを構成するをご覧ください。
- コマンド プロンプトが表示されるまで待ちます。これは少なくとも 60 秒かかります。
トラフィックを生成する
Apache ウェブサーバーへのトラフィックを生成するには、次のようにします。
VM インスタンスの SSH ターミナルに移動します。ターミナルを開いていない場合は、次のようにします。
-
Google Cloud コンソールで、[VM インスタンス] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Compute Engine] の結果を選択します。
- 新しい VM を見つけて、[SSH] をクリックします。
-
SSH ターミナルで次のコマンドを実行すると、Apache ウェブサーバーへのリクエストが生成されます。
timeout 120 bash -c -- 'while true; do curl localhost; sleep $((RANDOM % 4)) ; done'
- コマンド プロンプトが戻るか、ターミナルが閉じるまで 2 分間待ちます。コマンドが実行されている間、ターミナルに HTML テキストが表示されます。
Apache 指標を表示する
自動的に作成される [Apache の概要] ダッシュボードを表示する手順には、次のようにします。
-
Google Cloud コンソールで [ダッシュボード] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
[すべてのダッシュボード] ペインで、リストから [Apache の概要] ダッシュボードを選択します。
Apache ウェブサーバーからログと指標を収集するように Ops エージェントを構成し、それらのログを表示しました。次の手順では、Apache ウェブサーバーの負荷がしきい値を超えた場合に通知されるようにアラート ポリシーを作成します。
メール通知チャンネルを作成する
アラート ポリシーを作成する前に、アラート ポリシーで使用する通知チャンネルを構成します。Cloud Monitoring は、メール、Slack、PagerDuty、Pub/Sub など、多くの異なる種類の通知チャンネルをサポートしています。詳細については、通知チャンネルを作成して管理するをご覧ください。 メールで通知されるには、次のようにします。-
Google Cloud コンソールで、notifications [アラート] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
- ツールバーで [通知チャンネルの編集] をクリックします。
- [通知チャンネル] ページで
[メール] までスクロールし、[新しく追加] をクリックします。 - メールアドレス(表示名
My email
など)を入力して、[保存] をクリックします。
アラート ポリシーを作成する
このセクションでは、Apache ウェブサーバーへのトラフィックが定義されたしきい値を超えた場合に通知されるようにアラート ポリシーを作成します。
-
Google Cloud コンソールで、notifications [アラート] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
- [ポリシーの作成] をクリックします。
モニタリング対象の時系列を選択します。
- [指標を選択] をクリックし、[VM インスタンス] を選択します。
- [有効な指標カテゴリ] メニューで、[Apache] を選択します。
- [有効な指標] リストで、[workload/apache.traffic] を選択します。
- [適用] をクリックします。
Apache トラフィックのチャートが表示されます。
[トリガーの構成] フィールドに進み、[しきい値] フィールドを
1500
に設定します。グラフにしきい値が点線で表示されます。破線がピーク トラフィック レベルを大幅に下回っていることを確認します。
[通知と名前] フィールドに進み、[通知チャンネル] メニューを使用してメールアドレスを選択します。
ポリシー名に
Apache traffic above threshold
と入力します。[アラートの確認] フィールドに進み、アラート ポリシーを確認し、[ポリシーを作成] をクリックします。
アラート ポリシーをテストする
アラート ポリシーをテストするには、しきい値を超えるトラフィックを生成します。
VM インスタンスの SSH ターミナルに移動します。ターミナルを開いていない場合は、次のようにします。
-
Google Cloud コンソールで、[VM インスタンス] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Compute Engine] の結果を選択します。
- 新しい VM を見つけて、[SSH] をクリックします。
-
SSH ターミナルで次のコマンドを実行すると、Apache ウェブサーバーへのリクエストが生成されます。
timeout 120 bash -c -- 'while true; do curl localhost; sleep $((RANDOM % 4)) ; done'
- コマンド プロンプトが戻るか、ターミナルが閉じるまで 2 分間待ちます。コマンドが実行されている間、ターミナルに HTML テキストが表示されます。
コマンド プロンプトが返されたら、件名の行が
[ALERT]
で始まるメッセージのメールを確認します。メールが見つからない場合は、アラート ポリシーのグラフを調べて、トラフィック レベルがしきい値を超えていることを確認します。上記のコマンドを再度実行する必要がある場合があります。それ以外の場合は、メールが届くまで 1~2 分待ちます。
通知は、アラート ポリシーとインシデントへのリンクの概要を示します。各インシデントには障害の記録が含まれ、これらは通常はトラブルシューティングに役立ちます。
Apache ウェブサーバーからログと指標を収集するように Ops エージェントを構成しましたが、指標を表示したのみです。Apache ウェブサーバーのログを表示する方法については、クイックスタートの Apache ウェブサーバーのログを表示するをご覧ください。
クリーンアップ
このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の手順を行います。
新しいプロジェクトを作成し、プロジェクトがもう必要でなくなった場合は、プロジェクトを削除します。
既存のプロジェクトを使用した場合は、次のようにします。
VM を作成した場合は、それを削除します。
- In the Google Cloud console, go to the VM instances page.
- Select the checkbox for the instance that you want to delete.
- To delete the instance, click More actions, click Delete, and then follow the instructions.
作成したアラート ポリシーを削除します。
-
Google Cloud コンソールで、notifications [アラート] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。
- 作成したアラート ポリシーを選択して、[
削除 ] をクリックします。
-
次のステップ
Ops エージェントとサポートされている統合については、以下をご覧ください。
URL がリクエストに応答しているかどうかをテストし、障害をシミュレートする方法については、クイックスタートのアプリケーションが応答しない場合に通知されるをご覧ください。
Apache ウェブサーバーからログを表示するには、クイックスタートの Compute Engine VM 用の Cloud Logging をご覧ください。
パフォーマンス データのグラフ化と表示については、ダッシュボードの概要をご覧ください。
Google Cloud でサポートされている指標の一覧については、指標の一覧をご覧ください。
独自の Monitoring 指標を作成するには、カスタム指標をご覧ください。