cloudpackエバンジェリストの吉田真吾@yoshidashingo)です。

AWS Advent Calendar 2013 の 1日目 のエントリーです。

Stackdriver は AWS 環境のモニタリングができる SaaS です。

特にWebサーバー(ApacheやNginx)などの「パフォーマンスモニタリング」が簡単にできるので便利です。

今日はそんな Stackdriver で CloudTrail のログ監視もやろうというお話です。

■Stackdriver のサインアップ

Stackdriver は14日間無料でトライアル利用ができます。

■必要情報を入力してサインアップ

申込は http://www.stackdriver.com/ から「Start 14-day free trial」を押下して進んでいきます。

必要情報を入力すればすぐに使えるようになります。

■AWSアカウントの追加

アカウントの設定画面からアカウントの追加を選択します。

画面の説明どおりに操作します。

説明は以下のとおりです。

  1. AWSのIAM画面にログインする。
  2. “Create New Role” を押下する。
  3. “Role Name” に "stackdriver" と入力してcontinueを押下する。
  4. アカウント間の接続ができる “Role for Cross-Account Access” を選択する。
  5. “Allows IAM users from a 3rd party AWS account to access this account” を選択する。
  6. 画面に記載されている stackdriver 側のアカウント情報を入力する。
  7. policy template list から "Read only access" を選択する。
  8. 続行する。
  9. "Create Role" を押下する。
  10. IAM Roleのリストから、新しく作った Stackdriver のロールを選択する。
  11. "Summary" を押下する。
  12. "Role ARN" の値をコピーして、以下に入力する。

Save したらダッシュボードで自分の環境の情報がモニタリングできるようになります。


つまりこんな仕組み↓


■CloudTrail のセットアップ

次に CloudTrail を有効化します。

2013.12.1現在、米国東海岸と西海岸しか対応してないので、今回はus-eastで有効化します。


ログ保存用のS3のバケットを新規作成、あるいは既存から選択し、SNSのトピックを作成します。


■CloudTrail ログを Stackdriver に連携

Integrating with CloudTrail の情報に基づき SNS の設定をします。


ログはS3に格納されているのに、なぜSNSが必要なの?と思われたかもしれません。

Stackdriver は CloudTrail のログを、S3のものを参照するのではなく、SNS のトピックを受信して利用します。


つまりこんな感じ↓


Stackdriver 以外 にもいくつか CloudTrail パートナーがいます。

それぞれのサービスによって S3 のログを参照するものとSNSで連携する必要のあるサービスに分かれます。

たとえば loggly はS3を直接参照します。


■SNS のトピック設定

SNS のマネジメントコンソールに移動すると、さきほど作成したSNSのトピックができています。

トピックを選択して、"Create Subscription"ボタンを押下します。

Protocolは「SQS」を選択し、EndpointにStackdriverのSQSのARNを入力します。


■さいごに確認

Stackdriver の画面に戻り、しばらくして「CloudTrail integration active」になっていればOKです。

上記画面を見ると、us-eastでインスタンスを停止、開始したときのログ&Source IP が表示されていることが分かります。


■リソース監視だけじゃなく

いかがでしたか? CloudTrail は今後「使うのが当たり前」になるサービスだと思います。

リソース監視だけでなく、改ざん検知やヒューマンエラー対策等の観点から、CloudTrail を活用して高度な監視の仕組みを回しましょう。



こちらの記事はなかの人(yoshidashingo)監修のもと掲載しています。
元記事は、こちら