Help us understand the problem. What is going on with this article?

Google Stackdriverを使ってAWSのリソースをモニタリングしてみた。

More than 3 years have passed since last update.

はじめに

Stackdriverはもともと「AWSのモニタリング」をメインにしていたサービスです。
ですが、Googleが2014年に買収したため、「Google Stackdriver」にサービス名を変更してGCPNext16発表されました。
機能としては「リッチダッシュボード」、「アップタイムモニタリング」、「アラート」、「ログ解析」、「トレーシング」、「エラーレポート」、「プロダクションデバッグ」などがあります。
また、GCPとAWSの両方のクラウドプラットフォームを統合してモニタリングができます。

ということでAWSのリソースをモニタリングしてみます。

Stackdriverの利用開始

Stackdriverのサイトへ行き「Try the Free Beta」をクリックします。
01_stackdriver01.png

GCPの「GOOGLE STACKDRIVER」のサイトへ移動するのでここにある「コンソールへ移動」をクリックします。(というか直接こっちのサイトへアクセスしても大丈夫です。)
01_stackdriver02.png

Stackdriverを利用するにはGCPが利用できる状態にしておく必要があります。
まだの場合は「コンソールへ移動」をクリックするとGCP利用登録画面へ移動します。

GCPプロジェクトの作成

GCPのStackdriverのサービスへ移動するので、とりあえず今回は「プロジェクトの作成」をクリックします。
01_stackdriver03.png

プロジェクト名を入力して「作成」をクリックします。
01_stackdriver04.png

Create a new Stack account」にチェックして「Continue」をクリックします。
01_stackdriver05.png

Create Account」をクリックします。
01_stackdriver06.png

このまま「Continue」をクリックします。
01_stackdriver07.png
01_stackdriver08.png

Log in to your Amazon IAM console and click Roles」をクリックしてAWSコンソールを開きます。
その際に「ACCOUNT ID」と「EXTERNAL ID」をチェックしておきます。
01_stackdriver09.png

ここで一旦、Stackdriverの設定は中断してAWS側の設定を行います。

AWSロールの作成

ここではStackdriverがAWSリソース状況を取得できるようにするためのロールを作成します。

新しいロールの作成」をクリックします。
02_aws01.png

ロール名を「Stackdriver」を入力して「次のステップ」をクリックします。
02_aws02.png

クロスアカウントアクセスのロール」をチェックして「サードパーティのAWSアカウントユーザーに、アカウントへのアクセスを許可します。」を選択します。
02_aws03.png

先ほどStackdriverのコンソール画面に表示されていた「アカウントID」と「外部ID」を入力して「次のステップ」をクリックします。
02_aws04.png

ポリシーのアタッチで「ReadOnlyAccess」を選択して「次のステッップ」をクリックします。
02_aws05.png

内容を確認して問題無ければ「ロールの作成」をクリックします。
02_aws06.png

ここで「ロール ARN」をメモしておいてください。後ほど使います。
以上でAWS側の設定は完了です。Stackdriverの設定に戻ります。

モニタリングの設定

先ほどメモしたロール ARNを「Role ARN」を入力し、「Description of account」にアカウントについての説明を入力したら「Add AWS account」をクリックします。
03_stackdriver01.png

追加が確認されたら「Done」をクリックします。
03_stackdriver03.png

Launch monitoring」をクリックするとモニタリングが開始されます。
03_stackdriver04.png

最後に、レポートについて「日次」、「週次」、「受け取らない」のいずれかを選択して「Continue」をクリックしたら完了です。
03_stackdriver05.png

AWSの情報を取得するまで結構かかります。気長に待ちましょう。

確認

情報の取得が完了すると「Resources」のところにAWSで見たことある文字がずらっと表示されます。
04_stackdriver01.png

以上で無事取得が完了しました。

参考としてInstanceBlock Storage Volumeの様子を載せておきます。

■ Instances
04_stackdriver02.png

04_stackdriver05.png

■ Block Storage Volumes
04_stackdriver03.png

04_stackdriver04.png

あと、レポートはこんな感じに届きます。
05_report01.png
簡単なサマリーが表示され、「Group」のリンクをクリックするとモニター画面が開くようになっています。

おわりに

AWSの初期情報を取得するのに時間はかかりますが、思った以上に導入は簡単でした。何よりもAWS側のロールは「ReadOnlyAccess」だけで良いので安心です。

ただ、IAMロール作成時にちゃんと「ロールの作成」をクリックしてから作成が完了していない状態でStackdriverの設定に戻ってしまうとAWSリソース情報が取得できないのでクリックのし忘れに注意してください。「当たり前でしょ!」と言うと思いますが、何気に忘れてしまいそうなポイントかなと感じました。。。はい。忘れました。。。

それと、他にもエージェントを入れるとプロセスのモニタリングもできるみたいなので、そこについても試してみようと思います。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away