こんにちは!テリロジーのY.Tです。
今回はOCIのモニタリング機能について、ご紹介をしていきます。
OCIのインスタンスやブロックボリュームなどのサービスは、デフォルトでモニタリング機能が有効になっており、
OCI Webコンソールの「モニタリング」から、インスタンスにかかっている負荷、ブロック/ブートボリュームの スループットの確認や、負荷がかかったことを検知し、メールでアラームを送信することなどができます。
また、パブリックIPアドレスをもつインスタンスに対して。ping、もしくはhttp(s)によるヘルスチェックも可能です。
ここでは、「モニタリング」ページでできることのご紹介、また、Windowsのテストインスタンスに対してアラーム 設定を行いたいと思います。
サービス別のメトリックの確認
OCI Webコンソールの「監視および管理」>「モニタリング」>「サービス・メトリック」へ推移し、
以下を設定することで、サービスごとのメトリックが確認できます。
- コンパートメント:任意のコンパートメントを選択
- メトリック・ネームスペース:メトリックを確認したい対象のネームスペース
メトリック・ネームスペースは利用可能なサービスのメトリック別に分かれており、以下のネームスペースの他、 NATゲートウェイやサービスゲートウェイのパケット数など、さまざまなサービスのメトリックを 確認することができます。
- oci_computeagent ※インスタンスのCPU、メモリー使用率など
- oci_blockstorage ※ブロック・ブートボリュームのスループットなど
- oci_vpn ※送受信パケット数など
また、画面のグラフにカーソルを合わせると、上位13のインスタンス名と利用量が確認できます。
oci_computeagentを選択した際の画面例)
モニタリング機能でメトリックを確認することができるサービスは以下です。
APIゲートウェイ、ビッグ・データ、ブロック・ストレージ、ブロックチェーン・プラットフォーム、 コンピュート(コンピュート・インスタンス・メトリック、インフラストラクチャ・ヘルス・メトリック)、 Container Engine for Kubernetes、データ・カタログ、データ統合、データベース、デジタル・アシスタント、イベント、ファイル・ストレージ、ファンクション、ヘルス・チェック、ロード・バランシング、 管理エージェント、MySQLデータベース、ネットワーキング(VNICメトリック、FastConnectメトリック、 VPN接続メトリック、サービス・ゲートウェイ・メトリック)、NoSQLデータベース・クラウド、通知、 オブジェクト・ストレージ、OS管理、ストリーミング、ボールト、WAF
参照元:OCI公式ドキュメント「モニタリングの概要」
インスタンスごとのメトリックの確認
OCI Webコンソールの「監視および管理」>「モニタリング」>「メトリック・エクスプローラー」からは、各サービスのコンポーネントのメトリックを、より詳細に確認することができます。
特定のインスタンスのOCIDなど、指定した条件でメトリックを確認することや、アラームを作成することも可能 です。
ここでは、指定したインスタンスの1分ごとの平均のCPU使用率を確認します。
以下の項目を入力し、画面下部の「アラームを更新」を押すと、上部にグラフとして表示されます。
- コンパートメント:任意のコンパートメント
- メトリック・ネームスペース:oci_computeagent
- メトリック名:CpuUtilization
- 間隔:1m(1分) ※1m(1分)、5m(5分)、1h(1時間)、1d(1日) から選択可能
- 統計:Mean(平均) ※SumやRateなども選択可能
- メトリック・ディメンション
- ディメンション名:resourceId
- ディメンション値:<監視するインスタンスのOCID>
上記設定時の画面)
アラームの作成と検証
「2.インスタンスごとのメトリックの確認」で利用した、メトリック・エクスプローラーの画面下部にある、 「アラームの作成」をクリックすると、アラームの作成画面が表示されます。
ここでは、以下の項目を設定し、アラーム試験用にCPU使用率が0%以上、1分間続いた場合、アラームを発動する設定をします。
- アラーム名:test_alarm ※任意の名前(アラームメール受信時の件名になります)
- アラームの重要度:クリティカル ※クリティカル/エラー/警告/情報 から選択
- メトリックの説明、メトリック・ディメンジョン:
メトリック・エクスプローラーで指定した値になっているため、改めて入力する必要なし - トリガールール(アラームを発動させる条件を指定):
CPU使用率が0%以上、1分間続いた場合、アラームを発動する設定 ※アラーム発報試験のための設定 - Notifications(アラームの通知方法の設定):
画面下部右側の「トピックの作成」をクリックすると、通知方法を作成することができます。 通知方法は、電子メール、Slack、SMSなどがありますが、今回は電子メールを選択し、設定します。
トピックの作成後、アラームを通知する電子メールに、オラクルから確認のメールが届きます。
メール内の「Confirm subscription」をクリックすると、以下の画面が表示され、アラームメールが届くようになります。
設定後、「アラームの保存」をクリックし、保存します。
以上で、アラームの設定が完了です。
今回の検証では、CPU使用率が0%以上になった場合にアラームメールを送信するように設定しているため、 設定後すぐに以下のメールを受信しました。
アラームのステータスの確認
発報されているアラームは「監視および管理」>「モニタリング」>「アラームのステータス」から確認することができます。
アラームが発火しているときは以下のように表示されます。
アラーム名をクリックすると、アラームの詳細が確認できます。アラームが発報されているときはのマークが
アラーム名の横に表示されます。
正常時にはのマークがアラーム名の横に表示されます。
ヘルス・チェックでできること
パブリックIPアドレスを持つ端末に対して、ping、もしくはhttp(s)アクセスでヘルスチェックを実施することができます。ヘルスチェック元は「バンテージ・ポイント」で設定することができ、AWS、Azure、GCPの各種ロケーション から選択することが可能です。
また、ヘルスチェックで設定可能な具体的な項目は以下です。
- ヘルス・チェック名:※任意の名前
- コンパートメント:ヘルス・チェックのターゲットとするインスタンスがあるコンパートメントを選択
- ターゲット:パブリックIPアドレスを持つ端末を選択
- バンテージ・ポイント:AWS、Azure、GCPの各ロケーションを指定
選択可能なバンテージ・ポイント例)
AWS Asia Pacific Sounth1、Azure Asia Pacific(Tokyo) など - リクエスト・タイプ:ping、もしくはhttpから選択
※httpを選択した場合- プロトコルでhttpsが選択可能
- モニターするパス、HTTPメソッド(HEAD/GET)を指定
- タイムアウト:タイムアウトする秒数を指定
- 間隔:ヘルス・チェックの間隔を指定
まとめ
今回はメトリックのモニタリング機能についてまとめました。
インスタンスごとだけではなく、サービス単位で監視が可能であり、また、アラームにタグ付けをすることも可能なため、一つのWebAppで利用している複数のサービスを一括で監視することもでき、便利だと思いました。
最後までお読みいただき、ありがとうございました。🙇
- カテゴリ:
- OCIサービス紹介