쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

Amazon CloudWatch를 사용하여 Oracle GoldenGate 로그를 모니터링 - 권장 가이드

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon CloudWatch를 사용하여 Oracle GoldenGate 로그를 모니터링

작성자: Chithra Krishnamurthy(AWS)

요약

Oracle GoldenGate는 Oracle 데이터베이스를 위한 Amazon Relational Database Service(RDS) 간 또는 Amazon Elastic Compute Cloud(Amazon EC2)에 호스팅된 Oracle 데이터베이스 간에 실시간 복제를 제공합니다. 단방향 복제와 양방향 복제를 모두 지원합니다.

Oracle GoldenGate를 복제에 사용하는 경우 Oracle GoldenGate 프로세스가 실행 중이고 소스 및 대상 데이터베이스가 동기화되었는지 확인하세요.

이 패턴은 GoldenGate 오류 로그에 대한 Amazon CloudWatch 모니터링을 구현하는 단계와 특정 이벤트(예: STOP 또는 ABEND) 발생 시 복제를 신속하게 재개하기 위한 적절한 조치를 취할 수 있도록 알림을 보내는 경보를 설정하는 방법을 설명합니다.

사전 조건 및 제한 사항

사전 조건

  • GoldenGate는 EC2 인스턴스에 설치 및 구성되었으므로 해당 EC2 인스턴스에 CloudWatch 모니터링을 설정할 수 있습니다. 양방향 복제를 위해 AWS 리전 전체에서 GoldenGate를 모니터링하려면 GoldenGate 프로세스가 실행 중인 각 EC2 인스턴스에 CloudWatch 에이전트를 설치해야 합니다.

제한 사항

  • 이 패턴은 CloudWatch를 사용하여 GoldenGate 프로세스를 모니터링하는 방법을 설명합니다. CloudWatch는 복제 중에 발생하는 복제 지연 또는 데이터 동기화 문제를 모니터링하지 않습니다. GoldenGate 설명서에 설명된 대로 별도의 SQL 쿼리를 실행하여 복제 지연 또는 데이터 관련 오류를 모니터링해야 합니다.

제품 버전

  • 이 문서는 Linux x86-64에서 Oracle용 Oracle GoldenGate 19.1.0.0.4의 구현을 기반으로 합니다. 그러나 이 솔루션은 GoldenGate의 모든 주요 버전에 적용할 수 있습니다.

아키텍처

대상 기술 스택

  • EC2 인스턴스에 설치된 Oracle용 GoldenGate 바이너리

  • Amazon CloudWatch

  • Amazon Simple Notification Service(SNS)

대상 아키텍처

AWS의 GoldenGate 로그를 모니터링하기 위한 대상 아키텍처

도구

서비스

  • Amazon CloudWatch는 GoldenGate 오류 로그를 모니터링하는 데 이 패턴으로 사용되는 모니터링 서비스입니다.

  • Amazon SNS는 이메일 알림을 보내는 데 이 패턴으로 사용되는 메시지 알림 서비스입니다.

기타 도구

  • Oracle GoldenGate는 Amazon RDS for Oracle 데이터베이스 또는 Amazon EC2에 호스팅된 Oracle 데이터베이스에 사용할 수 있는 데이터 복제 도구입니다.

높은 수준의 구현 단계

  1. CloudWatch 에이전트를 위한 AWS Identity and Access Management(IAM) 역할을 생성합니다.

  2. IAM 역할을 GoldenGate 오류 로그가 생성되는 EC2 인스턴스에 추가합니다.

  3. EC2 인스턴스에 CloudWatch 에이전트를 설치합니다.

  4. CloudWatch 에이전트 구성 파일 구성: awscli.confawslogs.conf.

  5. CloudWatch 에이전트를 시작합니다.

  6. 로그 그룹에서 지표 필터를 생성합니다.

  7. Amazon SNS을 설정합니다.

  8. 지표 필터에 대한 경보를 생성합니다. Amazon SNS는 해당 필터가 이벤트를 포착하면 이메일 경보를 보냅니다.

자세한 지침은 다음 섹션을 참조하세요.

에픽

작업설명필요한 기술

IAM 역할을 생성합니다.

AWS 리소스에 액세스하려면 권한이 필요하므로 각 서버에서 CloudWatch 에이전트를 실행하는 데 필요한 권한을 포함하도록 IAM 역할을 생성합니다.

