CloudWatch 에이전트와 함께 사용하기 위한 IAM 역할 및 사용자 생성
AWS 리소스에 액세스하려면 권한이 필요합니다. IAM 역할, IAM 사용자 또는 둘 다를 생성하여 CloudWatch 에이전트가 CloudWatch에 지표를 작성하는 데 필요한 권한을 부여합니다. Amazon EC2 인스턴스에서 에이전트를 사용하려면 IAM 역할을 생성해야 합니다. 온프레미스 서버에서 에이전트를 사용하려면 IAM 사용자를 생성해야 합니다.
참고
최근에 당사는 고객들에게 정책을 직접 생성하도록 요구하는 대신 Amazon에서 만든 새로운 CloudWatchAgentServerPolicy
및 CloudWatchAgentAdminPolicy
정책을 사용하여 다음과 같은 절차를 수정했습니다. 파라미터 스토어에 파일을 작성하고 파라미터 스토어에서 파일을 다운로드하는 경우 Amazon에서 생성한 정책은 이름이 AmazonCloudWatch-
로 시작하는 파일만 지원합니다. 파일 이름이 AmazonCloudWatch-
로 시작하지 않는 CloudWatch 에이전트 구성 파일이 있는 경우 이러한 정책을 사용하여 파라미터 스토어에 파일을 작성하거나 파라미터 스토어에서 파일을 다운로드할 수 없습니다.
Amazon EC2 인스턴스에서 CloudWatch 에이전트를 실행하려는 경우 다음 단계에 따라 필요한 IAM 역할을 생성합니다. 이 역할은 정보를 인스턴스에서 읽고 CloudWatch에 쓸 수 있는 권한을 제공합니다.
EC2 인스턴스에서 CloudWatch 에이전트를 실행하는 데 필요한 IAM 역할을 생성하려면
AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
왼쪽 탐색 창에서 Roles(역할)를 선택한 후 Create role(역할 생성)을 선택합니다.
신뢰할 수 있는 엔터티 유형(Trusted entity type)에서 AWS 서비스(AWS service)를 선택해야 합니다.
사용 사례(Use case)의 경우 일반 사용 사례(Common use cases)에서 EC2를 선택하고,
-
다음을 선택합니다.
-
정책 목록에서 CloudWatchAgentServerPolicy 옆의 확인란을 선택합니다. 필요한 경우 검색 상자를 사용하여 정책을 찾습니다.
(선택 사항) 에이전트가 X-Ray를 추적을 전송하려는 경우 해당 역할에 AWSXRayDaemonWriteAccess 정책도 제공해야 합니다. 이렇게 하려면 목록에서 해당 정책을 찾아 옆에 있는 확인란을 선택하세요.
-
다음을 선택합니다.
-
Role name(역할 이름)에
CloudWatchAgentServerRole
등의 역할 이름을 입력합니다. 필요한 경우 설명을 입력합니다. 그런 다음 역할 생성을 선택합니다.이제 역할이 생성되었습니다.
(선택 사항) 에이전트가 CloudWatch Logs에 로그를 전송하고 에이전트가 이러한 로그 그룹에 대한 보존 정책을 설정할 수 있도록 하려면 역할에
logs:PutRetentionPolicy
권한을 추가해야 합니다. 자세한 내용은 CloudWatch 에이전트가 로그 보존 정책을 설정하도록 허용 단원을 참조하십시오.
온프레미스 서버에서 CloudWatch 에이전트를 실행하려는 경우 다음 단계에 따라 필요한 IAM 사용자를 생성합니다.
주의
이 시나리오에서는 프로그래밍 방식 액세스 권한과 장기 보안 인증이 있는 IAM 사용자가 필요하며 이는 보안 위험을 내포합니다. 이 위험을 줄이려면 이러한 사용자에게 작업을 수행하는 데 필요한 권한만 제공하고 더 이상 필요하지 않을 경우 이러한 사용자를 제거하는 것이 좋습니다. 필요한 경우 액세스 키를 업데이트할 수 있습니다. 자세한 내용은 IAM 사용 설명서의 액세스 키 업데이트를 참조하세요.
CloudWatch 에이전트가 온프레미스 서버에서 실행되는 데 필요한 IAM 사용자를 생성하려면
AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. -
왼쪽 탐색 창에서 사용자(Users)를 선택한 후 사용자 추가(Add user)를 선택합니다.
-
새 사용자의 사용자 이름을 입력합니다.
-
액세스 키 - 프로그래밍 방식 액세스(Access key - Programmatic access)를 선택하고 다음: 권한(Next: Permissions)을 선택합니다.
-
기존 정책 직접 첨부를 선택합니다.
-
정책 목록에서 CloudWatchAgentServerPolicy 옆의 확인란을 선택합니다. 필요한 경우 검색 상자를 사용하여 정책을 찾습니다.
(선택 사항) 에이전트가 X-Ray를 추적하려는 경우 해당 역할에 AWSXRayDaemonWriteAccess 정책도 제공해야 합니다. 이렇게 하려면 목록에서 해당 정책을 찾아 옆에 있는 확인란을 선택하세요.
-
다음: 태그를 선택합니다.
필요에 따라 새 IAM 사용자에 대한 태그를 생성한 다음 다음: 검토(Next: Review)를 선택합니다.
-
올바른 정책이 나열되었는지 확인하고 사용자 생성(Create user)을 선택합니다.
-
새 사용자 이름 옆에서 표시를 선택합니다. 에이전트를 설치할 때 사용할 수 있도록 액세스 키 및 보안 키를 파일에 복사한 다음, 닫기를 선택하세요.
CloudWatch 에이전트가 로그 보존 정책을 설정하도록 허용
CloudWatch 에이전트가 로그 이벤트를 전송하는 로그 그룹에 대한 보존 정책을 설정하도록 구성할 수 있습니다. 이렇게 하면 에이전트가 사용하는 IAM 역할 또는 사용자에게 logs:PutRetentionPolicy
를 부여해야 합니다. 에이전트는 IAM 역할을 사용하여 Amazon EC2 인스턴스에서 실행하고 온프레미스 서버에는 IAM 사용자를 사용합니다.
CloudWatch 에이전트의 IAM 역할에 로그 보존 정책을 설정할 수 있는 권한 부여
AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. 왼쪽 탐색 창에서 역할을 선택합니다.
검색 상자에 CloudWatch 에이전트의 IAM 역할 이름의 시작을 입력합니다. 역할을 생성했을 때 이 이름을 선택했습니다. 이름은
CloudWatchAgentServerRole
이 될 수 있습니다.역할이 표시되면 역할의 이름을 선택합니다.
권한(Permissions) 탭에서 권한 추가(Add permissions), 인라인 정책 생성(Create inline policy)을 선택합니다.
JSON 탭을 선택하고 다음 정책을 상자에 복사하고 상자의 기본 JSON을 대체합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "logs:PutRetentionPolicy", "Resource": "*" } ] }
정책 검토를 선택합니다.
이름(Name)의 경우
CloudWatchAgentPutLogsRetention
또는 이와 비슷한 것을 입력하고 정책 생성(Create policy)을 선택합니다.
CloudWatch 에이전트의 IAM 사용자에게 로그 보존 정책을 설정할 수 있는 권한 부여
AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/
에서 IAM 콘솔을 엽니다. 왼쪽 탐색 창에서 사용자를 선택합니다.
검색 상자에 CloudWatch 에이전트의 IAM 사용자 이름의 시작을 입력합니다. 사용자를 생성했을 때 이 이름을 선택했습니다.
사용자가 표시되면 사용자의 이름을 선택합니다.
권한(Permissions) 탭에서 인라인 정책 추가(Add inline policy)를 선택합니다.
JSON 탭을 선택하고 다음 정책을 상자에 복사하고 상자의 기본 JSON을 대체합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "logs:PutRetentionPolicy", "Resource": "*" } ] }
정책 검토를 선택합니다.
이름(Name)의 경우
CloudWatchAgentPutLogsRetention
또는 이와 비슷한 것을 입력하고 정책 생성(Create policy)을 선택합니다.