인터넷 액세스 권한이 없는 Auto Scaling 그룹에서 EC2 인스턴스를 구성하여 CloudWatch로 지표와 로그를 전송하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 5월 21일

인터넷 액세스 권한이 없는 Amazon EC2 Auto Scaling 그룹에서 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 구성하여 Amazon CloudWatch로 로그와 지표를 전송하려면 어떻게 해야 합니까?

해결 방법

  1. Amazon EC2 인스턴스에 CloudWatch 에이전트 설치 이 인스턴스는 인터넷에 연결되어 있어야 합니다. 또는 CloudWatch 에이전트를 사용하여 이미 로그와 지표를 CloudWatch로 푸시하고 있는 Amazon EC2 인스턴스를 선택할 수 있습니다.
  2. CloudWatch 에이전트가 Amazon EC2 인스턴스의 지표 및 로그를 푸시하고 있는지 확인합니다.
  3. Auto Scaling 그룹에 대한 Amazon EC2 인스턴스의 Amazon Machine Image(AMI)를 생성합니다.
  4. 3단계에서 생성한 AMI를 사용하여 Auto Scaling 그룹에 대한 시작 템플릿을 생성합니다. 인스턴스가 지표 및 로그를 CloudWatch로 푸시하도록 하려면 시작 템플릿에 올바른 AWS Identity and Access Management(IAM) 역할을 제공합니다. 선택적으로 이 시작 템플릿에서 퍼블릭 서브넷의 Amazon EC2 인스턴스를 시작하여 CloudWatch 에이전트가 필요한 지표 및 로그를 푸시하고 있는지 확인할 수 있습니다.
  5. 프라이빗 서브넷을 호스팅하는 VPC에 CloudWatch 모니터링 및 Amazon CloudWatch Logs를 위한 인터페이스 Virtual Private Cloud(VPC) 엔드포인트를 추가합니다. 올바른 엔드포인트를 찾으려면 Amazon CloudWatch 엔드포인트 및 할당량을 참조하십시오. 자세한 내용은 나중에 나오는 "인터페이스 VPC 엔드포인트 생성 시 고려 사항"을 참조하십시오.
  6. 5단계에서 생성한 각 VPC 인터페이스 엔드포인트의 엔드포인트 정책을 업데이트합니다.
    Amazon VPC 콘솔을 엽니다.
    [엔드포인트]를 선택한 다음 인터페이스 엔드포인트를 선택합니다.
    참고: 각 VPC 인터페이스 엔드포인트에 대해 이 단계를 완료해야 합니다.
    [작업]을 선택하고 [정책 편집]을 선택합니다.
    [정책]에서 [전체 액세스]를 선택합니다.
    [저장]을 선택합니다.
  7. 4단계에서 생성한 시작 템플릿을 사용하여 Auto Scaling 그룹(프라이빗 서브넷이 활성화된 상태)을 생성합니다. CloudWatch 에이전트는 이 Auto Scaling 그룹에서 시작한 인스턴스에서 실행됩니다. 또한 에이전트는 5단계에서 생성한 VPC 인터페이스 엔드포인트를 통해 지표 및 로그를 전송합니다.

인터페이스 VPC 엔드포인트 생성 시 고려 사항

  • Auto Scaling 그룹의 AWS 리전에 해당하는 엔드포인트를 사용해야 합니다. 예를 들어 Auto Scaling 그룹이 런던 리전에 있는 경우 지표의 엔드포인트는 monitoring.eu-west-2.amazonaws.com입니다. 이 시나리오에서 로그의 엔드포인트는 logs.eu-west-2.amazonaws.com입니다.
  • [프라이빗 DNS 이름 활성화] 옵션을 활성화했는지 확인합니다. 이 옵션은 VPC에 대해 [DNS 호스트 이름 활성화] 및 [DNS 지원 활성화] 속성이 [true]로 설정된 경우에만 활성화할 수 있습니다. 이 옵션을 비활성화하면 VPC 인터페이스 엔드포인트가 서비스 엔드포인트에 매핑되지 않습니다. 따라서 인스턴스가 퍼블릭 서비스 엔드포인트에 도달할 수 없습니다. 이 옵션을 활성화하면 서비스 엔드포인트가 VPC 인터페이스 엔드포인트로 매핑되고 서비스 엔드포인트와의 통신이 프라이빗으로 이루어집니다. 기본적으로 CloudWatch 에이전트는 이 엔드포인트에 연결됩니다. 필요한 경우 에이전트 구성 파일에서 endpoint_override 파라미터를 사용하여 기본 엔드포인트를 재정의할 수 있습니다.
  • 보안 그룹에 대한 규칙이 엔드포인트 네트워크 인터페이스와 서비스와 통신하는 VPC의 리소스 간의 통신을 허용하는지 확인합니다. 로그 및 지표를 푸시하기 위한 API 호출은 HTTPS 기반 GET/POST 요청입니다. 엔드포인트 네트워크 인터페이스 보안 그룹에는 원본 IP의 HTTPS 프로토콜에 대한 인바운드 규칙이 필요합니다. 소스 IP 주소는 지표 및 로그 또는 VPC CIDR을 푸시하는 EC2 인스턴스의 IP 주소입니다.
  • 인스턴스가 Auto Scaling 그룹의 일부인 경우 에이전트 구성 파일에서 차원 중 하나를 Auto Scaling 그룹 이름으로 지정합니다. Auto Scaling 그룹의 이름을 찾기 위해 에이전트는 Amazon EC2 엔드포인트에서 인스턴스와 연결된 태그를 가져옵니다. Amazon EC2 서비스에 대한 VPC 인터페이스 엔드포인트를 추가해야 합니다. 에이전트는 Amazon EC2 인스턴스의 metadata에서 ImageId, InstanceIdInstanceType 값을 가져옵니다.

이 문서가 도움이 되었습니까?

AWS에서 개선해야 할 부분이 있습니까?


도움이 필요하십니까?