IAM 역할을 생성하려면:

  1. Management Console에 로그인하여 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 역할을 선택한 후 역할 생성을 선택합니다.

  3. 신뢰할 수 있는 엔터티 유형에서 서비스를 선택합니다.

  4. 사용 사례에 대해 EC2를 선택하고 다음을 선택합니다.

  5. 정책 목록에서 CloudWatchAgentServerPolicy 옆의 확인란을 선택합니다. 필요한 경우 검색 상자를 사용하여 정책을 찾습니다.

  6. 다음을 선택합니다.

  7. 역할 이름에 새 역할의 이름(예: goldengate-cw-monitoring-role 또는 자신이 선호하는 다른 이름)을 입력합니다.

  8. (선택 사항)역할 설명에 설명을 입력합니다.

  9. CloudWatchAgentServerPolicy정책 옆에 표시되는지 확인합니다.

  10. (선택 사항)이 역할에 대한 액세스를 구성, 추적 또는 제어할 태그 키-값 페어를 하나 이상 추가한 후 역할 생성을 선택합니다.

AWS 일반

1단계. CloudWatch 에이전트에 대한 IAM 역할을 생성

작업설명필요한 기술

IAM 역할을 생성합니다.

AWS 리소스에 액세스하려면 권한이 필요하므로 각 서버에서 CloudWatch 에이전트를 실행하는 데 필요한 권한을 포함하도록 IAM 역할을 생성합니다.

IAM 역할을 생성하려면:

  1. Management Console에 로그인하여 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 역할을 선택한 후 역할 생성을 선택합니다.

  3. 신뢰할 수 있는 엔터티 유형에서 서비스를 선택합니다.

  4. 사용 사례에 대해 EC2를 선택하고 다음을 선택합니다.

  5. 정책 목록에서 CloudWatchAgentServerPolicy 옆의 확인란을 선택합니다. 필요한 경우 검색 상자를 사용하여 정책을 찾습니다.

  6. 다음을 선택합니다.

  7. 역할 이름에 새 역할의 이름(예: goldengate-cw-monitoring-role 또는 자신이 선호하는 다른 이름)을 입력합니다.

  8. (선택 사항)역할 설명에 설명을 입력합니다.

  9. CloudWatchAgentServerPolicy정책 옆에 표시되는지 확인합니다.

  10. (선택 사항)이 역할에 대한 액세스를 구성, 추적 또는 제어할 태그 키-값 페어를 하나 이상 추가한 후 역할 생성을 선택합니다.

AWS 일반
작업설명필요한 기술

IAM 역할을 GoldenGate 오류 로그가 생성되는 EC2 인스턴스에 추가합니다.

GoldenGate에서 생성된 오류 로그는 CloudWatch에 채워지고 모니터링되어야 하므로, 1단계에서 생성한 IAM 역할을 GoldenGate가 실행 중인 EC2 인스턴스에 연결해야 합니다.

