type
status
date
slug
summary
tags
category
icon
password
理論
1. AWS CloudWatch Logs
CloudWatch Logsは、AWSの各サービスからのログデータを収集し、リアルタイムで監視や分析を行うためのサービスです。複数アカウントからのログを集約する際には、ロググループとサブスクリプションフィルターを使用して、ログを特定の宛先に転送することができます。
2. Amazon Kinesis
Kinesisは、リアルタイムで大量のデータを処理・転送するために使用されるサービスです。ログデータの集約において、Kinesisは非常に有効です。特に、ログの大量インジェストと、他のシステムへのストリーミングに適しています。
- Kinesis Data Streamを使用すると、ログデータを並列に処理・転送できます。
- Kinesis Firehoseは、データをS3やRedshift、ElasticSearchなどに簡単に転送できるオプションもあります。
3. AWS Lambda
Lambdaはサーバーレスでコードを実行するサービスで、イベント駆動型でスケーラブルにデータ処理を行います。ログデータの正規化やフィルタリング、他のサービスへの転送(例えばセキュリティツールへの送信)には非常に有用です。
- Lambdaを使うことで、ログデータをリアルタイムで処理し、最終的に適切な形式で外部システムに送ることができます。
4. セキュリティとアクセス制御
ログを他のシステムに転送する際、IAMロールと適切な権限設定が必要です。各アカウントからログを集める場合、信頼されたロールを使用して、ログデータの送信を許可する必要があります。
- IAMロールを設定することで、セキュリティを確保しながら、必要なデータだけを転送することができます。
5. スケーラビリティとパフォーマンス
AWSの各サービスはスケーラブルであり、大量のデータを扱う際にも高パフォーマンスを発揮します。ログデータは特にスパイクが予想される場合が多いので、Kinesisのように動的にスケールするサービスを使用すると、負荷分散や性能の低下を避けることができます。
これらのサービスと技術を活用することで、複数アカウントからのログを効率的に集約し、処理することが可能となります。
実践
略
一問道場
問題内容
ある企業が、複数のAWSアカウントからAmazon CloudWatchログを1つの中央ログアカウントに集約する必要があります。収集されたログは作成されたAWSリージョン内にとどまる必要があります。中央ログアカウントは、ログを処理して標準的な出力形式に変換し、その後、セキュリティツールに出力ログをストリーミングしてさらに処理します。
ソリューションアーキテクトは、大量のログデータを取り込むためのソリューションを設計する必要があります。通常の営業時間外はログが少なく、通常の営業時間中に多くのログが発生します。ログソリューションは予想される負荷に合わせてスケールする必要があります。ソリューションアーキテクトは、AWS Control Tower設計を使用して複数アカウントのログ処理を行うことを決定しました。
要件を満たすためにソリューションアーキテクトが取るべき手順の組み合わせはどれですか?
(3つ選んでください)
選択肢
- A. 中央ログアカウントに、Amazon Kinesisデータストリームの宛先を作成する。
- B. 中央ログアカウントに、Amazon Simple Queue Service(Amazon SQS)キューの宛先を作成する。
- C. Amazon CloudWatch LogsがKinesisデータストリームにデータを追加する権限を付与するIAMロールを作成する。
- 信頼ポリシーを指定し、そのIAMロールに信頼ポリシーを設定する。
- 各メンバーアカウントで、各ロググループに対してKinesisデータストリームにデータを送信するサブスクリプションフィルタを作成する。
- D. Amazon CloudWatch LogsがAmazon Simple Queue Service(Amazon SQS)キューにデータを追加する権限を付与するIAMロールを作成する。
- 信頼ポリシーを指定し、そのIAMロールに信頼ポリシーを設定する。
- 各メンバーアカウントで、すべてのロググループに対してSQSキューにデータを送信する単一のサブスクリプションフィルタを作成する。
- E. 中央ログアカウントにAWS Lambda関数を作成し、Lambda関数を使ってログを標準形式に正規化し、セキュリティツールに書き込むようにプログラムする。
- F. メンバーアカウントにAWS Lambda関数を作成し、Lambda関数を使ってログを標準形式に正規化し、セキュリティツールに書き込むようにプログラムする。
解説
この問題は、AWS環境で複数のアカウントからのCloudWatchログを中央集約して処理し、スケーラブルで効率的な方法でセキュリティツールに流すソリューションを求めています。以下に各選択肢の解説を行います。
選択肢A:
中央ログアカウントに、Amazon Kinesisデータストリームの宛先を作成する。
Kinesisデータストリームは、リアルタイムでログデータを処理するために使用されるサービスです。大量のログデータを効率的に取り込み、後続の処理に適した形式に変換できるため、ログのストリーミングや集約に役立ちます。ここでKinesisを使用するのは適切です。
選択肢B:
中央ログアカウントに、Amazon Simple Queue Service(Amazon SQS)キューの宛先を作成する。
SQSはメッセージキューサービスで、非同期的にメッセージを送受信するために使用されますが、大量のログデータを効率的に処理するには、Kinesisの方が適しています。SQSはログの集約には最適ではないため、この選択肢は最適とは言えません。
選択肢C:
Amazon CloudWatch LogsがKinesisデータストリームにデータを追加する権限を付与するIAMロールを作成する。
CloudWatch LogsからKinesisデータストリームにデータを送るには、適切な権限を持つIAMロールを作成する必要があります。これにより、各メンバーアカウントからログをKinesisデータストリームに送信できるようになります。必要な権限を確保するのは、システムのセキュリティとスムーズなデータ転送に重要です。
選択肢D:
Amazon CloudWatch LogsがAmazon SQSキューにデータを追加する権限を付与するIAMロールを作成する。
SQSはメッセージの取り扱いに特化しており、ログのストリーミングにはKinesisが適しているため、SQSにデータを送る方法はあまり効率的ではありません。この選択肢は、ログデータの集約にKinesisを使用するのが最適な状況では適切ではないです。
選択肢E:
中央ログアカウントにAWS Lambda関数を作成し、Lambda関数を使ってログを標準形式に正規化し、セキュリティツールに書き込むようにプログラムする。
Lambda関数を使用して、ログデータを標準形式に変換するのは非常に有効です。Lambdaはイベント駆動型でスケーラブルなため、大量のデータを効率的に処理でき、後続のセキュリティツールにデータを提供するのに適しています。
選択肢F:
メンバーアカウントにAWS Lambda関数を作成し、Lambda関数を使ってログを標準形式に正規化し、セキュリティツールに書き込むようにプログラムする。
Lambda関数をメンバーアカウントに作成してログを処理する方法も考えられますが、中央集約型のログ処理を行うためには中央アカウントでLambdaを使う方が効率的です。メンバーアカウントで個別に処理を行うと、管理が複雑になり、全体の効率が低下する可能性があります。
結論
要件に最も適した方法は、A, C, Eの組み合わせです。
- Aは、ログデータを集約するためにKinesisを使用することを提案しています。
- Cは、CloudWatchからKinesisにログデータを送るための適切な権限を設定する方法を示しています。
- Eは、中央アカウントでLambdaを使用してログを標準化し、セキュリティツールに送信する手順です。
この組み合わせで、スケーラブルで効率的なログ収集・処理を実現でき、要件に沿った最適なソリューションとなります。
- 作者:みなみ
- 链接:https://tangly1024.com/資格勉強/177d7ae8-88e2-80f4-bf81-f0d563c60441
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章