AWS Systems Manager Agent(SSM Agent)와 설치된 통합 Amazon CloudWatch Agent를 사용하는 온프레미스 서버가 있는 하이브리드 환경이 있습니다. 임시 보안 인증만 사용하도록 온프레미스 서버를 구성하려면 어떻게 해야 하나요?
해결 방법
참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생할 경우 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.
통합 CloudWatch Agent를 온프레미스 호스트에 설치하여 성능 모니터링을 개선할 수 있습니다. 구성 파일에 기록되는 AWS Identity and Accesses Management(IAM) 보안 인증을 지정하여 이 작업을 수행할 수 있습니다.
하지만 일부 사용 사례에서는 로컬 파일에 저장되지 않는 순환 보안 인증의 보안을 강화해야 할 수 있습니다.
보다 안전한 배포 시나리오에서는 SSM Agent를 통해 온프레미스 호스트가 IAM 역할을 맡을 수 있습니다. 그런 다음 통합 CloudWatch Agent가 이 IAM 역할을 사용하여 지표와 로그를 CloudWatch에 게시하도록 구성할 수 있습니다.
임시 보안 인증만 사용하도록 온프레미스 서버를 구성하려면:
1. 온프레미스 호스트를 AWS System Manager와 통합합니다.
2. AWS Managed IAM CloudWatchAgentServerPolicy를 하이브리드 환경의 IAM 서비스 역할에 연결합니다. 이제 통합된 CloudWatch Agent는 지표와 로그를 CloudWatch에 게시할 수 있는 권한을 갖게 되었습니다.
3. AWS CLI를 설치하거나 업데이트합니다.
4. IAM 역할이 온프레미스 호스트에 연결되었는지 확인합니다.
$ aws sts get-caller-identity
{
"UserId": "AROAJXQ3RVCBOTUDZ2AWM:mi-070c8d5758243078f",
"Account": "123456789012",
"Arn": "arn:aws:sts::123456789012:assumed-role/SSMServiceRole/mi-070c8d5758243078f"
}
5. 통합 CloudWatch Agent를 설치합니다.
6. common-config.toml 파일을 다음과 같이 업데이트합니다.
- SSM Agent에서 생성한 보안 인증을 가리킴
- 프록시 구성 설정(해당하는 경우)
참고: SSM Agent는 이러한 보안 인증을 30분마다 새로 고칩니다.
Linux:
/opt/aws/amazon-cloudwatch-agent/etc/common-config.toml
/etc/amazon/amazon-cloudwatch-agent/common-config.toml
[credentials]
shared_credential_profile = "default"
shared_credential_file = "/root/.aws/credentials"
Windows:
$Env:ProgramData\Amazon\AmazonCloudWatchAgent\common-config.toml
[credentials]
shared_credential_profile = "default"
shared_credential_file = "C:\\Windows\\System32\\config\\systemprofile\\.aws\\credentials"
7. 통합 CloudWatch Agent 지표를 게시할 AWS 리전을 선택합니다.
8. 5단계에서 SSM Agent가 참조한 보안 인증 파일에 리전을 추가합니다. 이 파일은 shared_credential_file에 해당합니다.
$ cat /root/.aws/config
[default]
region = "eu-west-1"
참고: 반드시 eu-west-1을 대상 지역으로 바꾸세요.
9. 호스트 운영 체제에 따라 통합 CloudWatch Agent가 SSM Agent 보안 인증 파일을 읽을 수 있도록 권한을 업데이트해야 할 수 있습니다. Windows 호스트는 두 에이전트를 모두 SYSTEM 사용자로 실행하므로 추가 조치가 필요하지 않습니다.
Linux 호스트의 경우 기본적으로 통합 CloudWatch Agent가 루트 사용자로 실행됩니다. run_as_user 옵션을 사용하여 권한이 없는 사용자로 실행되도록 통합 CloudWatch Agent를 구성할 수 있습니다. 이 옵션을 사용하는 경우 통합 CloudWatch Agent에 보안 인증 파일에 대한 액세스 권한을 부여해야 합니다.
10. (Windows만 해당) 통합 CloudWatch Agent 서비스의 시작 유형을 **Automatic(Delayed)**으로 변경합니다. 그러면 부팅 중에 SSM Agent 서비스가 실행된 후 통합 CloudWatch Agent 서비스가 시작됩니다.
관련 정보
하이브리드 환경을 위한 AWS Systems Manager 설정
온프레미스 서버에 CloudWatch Agent를 다운로드
EC2 인스턴스의 지표와 로그를 CloudWatch로 푸시하도록 통합 CloudWatch Agent를 설치하고 구성