リソース監視とは
リソース監視とは、主にサーバー管理者が、運用しているサーバーのCPU、メモリ、ディスクの使用率の異常をリアルタイムに把握する作業です。
クラウド型監視サービス「Site24x7(サイトトゥエンティーフォーセブン)」の場合、サーバー監視機能を利用することでリソース監視を簡単に実現できます。上のスクリーンショットはLinuxサーバーのCPU監視画面です。画面上部の「メモリ」タブ、「ディスク」タブをクリックすると同様にそれらの統計データに簡単にアクセスできます。
また、デフォルトでしきい値が設定されており、しきい値を超えるとユーザーにメール通知が届きます。そのため、リソース監視設定や通知設定をすることなく、リソース監視を始めることができます。
リソース監視手順
ここからはリソース監視をSite24x7で実現する手順を具体的に紹介します。必要なものは、監視対象のサーバーとメールアドレス、電話番号のみです。実際にやっていただくと本当に5分で開始できることをご理解いただけると思います。是非、お気軽にお試しください。
1. フリープランにサインアップ
このページの右上にある「サインアップ」をクリックし、4つの項目を入力するだけでアカウントを作成できます。クレジットカード情報などは必要ないので安心です。
サインアップすると次の画面が表示されます。リソース監視をするために「サーバー監視」をクリックします。
2. エージェントのインストール
次に、監視対象サーバーにエージェントをインストールします。Windows編とLinux編、それぞれの手順を紹介します。
Windows編
Windowsの手順は次のリンクでわかりやすく説明されているのでそちらをご確認ください。
Windows監視を5分で始める方法:
https://www.site24x7.jp/simple-server-monitoring.html
Linux編
「Linux」をクリックします。
Linux上で実行するコマンドが表示されますので「クリップボードへコピー」をクリックします。
Linuxサーバーに接続します。ここではAmazon Linux2を例に紹介します。
コピーしたコマンドを実行します。wgetなどインターネット接続出来ていることが前提となりますので、オンプレミス環境などの場合は作業前に確認が必要です。
シェルを実行します。
successfullyと表示されたら完了です。エージェントのインストールも数分で完了できます。
しばらく経つとSite24x7の管理画面上に監視対象サーバーの情報が表示されます。次の画面では、LinuxサーバーとWindowsサーバー、計2台が表示されています。
これだけで、デフォルト設定のリソース監視を開始することができます。
3. リソース監視設定の確認
次に、リソース監視設定と通知設定について、デフォルトで設定されている内容を確認し、必要に応じて変更します。
「管理」→「設定プロファイル」→「しきい値と可用性」→「Default Threshold – SERVER」をクリックします(サーバー毎に分けたい場合は自身でプロファイルを作成できます)。
CPU使用率、メモリ使用率、ディスク使用率のしきい値が設定されています。CPU使用率の場合、デフォルトでは80%を超えるとトラブルとして通知、90%を超えるとクリティカルとして通知してくれます。
運用していく中で、より最適な数値を見い出すことができれば、この画面から簡単に変更できます。
実際にCPU使用率がしきい値を超えると、ポータル上では次のようにアラートとして表示されます。
4. 通知設定の確認
こちらも設定は不要です。Site24x7はクラウドサービスのため、アカウント作成時のメールアドレスに障害の通知が飛ぶように設定されています。もちろんメールサーバーなどの用意は必要ありません。
ここでは、デフォルトの設定内容の確認方法と通知メールの内容を紹介します。必要に応じて設定を変更してください。
「管理」→「ユーザーとアラートの管理」→「ユーザー&アラート」をクリックすると自身のアカウントが登録されていますのでクリックします。
自身のアカウントのメールアドレスや権限、どのグループに所属しているかを確認できます。「アラート設定」でメールによるアラートが設定されていることが分かります。
アラート期間やアラートをしない曜日、メールをHTMLかテキストで受け取るかなども選択できます。
ユーザーグループとは「ユーザーアラートグループ」と紐づいており、デフォルトではアプリケーションチーム、ネットワークチーム、管理グループというグループがあります。自分自身はすべてのグループに登録されています。運用に沿って必要なだけアカウントを作成し、グループにユーザーを追加したり、新たなグループを追加することができます。
エージェントをインストールしたサーバーは管理グループに紐づいています。「ホーム」→「監視」から対象のサーバーの右端にあるメニューアイコンから「編集」をクリックしてそれを確認できます。
ユーザーアラートグループが「管理グループ」に設定されていることがわかります。WindowsもLinuxもデフォルトは同じです。
障害発生時の表示と通知
ここからは、試験的にサーバーに負荷をかけアラートを起こし、管理画面における表示とメールによる通知の内容を紹介します。
意図的にCPU使用率を100%にするため、Amzon Linux2上で「Yes > /dev/null」コマンドを実行します。
これにより、yesプロセスが無限にyを/dev/nullに放り込んでいるためにCPU使用率が100%になります。
Site24x7の監視画面を見てみるとアラートが出ていることがわかります。
メール通知は次のような内容で届きます。何が起こっているかもメールの内容で把握できます。
グラフ表示や該当プロセスなどデフォルト設定のままで知りたい情報が送られて来ていることがわかります。
次のメールは復旧メールです。緑色で正常であることが直感的に伝わります。
次の例は、Windowsサーバーがダウンしたケースです。ダウンは最もクリティカルなので赤色となります。
ここまで、Site24x7でリソースを監視する方法をご紹介しました。このように簡単にリソース監視が出来るSite24x7。是非、みなさんもお試しください。
参考情報
OSの標準機能でリソースの状態を確認する方法
LinuxとWindowsのそれぞれのサーバーでリソースの状態を確認できます。なお、これらの方法は、あくまでも「確認」です。異常や問題があった際に直ちに把握しようとする「監視」としては不十分であることがわかります。そのため、多くの担当者がリソース監視を効率化できるツールを導入しています。
Linuxでリソースの状態を確認する方法
利用するディストリビューションにもよりますがGNU/Linuxでは基本的にvmstat、top、free、dfなどのコマンドが用意されています。各種リソースの使用率の他、ファイルシステムの容量や使用率の高いプロセスの特定など選択肢は豊富です。
自身でシェルを作成したり、cron処理で目当ての監視項目に作成したシェルを実行させる事も可能です。OSSなので有志が作成しているパッケージサービス(Cactiなどリポジトリにある)もあります。
出来ることは多く、一般的な事は全て実現できますが、OSSについての理解と向き合う根気が必要です。
例えば、Amazon Linux 2のtopコマンドを実行した画面が以下です。CPU・メモリ使用率やプロセスなどが分かります。
Windowsでリソースの状態を確認する方法
Windowsでは標準でタスクマネージャーがあります。画面を開けば現在の使用率がリアルタイムで表示され、異常があれば一目で把握できます。
しかし常に目視している訳にもいきませんのでWindows Serverには自動的にリソース状況が取得できるパフォーマンスモニターが用意されています。これはリソースの値を取得する間隔や、ログの書き出し方法など細かな設定ができ、条件をつけてバッチなどの実行も可能です。
しきい値を設定して値を超えた際にメールを送る(バッチなどで実現)という基本的な監視も行えますが、設定にはOSに関するバッチや運用の知識が必要です。
次の画面はWinSrv2016でのパフォーマンスモニターです。プロセス毎のCPU使用率など取得できます。
リソース監視ツールを導入したほうがいいケース
OS標準の機能でも運用は出来ることをお伝えしましたが、上記で上げた運用の方法では、問題が生じたり仕様が変更されたりするたびに設定変更などのお守りをしてあげなければいけません。
サービス開発や社内業務などの本業があるなか、そういったサーバーの監視運用をすることは昨今のWebサービスのスピード感と働き方では考えにくいと思います。
- 障害が起きて困っている
- 運用に課題を感じている
- 本来の事業や業務に集中したい
こういった方々にお勧めなのがリソースを監視できるツールです。
無料でリソース監視を始められるツール3選
ここでは代表的なツールを3つ紹介します。
Zabbix
Zabbixは、OSSで提供されている監視ツールです。監視対象へのポーリング、トラップの検知など一般的なSNMP監視と様々なカスタマイズが可能です。
自身で導入するのであれば低コストで、拡張性もあり出来ることが多いのが特徴です。
一方、Zabbixマネージャーを構築し、監視対象やアラートを登録するなど日々運用をしていく必要があるので、やらなければいけないことも多い点は否めません。
CloudWatch
CloudWatchは、AWSで提供されているモニタリングツールです。AWS-EC2上のリソースを自動で取得してくれる上に、AWSの豊富な他サービスと連携できるのが特徴です。
一方、メール発報などの運用監視をするにはアラート(アラーム)設定が必要です。AWS上にあるため他監視ツールとの統合が用意には出来ず、オンプレや他クラウドの総合的な監視をしたい場合は一工夫必要な点は注意が必要です。
Site24x7
Site24x7は、クラウドで提供されている監視ツールです。監視対象のサーバーにエージェントをインストールするだけで一般的な死活・リソース監視が可能な手軽さが特徴です。
クラウドのポータルサイトでリソース状況を可視化、障害検知連絡、自動アクションなどの設定も簡単に出来ます。また、カスタマイズ不要でクラウドに対応したサービスが豊富に用意されているのも特徴のひとつです。
AWS監視を5分で始める方法:
https://www.site24x7.jp/simple-aws-monitoring.html
さらに、ユーザー視点の監視も簡単に実現できます。Site24x7のリアルユーザー監視機能なら、グローバルの各サイトからエンドユーザーと同等のアクセスを行い、レスポンスタイムに異常が発生していないかを監視できます。同等の機能を自前で用意する事は困難であることから、Site24x7の優れた機能の1つであると言えます。