MSK 브로커 로그 내보내기 점검

MSK 브로커 로그를 필요한 대상에 수집하고 실제 전달 상태를 확인하세요.

설명

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로 브로커 로그를 내보냅니다. 설정 후 로그가 대상에 도착하는지 확인하세요.

참조