CloudWatch Logs의 로그 데이터를 교차 리전 및 교차 계정의 Kinesis 데이터 스트림으로 스트리밍하려면 어떻게 해야 합니까?

2분 분량
0

Amazon CloudWatch Logs의 로그 데이터를 다른 AWS 리전에 있는 다른 AWS 계정의 Amazon Kinesis 데이터 스트림으로 보내야 합니다. 어떻게 해야 합니까?

해결 방법

AWS 명령줄 인터페이스(AWS CLI) 명령을 실행할 때 오류가 발생할 경우 AWS CLI의 최신 버전을 사용하고 있는지 확인하세요.

중요: CloudWatch 로그 이벤트를 다른 AWS 계정과 리전의 Kinesis 데이터 스트림으로 전송하려면 AWS 리전을 지정하면서 구독으로 계정 간 로그 데이터 공유를 설정하세요.

이 예시에서는 us-east-1 리전의 CloudWatch Logs가 us-west-2에 있는 다른 AWS 사용자의 Kinesis 데이터 스트림으로 전송됩니다.

1.    AWS Identity and Access Management(IAM) 역할 및 신뢰 정책을 사용하여 데이터 수신자 계정의 Kinesis에 대상 데이터 스트림을 생성합니다.

create-stream 명령을 사용할 때 --region을 지정하여 데이터 스트림을 생성합니다. 예를 들어 이 명령은 us-west-2YourStreamName 데이터 스트림을 생성합니다.

>aws kinesis create-stream --stream-name "YourStreamName" --shard-count 1 --region us-west-2

describe-stream 명령을 사용할 때 --region을 지정하고 StreamDescription.StreamStatus 속성을 확인합니다. 예를 들어 이 명령은 us-west-2에서 YourStreamName 스트림을 확인합니다.

>aws kinesis describe-stream --stream-name "YourStreamName" --region us-west-2

put-destination 명령을 사용하여 CloudWatch Logs 대상을 생성할 때 --role-arn--region을 소스 CloudWatch 로그와 동일한 AWS 리전으로 설정합니다. 예를 들어 이 명령은 us-east-1의 수신자 계정(222222222222)에 로그 대상을 생성합니다.

>aws logs put-destination \
    --destination-name "testDestination" \
    --target-arn "arn:aws:kinesis:us-west-2:222222222222:stream/YourStreamName" \  
    --role-arn "arn:aws:iam::222222222222:role/YourIAMRoleName" --region us-east-1

2.    계정에서 구독 필터를 생성합니다.

3.    (선택 사항) 데이터 스트림이 로그 이벤트 흐름을 검증하여 작동하는지 확인합니다.


관련 정보

역할 용어 및 개념(IAM)

AWS 공식
AWS 공식업데이트됨 2년 전