type
status
date
slug
summary
tags
category
icon
password
理論

1. VPCフローのログ (VPC Flow Logs)
- VPCフローのログは、AWS VPC内のネットワークトラフィックの詳細な情報を記録します。これにより、どのインスタンスがどのIPアドレスと通信しているか、どのポートが使用されているか、トラフィックの許可/拒否のステータスなどを把握できます。
- 利点: ネットワークレベルの監視が可能で、セキュリティの監査やトラブルシューティングに役立ちます。
2. CloudWatch Logs
- CloudWatch Logsは、AWSのサービスやアプリケーションからのログデータを収集して保存するサービスです。ログのモニタリング、アラームの設定、ログの解析が可能です。
- リアルタイムログ監視や、ログの分析に使用できます。
3. Kinesis Data Firehose
- Amazon Kinesis Data Firehoseは、リアルタイムでデータを取り込み、保存、分析、処理、転送を行うサービスです。
- Splunkのような外部システムへデータをストリーム形式で送信でき、リアルタイムでの監視と分析が可能です。
- 利点: 低遅延でデータを送信でき、スケーラブルであるため、大量のログデータの取り扱いに適しています。
4. AWS Lambda
- AWS Lambdaは、サーバーレスでコードを実行するサービスです。KinesisやCloudWatch Logsと連携して、ログデータをリアルタイムで処理・変換・転送する役割を果たします。
- Lambdaを使用して、例えばログデータをフィルタリングしたり、特定の処理を追加することができます。
5. リアルタイムでのデータ転送
- リアルタイムでログデータを処理し、外部システム(例: Splunk)に転送するには、Kinesis Data Firehoseを活用する方法が最適です。これにより、低遅延でデータのストリーミングが可能となり、即座に監視やアラートが行えます。
6. Splunkとの連携
- Splunkは、データ分析と可視化に強力なツールを提供するプラットフォームです。AWSと連携して、ログデータをリアルタイムで受け取り、トラフィックの異常検出や詳細な分析を行うことができます。
- AWSのサービス(CloudWatch Logs、Kinesisなど)を使ってSplunkにデータを送信することで、監視の効率化や異常の早期検出が可能になります。
まとめ
ネットワークトラフィックの監視とログのリアルタイム処理には、VPCフローのログを使い、CloudWatch Logsでログを収集・分析し、Kinesis Data Firehoseを利用してリアルタイムでSplunkなどの外部システムにデータを送信するアーキテクチャが適しています。Lambdaを使ってデータの前処理を行うことも有効です。
実践
略
一問道場
質問 #244
トピック 1
ある企業が、オンプレミスのデータセンターとAWSのハイブリッドソリューションを開発しました。この企業はAmazon VPCとAmazon EC2インスタンスを使用しており、EC2インスタンスはアプリケーションのログをAmazon CloudWatchに送信しています。EC2インスタンスは、オンプレミスでホストされている複数のリレーショナルデータベースからデータを読み取ります。この企業は、どのEC2インスタンスがデータベースに接続されているかを、ほぼリアルタイムで監視したいと考えています。企業はすでにオンプレミスでSplunkを使用して監視ソリューションを持っています。ソリューションアーキテクトは、どのようにネットワークリングトラフィックをSplunkに送信するかを決定する必要があります。
ソリューションアーキテクトはどのように要件を満たすべきですか?
A. VPCフローのログを有効にし、CloudWatchに送信します。AWS Lambda関数を作成して、CloudWatchログを定期的にAmazon S3バケットにエクスポートします。この際、事前定義されたエクスポート機能を使用します。ACCESS_KEYとSECRET_KEY AWS認証情報を生成し、その認証情報を使用してSplunkがS3バケットからログを取得できるように設定します。
B. Amazon Kinesis Data Firehose配信ストリームを作成し、宛先としてSplunkを指定します。Kinesis Data Firehoseストリームプロセッサを使用して個別のログイベントを抽出するための事前処理AWS Lambda関数を設定します。VPCフローのログを有効にし、CloudWatchに送信します。CloudWatch Logsサブスクリプションを作成して、ログイベントをKinesis Data Firehose配信ストリームに送信します。
C. 企業に対して、データベースへのリクエストをすべてログに記録し、EC2インスタンスのIPアドレスも含めるように依頼します。CloudWatchログをAmazon S3バケットにエクスポートします。Amazon Athenaを使用して、データベース名でグループ化したログをクエリします。Athenaの結果を別のS3バケットにエクスポートします。AWS Lambda関数を呼び出して、S3バケットに新しいファイルがアップロードされるたびに、Splunkに送信します。
D. CloudWatchログをAmazon Kinesisデータストリームに送信し、Amazon Kinesis Data Analytics for SQLアプリケーションを使用します。1分のスライディングウィンドウを設定してイベントを収集します。SQLクエリを作成し、異常検出テンプレートを使用してネットワークリングトラフィックの異常をほぼリアルタイムで監視します。その結果をAmazon Kinesis Data Firehose配信ストリームに送信し、宛先としてSplunkを指定します。
解説
このシナリオでは、EC2インスタンスのネットワークリングトラフィックをリアルタイムで監視し、そのデータをSplunkに送信する方法を決定する必要があります。以下、各選択肢の解説です。
A.
VPCフローのログを有効にし、CloudWatchに送信。LambdaでS3にエクスポートし、SplunkでS3から取得する設定
- この方法は、CloudWatchログを定期的にS3にエクスポートし、そのデータをSplunkに取り込ませる方法です。ただし、ログをリアルタイムで取得するには時間がかかるため、リアルタイム監視には適していません。
- リアルタイム性が求められる場合にはあまり効果的ではありません。
B.
Kinesis Data Firehoseを使用してSplunkに送信、CloudWatch Logsからのデータをストリーム経由で処理
- この方法は、CloudWatch LogsのデータをリアルタイムでKinesis Data Firehoseに送信し、Splunkに直接送るものです。
- Kinesis Data Firehoseを利用することで、リアルタイムでログを処理し、Splunkに転送できるため、要件を満たしています。
- 最適な選択肢です。
C.
データベースリクエストをログに記録、Athenaでクエリし、結果をS3からSplunkに送信
- これはデータベースのログをCloudWatchに送信し、Athenaで解析する方法です。リアルタイム性が欠けており、データの取得や処理に時間がかかります。
- リアルタイム監視には不向きです。
D.
Kinesisデータストリームを使用し、SQLクエリでトラフィック異常を監視し、結果をSplunkに送信
- Kinesis Data AnalyticsでSQLクエリを使用して異常を監視する方法ですが、ログを処理するのに多少の遅延が発生する可能性があり、完全にリアルタイムではありません。
- リアルタイム監視には少し効果的ですが、異常検出を行うための設定が複雑です。
結論
Bが最も適切な方法です。Kinesis Data Firehoseを使用して、CloudWatchからのログデータをリアルタイムでSplunkに送信することができ、効率的かつ確実に監視要件を満たします。
- 作者:みなみ
- 链接:https://tangly1024.com/資格勉強/173d7ae8-88e2-80e6-911b-d380f1b02d6b
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章