IAM 역할을 인스턴스에 연결하려면:

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 인스턴스를 선택한 다음 GoldenGate가 실행 중인 인스턴스를 찾습니다.

  3. 인스턴스를 선택하고 작업, 보안(, IAM 역할 수정을 선택합니다.

  4. 인스턴스에 연결할 IAM 역할을 선택한 후 저장을 선택합니다.

AWS 일반

2단계. IAM 역할을 GoldenGate EC2 인스턴스에 첨부

작업설명필요한 기술

IAM 역할을 GoldenGate 오류 로그가 생성되는 EC2 인스턴스에 추가합니다.

GoldenGate에서 생성된 오류 로그는 CloudWatch에 채워지고 모니터링되어야 하므로, 1단계에서 생성한 IAM 역할을 GoldenGate가 실행 중인 EC2 인스턴스에 연결해야 합니다.

IAM 역할을 인스턴스에 연결하려면:

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 인스턴스를 선택한 다음 GoldenGate가 실행 중인 인스턴스를 찾습니다.

  3. 인스턴스를 선택하고 작업, 보안(, IAM 역할 수정을 선택합니다.

  4. 인스턴스에 연결할 IAM 역할을 선택한 후 저장을 선택합니다.

AWS 일반
작업설명필요한 기술

GoldenGate EC2 인스턴스에 CloudWatch 에이전트를 설치합니다.

에이전트를 설치하려면 다음 명령을 실행합니다.

sudo yum install -y awslogs
AWS 일반

에이전트 구성 파일을 편집합니다.

  1. 다음 명령을 실행합니다.

    sudo su -
  2. 필요에 따라 이 파일을 편집하여 AWS 리전을 업데이트하세요.

    cat /etc/awslogs/conf [plugins] cwlogs = cwlogs [default] region = us-east-1
  3. /etc/awslogs/awslogs.conf 파일을 편집하여 파일 이름, 로그 그룹 이름 및 날짜/시간 형식을 업데이트하세요. ggserror.log의 날짜 형식과 일치하도록 날짜/시간을 지정해야 합니다. 그렇지 않으면 로그 스트림이 CloudWatch로 전달되지 않습니다. 예시:

    datetime_format = %Y-%m-%dT%H:%M:%S%z file = /u03/oracle/oragg/ggserr.log log_group_name = goldengate_monitor
AWS 일반

CloudWatch 에이전트를 시작합니다.

에이전트를 시작하려면 다음 명령을 실행합니다.

$ sudo service awslogsd start

에이전트를 시작한 후 CloudWatch 콘솔에서 로그 그룹을 볼 수 있습니다. 로그 스트림에 파일 내용이 포함되어 있습니다.

AWS 일반

3~5단계. 기존 EC2 인스턴스에 CloudWatch Logs 에이전트를 설치 및 구성

작업설명필요한 기술

GoldenGate EC2 인스턴스에 CloudWatch 에이전트를 설치합니다.

에이전트를 설치하려면 다음 명령을 실행합니다.

sudo yum install -y awslogs
AWS 일반

에이전트 구성 파일을 편집합니다.

  1. 다음 명령을 실행합니다.

    sudo su -
  2. 필요에 따라 이 파일을 편집하여 AWS 리전을 업데이트하세요.

    cat /etc/awslogs/conf [plugins] cwlogs = cwlogs [default] region = us-east-1
  3. /etc/awslogs/awslogs.conf 파일을 편집하여 파일 이름, 로그 그룹 이름 및 날짜/시간 형식을 업데이트하세요. ggserror.log의 날짜 형식과 일치하도록 날짜/시간을 지정해야 합니다. 그렇지 않으면 로그 스트림이 CloudWatch로 전달되지 않습니다. 예시:

    datetime_format = %Y-%m-%dT%H:%M:%S%z file = /u03/oracle/oragg/ggserr.log log_group_name = goldengate_monitor
AWS 일반

CloudWatch 에이전트를 시작합니다.

에이전트를 시작하려면 다음 명령을 실행합니다.

$ sudo service awslogsd start

에이전트를 시작한 후 CloudWatch 콘솔에서 로그 그룹을 볼 수 있습니다. 로그 스트림에 파일 내용이 포함되어 있습니다.

AWS 일반
작업설명필요한 기술

ABEND 및 STOPTED 키워드에 대한 지표 필터를 생성하세요.

로그 그룹에 대한 지표 필터를 생성하면 필터가 오류 로그를 식별할 때마다 경보가 시작되고 Amazon SNS 구성을 기반으로 이메일 알림이 전송됩니다.

지표 필터를 생성하려면:

  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 로그 그룹의 이름을 선택합니다.

  3. 작업을 선택한 후 지표 필터 생성을 선택합니다.

  4. 필터 패턴의 경우 ABEND와 같은 패턴을 지정하세요.

  5. 다음을 선택하고 지표 필터의 이름을 입력합니다.

  6. 지표 세부 정보에서 지표 네임스페이스에 지표가 게시될 CloudWatch 네임스페이스의 이름을 입력합니다. 네임스페이스가 아직 없는 경우 새로 생성이 선택되는지 확인하세요.

  7. 지표 필터가 필터에 포함된 키워드의 발생을 계산하는 경우 지표 값1을 입력합니다.

  8. 단위없음으로 설정합니다.

  9. 지표 필터 생성을 선택합니다. 생성한 지표 필터를 탐색 창에서 찾을 수 있습니다.

  10. STOPPED 패턴에 대한 또 다른 지표 필터를 생성합니다. 한 로그 그룹 내에서 여러 지표 필터를 만들고 개별적으로 경보를 설정할 수 있습니다.

CloudWatch

6단계. 로그 그룹에서 지표 필터를 생성

작업설명필요한 기술

ABEND 및 STOPTED 키워드에 대한 지표 필터를 생성하세요.

로그 그룹에 대한 지표 필터를 생성하면 필터가 오류 로그를 식별할 때마다 경보가 시작되고 Amazon SNS 구성을 기반으로 이메일 알림이 전송됩니다.

지표 필터를 생성하려면:

  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 로그 그룹의 이름을 선택합니다.

  3. 작업을 선택한 후 지표 필터 생성을 선택합니다.

  4. 필터 패턴의 경우 ABEND와 같은 패턴을 지정하세요.

  5. 다음을 선택하고 지표 필터의 이름을 입력합니다.

  6. 지표 세부 정보에서 지표 네임스페이스에 지표가 게시될 CloudWatch 네임스페이스의 이름을 입력합니다. 네임스페이스가 아직 없는 경우 새로 생성이 선택되는지 확인하세요.

  7. 지표 필터가 필터에 포함된 키워드의 발생을 계산하는 경우 지표 값1을 입력합니다.

  8. 단위없음으로 설정합니다.

  9. 지표 필터 생성을 선택합니다. 생성한 지표 필터를 탐색 창에서 찾을 수 있습니다.

  10. STOPPED 패턴에 대한 또 다른 지표 필터를 생성합니다. 한 로그 그룹 내에서 여러 지표 필터를 만들고 개별적으로 경보를 설정할 수 있습니다.

CloudWatch
작업설명필요한 기술

SNS 주제를 생성합니다.

이 단계에서는 지표 필터에 대한 경보를 생성하도록 Amazon SNS를 구성합니다.

SNS 주제를 생성하려면:

  1. https://console.aws.amazon.com/sns/home에서 Amazon SNS 콘솔에 로그인합니다.

  2. 주제 생성에서 goldengate-alert로 주제의 이름을 입력한 다음, 다음 단계를 선택합니다.

  3. 유형에서 표준을 선택합니다.

  4. 양식의 끝으로 스크롤하고 주제 생성을 선택합니다. 콘솔에서 새 주제의 세부 정보 페이지가 열립니다.

Amazon SNS

구독을 생성합니다.

주제 구독을 생성하려면:

  1. 왼쪽의 탐색 창에서 구독을 선택합니다.

  2. 구독 페이지에서 구독 생성을 선택합니다.

  3. 구독 생성 페이지에서 주제 ARN 필드를 선택하여 에서 주제 목록을 확인합니다.

  4. 이전 단계에서 생성한 주제를 선택합니다.

  5. 프로토콜에서 이메일을 선택합니다.

  6. 엔드포인트에 알림을 받는 데 사용할 수 있는 이메일 주소를 입력합니다.

  7. 구독 생성을 선택합니다. 콘솔에서 새 구독의 세부 정보 페이지를 엽니다.

  8. 이메일 받은 편지함을 확인하고 AWS 알림의 이메일에서 구독 확인을 선택합니다.

Amazon SNS가 웹 브라우저를 열고 구독 ID와 함께 구독 확인을 표시합니다.

Amazon SNS

7단계. Amazon SNS 설정

작업설명필요한 기술

SNS 주제를 생성합니다.

이 단계에서는 지표 필터에 대한 경보를 생성하도록 Amazon SNS를 구성합니다.

SNS 주제를 생성하려면:

  1. https://console.aws.amazon.com/sns/home에서 Amazon SNS 콘솔에 로그인합니다.

  2. 주제 생성에서 goldengate-alert로 주제의 이름을 입력한 다음, 다음 단계를 선택합니다.

  3. 유형에서 표준을 선택합니다.

  4. 양식의 끝으로 스크롤하고 주제 생성을 선택합니다. 콘솔에서 새 주제의 세부 정보 페이지가 열립니다.

Amazon SNS

구독을 생성합니다.

주제 구독을 생성하려면:

  1. 왼쪽의 탐색 창에서 구독을 선택합니다.

  2. 구독 페이지에서 구독 생성을 선택합니다.

  3. 구독 생성 페이지에서 주제 ARN 필드를 선택하여 에서 주제 목록을 확인합니다.

  4. 이전 단계에서 생성한 주제를 선택합니다.

  5. 프로토콜에서 이메일을 선택합니다.

  6. 엔드포인트에 알림을 받는 데 사용할 수 있는 이메일 주소를 입력합니다.

  7. 구독 생성을 선택합니다. 콘솔에서 새 구독의 세부 정보 페이지를 엽니다.

  8. 이메일 받은 편지함을 확인하고 AWS 알림의 이메일에서 구독 확인을 선택합니다.

Amazon SNS가 웹 브라우저를 열고 구독 ID와 함께 구독 확인을 표시합니다.

Amazon SNS
작업설명필요한 기술

SNS 주제에 대한 경보를 생성하세요.

로그 그룹 지표 필터를 기반으로 경보 생성하려면:

  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 로그를 선택한 다음, 로그 그룹을 선택합니다.

  3. 지표 필터가 포함된 로그 그룹을 선택합니다.

  4. 지표 필터를 선택합니다.

  5. 지표 필터 탭에서 경보의 기반으로 사용할 지표 필터의 확인란을 선택합니다.

  6. 경보 생성을 선택하세요.

  7. 조건의 경우 각 섹션에서 다음을 지정합니다.

    • 임계값 유형에서 정적을 선택합니다.

    • <metric_name>이 . . .과 같을 때마다의 경우 더 큼을 선택합니다.

    • …보다에는 0을 지정하세요.

  8. Next(다음)를 선택합니다.

  9. 알림에서:

    • 경보 상태 트리거에서 경보를 선택합니다.

    • 다음 주소로 알림 전송에서 기존 SNS 주제를 선택합니다.

    • 이메일 상자에서 이전 단계에서 생성한 Amazon SNS 주제를 선택합니다.

  10. Next(다음)를 선택합니다.

  11. 이름 및 설명에서, 경보에 대한 이름과 설명을 입력하세요.

    참고

    설명의 경우 알림 이메일이 설명되도록 인스턴스 이름을 지정할 수 있습니다.

  12. 미리 보기 및 생성에서 구성이 올바른지 확인한 다음 경보 생성을 선택합니다.

이 단계를 완료하고 나면 모니터링 중인 GoldenGate 오류 로그 파일(ggserr.log)에서 이러한 패턴이 탐지될 때마다 이메일 알림을 받게 됩니다.

CloudWatch

8단계. 경보를 생성하여 지표 필터에 대한 알림을 전송

작업설명필요한 기술

SNS 주제에 대한 경보를 생성하세요.

로그 그룹 지표 필터를 기반으로 경보 생성하려면:

  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 로그를 선택한 다음, 로그 그룹을 선택합니다.

  3. 지표 필터가 포함된 로그 그룹을 선택합니다.

  4. 지표 필터를 선택합니다.

  5. 지표 필터 탭에서 경보의 기반으로 사용할 지표 필터의 확인란을 선택합니다.

  6. 경보 생성을 선택하세요.

  7. 조건의 경우 각 섹션에서 다음을 지정합니다.

    • 임계값 유형에서 정적을 선택합니다.

    • <metric_name>이 . . .과 같을 때마다의 경우 더 큼을 선택합니다.

    • …보다에는 0을 지정하세요.

  8. Next(다음)를 선택합니다.

  9. 알림에서:

    • 경보 상태 트리거에서 경보를 선택합니다.

    • 다음 주소로 알림 전송에서 기존 SNS 주제를 선택합니다.

    • 이메일 상자에서 이전 단계에서 생성한 Amazon SNS 주제를 선택합니다.

  10. Next(다음)를 선택합니다.

  11. 이름 및 설명에서, 경보에 대한 이름과 설명을 입력하세요.

    참고

    설명의 경우 알림 이메일이 설명되도록 인스턴스 이름을 지정할 수 있습니다.

  12. 미리 보기 및 생성에서 구성이 올바른지 확인한 다음 경보 생성을 선택합니다.

이 단계를 완료하고 나면 모니터링 중인 GoldenGate 오류 로그 파일(ggserr.log)에서 이러한 패턴이 탐지될 때마다 이메일 알림을 받게 됩니다.

CloudWatch

문제 해결

문제Solution

GoldenGate 오류 로그의 로그 스트림은 CloudWatch로 유입되지 않습니다.

/etc/awslogs/awslogs.conf 파일을 확인하여 파일 이름, 로그 그룹 이름 및 날짜/시간 형식을 확인하세요. ggserror.log의 날짜 형식과 일치하도록 날짜/시간을 지정해야 합니다. 그렇지 않으면 로그 스트림이 CloudWatch로 유입되지 않습니다.

관련 리소스

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.