コンソールを使用した CloudFormation テンプレートの生成
最初のフローログが S3 バケットに配信された後、CloudFormation テンプレートを生成し、そのテンプレートを使用してスタックを作成することで、Athena と統合できます。
要件
-
選択したリージョンで、AWS Lambda と Amazon Athena がサポートされている必要があります。
-
Amazon S3 バケットは、選択したリージョンに存在する必要があります。
-
フローログのログレコード形式には、実行する特定の事前定義されたクエリで使用されるフィールドを含める必要があります。
コンソールを使用してテンプレートを生成するには
-
次のいずれかを行ってください。
-
Amazon VPC コンソールを開きます。ナビゲーションペインで [お客様の VPC] をクリックして、VPCを選択します。
-
Amazon VPC コンソールを開きます。ナビゲーションペインで [サブネット] をクリックして、サブネットを選択します。
-
Amazon EC2 コンソールを開きます。ナビゲーションペインで [ネットワークインターフェイス] クリックして、ネットワークインターフェイスを選択します。
-
-
[フローログ] タブで、Amazon S3 に発行するフローログを選択し、[アクション]、[Athena 統合の生成] の順に選択します。
-
パーティションのロード頻度を指定します。[なし] を選択した場合は、過去の日付を使用して、パーティションの開始日と終了日を指定する必要があります。[毎日]、[毎週]、または [毎月] を選択した場合は、パーティションの開始日と終了日はオプションになります。開始日と終了日を指定しない場合、CloudFormation テンプレートは、定期的なスケジュールで新しいパーティションをロードする Lambda 関数を作成します。
-
生成されたテンプレート用の S3 バケット、およびクエリ結果用の S3 バケットを選択または作成します。
-
[Athena 統合を生成] を選択します
-
(オプション)成功メッセージで、CloudFormation テンプレートに指定したバケットに移動するリンクを選択し、テンプレートをカスタマイズします。
-
成功のメッセージで、[Create CloudFormation stack] (CloudFormation スタックを作成) を選択して、AWS CloudFormation コンソールで [Create Stack] (スタックの作成) ウィザードを開きます。生成された CloudFormation テンプレートの URL は、[テンプレート] セクションで指定されます。ウィザードを完了して、テンプレートで指定されているリソースを作成します。
CloudFormation テンプレートによって作成されたリソース
-
Athena データベース。データベース名は vpcflowlogsathenadatabase<flow-logs-subscription-id> です。
-
Athena のワークグループ。ワークグループ名は、<flow-log-subscription-id><partition-load-frequency><start-date><end-date>workgroup です。
-
フローログレコードに対応するパーティション化された Athena テーブル。テーブル名は、<flow-log-subscription-id><partition-load-frequency><start-date><end-date> です。
-
Athena の名前付きクエリのセット。詳細については、「事前に定義されたクエリ」を参照してください
-
指定したスケジュール (毎日、毎週、または毎月) でテーブルに新しいパーティションをロードする Lambda 関数。
-
Lambda 関数を実行するためのアクセス権限を付与する IAM ロール。