検索
連載
Azure ハイッ! ここ大事!:

Azureでサービスの動作状態を監視する (1/3)

Azureのサービスが正常に動作しているかどうか、いちいちポータル画面を開いてチェックするのは大変ですよね? Azureの監視機能を使えば、エラーの発生などを自動通知させることができます。

PC用表示 関連情報
Share
Tweet
g+
LINE
Hatena

 クラウドサービスを利用していると、正常に動作しているかどうか不安になることがあります。もちろん、オンプレミスのサーバであっても、正常に動いているかどうか常に監視する必要はあるのですが、手元にサーバ本体がないだけに気になるところです。Azure上に構築した環境の監視はいったいどうなっているのでしょうか。今回はAzureサービスの管理/監視機能について見ていきます。

Azureの動作状況を監視する

 Azure上に作成した仮想マシンやWeb Appsのサービスが正常に動作しているかどうかをチェックしたいことがあります。

 せっかく作ったWebサイトやサービスが、過負荷や障害、設定ミスなどでアクセスできなくなった場合(仮想マシンやWebサーバが応答しなくなった場合)、それを速やかに検出できないと、ユーザーに迷惑が掛かりますし、場合によっては大きな機会損失になるでしょう。また迅速なトラブル対応(スケールアップやスケールアウト、不具合修正など)もできません。

 そこで役に立つのがAzureの監視機能です。これを使うと、エラーや過負荷状態の発生などを検出して、例えば管理者にメールを送信したり、仮想マシンを再起動したりといった操作が可能になります。

Azureで利用できる監視機能は?

 Azureで利用可能な監視関連の機能としては、次のようなものがあります。これを組み合わせて、Azure上の仮想マシンやWeb Appsなどの動作状態を監視します。

機能 概要
監視ツール 監視ツールやイベント、ログなどの結果を統合管理するためのサービス
メトリック CPUやメモリ、ネットワークトラフィック、ストレージの利用サイズ、エラーの数、各リソースカウンターの値など、計数可能な値を提供する機能
アラート メトリックやアクティビティログ、診断ログなどを条件として、指定されたアクションを起動する機能
自動スケール/Runbookなど あるアラートが発生した場合に、仮想マシンをスケールアップ/スケールアウトしたり、特定の処理(仮想マシンの再起動など)を実行したりする
アクティビティログ Azureのインフラストラクチャが提供するログ機能
診断ログ Azure上の仮想マシンやWeb Appsなどが提供するログ機能
Azure診断 Azure VM上のアプリやOSが持つ各種診断機能(パフォーマンスカウンタやログなど)を監視対象とする機能
Azureで利用可能な監視関連の機能

アラート機能を利用して、タイムリーに異常を検出しよう

 今回は監視機能のうち、「アラート」機能を使ってみます。

 アラートとは、メトリック(トラフィックやエラー数などの“計測値”)の値などを利用してあらかじめ条件を設定しておくと、それに合致する状態が発生した場合に、例えばメールを送信したり、Runbookと呼ばれる自動処理を起動したりする機能です。システムが正常に稼働しているか、何か障害が発生していないかを、管理者が把握するための機能です。

 前述の通り、Azureの監視機能にはさまざまなものが用意されていますが、アラートを使ってタイムリーな異常検出をするのは、監視の基本といってよいでしょう。

【ハイッ! ここ大事!】

【ハイッ! ここ大事!】

 システム監視の第一歩は、タイムリーな異常検出です。これには、アラートをうまく利用して、必要な情報を必要なときに入手できるようにしましょう。


 Azureのアラート機能は次のような構成になっています。

Azureのアラート機能の概要
Azureのアラート機能の概要
アラート機能を使うと、CPUの使用率やメモリの使用量、ディスクやネットワークのトラフィックなどを条件にして、特定のアクション(メールの送信や他の処理の起動など)を実行できる。

アラートで監視できる対象は?

 アラートなどの条件として利用できる監視対象としては、次のようなものがあります(主要なもののみ)。

項目 対象
リソースメトリック関連 ・CPU使用率
・ネットワークトラフィック量
・ディスク入出力量
・ディスクI/O回数
・CPU課金金額(利用料/残金)
HTTPサーバ関連 ・ワーキングセットサイズ
・応答時間
・トラフィック量
・HTTP 1xx/2xx/3xx/4xx/5xxなどのエラー数
・HTTP要求数
ログ関連 ・特定の診断ログイベントの発生。ログの種類やレベル、ステータスでフィルタ可能
・特定のアクティビティログイベントの発生。ログの種類やレベル、ステータスでフィルタ可能
Azure診断 ・仮想マシン上のWindows OSやLinuxなどに含まれている固有の情報(パフォーマンスカウンタ、イベントログ、IISログ、アプリケーションログなどを取得可能)
アラートの主な監視対象

 他にも多数の対象を条件にできますが、詳細は以下のサイトを参照してください。

アラートで利用可能なアクションは?

 アラートのルールに合致した場合に実行可能なアクションとしては次のようなものがあります(主要なもののみ)。

  • メール送信
  • SMS送信
  • Webhook呼び出し(他のWebサーバのサービスを呼び出す。例:「Slackに投稿する」などを参照のこと)
  • Runbook(自動処理)の起動
  • (Web Appsの)Azure Functionsの起動
  • (Web Appsの)Logic Appの起動

 今回は、適用範囲の広いメール送信の方法について具体的に見ていきましょう。

【ハイッ! ここ大事!】

【ハイッ! ここ大事!】

 Azureのアラートでは、メール送信やSMS送信以外にも、Webhookで他のWeb APIを呼び出したり、Runbookでスクリプトを自動実行したりできます。必要な情報が、必要なタイミングで、必要なメンバーに届くように、アクションを組み合わせて利用するなどするとよいでしょう。


       | 次のページへ

Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.

ページトップに戻る