説明
MSKブローカーログを保存しないと、ブローカーのエラーや接続問題を後から調査しにくくなります。CloudWatch Logs、S3、Firehoseへのエクスポートは運用調査に役立ちます。
ブローカーログは、すべてのメッセージ処理やユーザー操作の完全な監査記録ではありません。MSK管理API呼び出しを記録するCloudTrailとも目的が異なります。
想定される影響
- ブローカー障害や処理遅延の原因調査に時間がかかる可能性があります。
- 必要な運用記録が保存されず、調査や保存期間の要件を満たせない場合があります。
対処方法
LoggingInfo.BrokerLogsで必要なログ宛先を有効にしてください。宛先リソースと配信権限を用意し、実際の収集を確認してください。ログ内の機密情報、アクセス権限、保存期間、費用も管理してください。
例
古いKafkaバージョンとサブネット値は例です。現在対応するバージョンとブローカータイプ、実際のサブネットに変更してください。BrokerLogGroupNameには用意済みのCloudWatchロググループ名を指定し、配信権限も設定してください。
変更前
yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: MSK Cluster with required properties.
Resources:
TestCluster5:
Type: "AWS::MSK::Cluster"
Properties:
ClusterName: ClusterWithRequiredProperties
KafkaVersion: 2.2.1
NumberOfBrokerNodes: 3
BrokerNodeGroupInfo:
InstanceType: kafka.m5.large
ClientSubnets:
- ReplaceWithSubnetId1
- ReplaceWithSubnetId2
- ReplaceWithSubnetId3
ブローカーログのエクスポートは明示されていません。他の設定と運用要件を確認する必要があります。
変更後
yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: MSK Cluster with required properties.
Resources:
TestCluster5:
Type: "AWS::MSK::Cluster"
Properties:
ClusterName: ClusterWithRequiredProperties
KafkaVersion: 2.2.1
LoggingInfo:
BrokerLogs:
CloudWatchLogs:
Enabled: true
LogGroup: !Ref BrokerLogGroupName
NumberOfBrokerNodes: 3
BrokerNodeGroupInfo:
InstanceType: kafka.m5.large
ClientSubnets:
- ReplaceWithSubnetId1
- ReplaceWithSubnetId2
- ReplaceWithSubnetId3
同じクラスターからCloudWatch Logsへブローカーログを送ります。設定後にログが宛先に届くことを確認してください.