Oracle® GoldenGate®는 클래식 아키텍처(Classic Architecture)와 오라클 골든게이트 마이크로서비스 아키텍처(OGG MA)라는 두 가지 아키텍처를 지원합니다.
클래식 아키텍처는 표준적인 extract, replicat, pump, receiver 기능을 제공하며, GGSCI(GoldenGate Software Command Interpreter)라는 명령줄 인터페이스를 통해 관리됩니다.
반면 OGG MA는 RESTful API 기반의 마이크로서비스 아키텍처로, 웹 기반 사용자 인터페이스(UI)를 통해 Oracle GoldenGate 서비스를 설치, 구성, 모니터링, 관리할 수 있습니다. OGG MA는 GoldenGate 12.3 버전에서 처음 도입되었으며, 클라우드 운영 환경을 염두에 두고 설계되었습니다.
Oracle GoldenGate 마이크로서비스의 주요 구성 요소
OGG MA를 사용하면 HTML 사용자 인터페이스만으로 데이터 복제를 손쉽게 구성하고 관리할 수 있습니다.
OGG MA는 다섯 가지 핵심 구성 요소로 이루어져 있습니다. 다음 다이어그램은 보안이 적용된 REST API 환경에서 복제 프로세스가 어떻게 동작하는지 보여줍니다.
이미지 출처: https://docs.oracle.com/goldengate/c1230/gg-winux/GGCON/img/logicalarch2.png
아래에서는 어드민 클라이언트(Admin Client)를 포함해 각 구성 요소의 역할과 책임을 자세히 살펴봅니다.
1. 서비스 매니저(Service Manager)
- 서비스 매니저는 마이크로서비스 아키텍처의 다른 서비스들을 감시하는 워치독(watchdog) 역할을 수행합니다.
- 로컬 호스트에서 하나 이상의 GoldenGate 배포(deployment)를 관리할 수 있게 해줍니다.
- 시스템 서비스로 실행되며, 배포에 대한 인벤토리 및 구성 정보를 유지하고 여러 로컬 배포를 동시에 관리할 수 있습니다.
- 서비스 매니저를 통해 인스턴스를 시작·중지하거나 배포 및 기타 서비스 정보를 조회할 수 있습니다.
2. 관리 서버(Administration Server)
- GoldenGate 배포 내에서 동작 중이거나 중단된 모든 프로세스를 감독, 관리, 모니터링합니다.
- GoldenGate 배포의 복제 구성 요소를 관리하는 중앙 제어 엔티티로 작동합니다.
- GoldenGate가 설치된 서버에 직접 접속하지 않고도 로컬
extract,replicat프로세스를 생성하고 관리할 수 있습니다. - 핵심 기능은 REST API 서비스 인터페이스로, 마이크로서비스 아키텍처의 서비스 인터페이스나 Perl, Python 클라이언트 등 HTTP/HTTPS 클라이언트라면 무엇이든 접근할 수 있습니다.
- 관리 서버를 통해 GoldenGate 프로세스를 추가·삭제·변경하거나, 구성 파일을 편집하고, 사용자를 추가하고 역할을 할당할 수 있습니다.
3. 배포 서버(Distribution Server)
- 분산 네트워크 환경에서 데이터와 명령을 전달·처리하는 네트워크 데이터 배포 에이전트 역할을 합니다.
- 여러 소스 트레일 파일(source trail)로부터 동시에 다수의 명령과 데이터 스트림을 처리할 수 있는 고성능 애플리케이션입니다.
- 클래식 아키텍처에서 소스 측에 여러 개 두었던 데이터 펌프(data pump)를 단일 인스턴스 서비스 형태의 단일 데이터 펌프로 대체합니다. 하나 이상의 트레일을 하나 이상의 대상지로 분배하며, 경량 필터링 기능만 제공합니다.
4. 수신 서버(Receiver Server)
- 모든 수신 트레일 파일을 처리하는 중앙 제어 서비스입니다.
- 배포 서버와 상호 연동되며, 원격 클래식 배포와의 호환성을 위해 클래식 아키텍처의 펌프와도 함께 작동합니다.
- 대상 측에 개별적으로 운영되던 여러 컬렉터(collector)를 단일 인스턴스 서비스로 통합합니다.
5. 성능 메트릭 서버(Performance Metrics Server)
- 메트릭 서비스를 활용해 인스턴스 배포의 성능 결과를 수집하고 저장합니다.
- 메트릭 수집 및 저장소는 관리 계층의 정보 수집과 별도로 운영됩니다.
- 모든 GoldenGate 프로세스는 성능 메트릭 서버로 메트릭을 전송합니다.
- 마이크로서비스 아키텍처와 클래식 아키텍처 양쪽에서 모두 사용할 수 있습니다.
- 다양한 메트릭 조회, 로그 확인, 프로세스 상태 확인, 시스템 사용률 모니터링 등이 가능합니다.
6. 어드민 클라이언트(Admin Client)
- 클래식 아키텍처의 GGSCI 유틸리티와 유사한 명령줄 유틸리티입니다.
- 마이크로서비스 아키텍처 서버가 공개하는 REST API를 호출하여 작업을 수행합니다.
- 프로세스 생성, 구성, 수정, 삭제에 사용됩니다.
어드민 클라이언트는 아래 표에서 볼 수 있듯이 GGSCI보다 더 많은 기능을 제공하며, 특히 분산 환경에서 활용도가 높습니다.
마이크로서비스 아키텍처의 주요 디렉터리와 변수
마이크로서비스 아키텍처는 설치와 배포 과정을 단순화할 수 있도록 디렉터리 구조가 체계적으로 설계되어 있습니다.
이 구조는 GoldenGate를 설치하는 읽기 전용 홈 디렉터리와, 사용자가 직접 생성하는 배포 전용 커스텀 디렉터리로 구성됩니다. 아래 이미지를 참고하세요.
이미지 출처: https://docs.oracle.com/goldengate/c1230/gg-winux/GGCON/img/ggcon_dt_003a_dirstruc.png
이 디렉터리들의 기본 위치는 모두 변경할 수 있으므로, 파일을 저장하고자 하는 위치에 맞게 자유롭게 커스터마이징할 수 있습니다.
OGG_VAR_HOME이 로컬 디렉터리고 OGG_HOME이 공유된 읽기 전용 원격 디렉터리인 구성이라면, 로컬 OGG_VAR_HOME을 사용하는 여러 배포가 동일한 읽기 전용 OGG_HOME을 공유할 수 있습니다. 이를 통해 스토리지 활용 효율을 높이고 배포 관리를 일원화할 수 있습니다.
결론
마이크로서비스 아키텍처는 대규모 클라우드 배포 환경에서 구성, 관리, 모니터링을 한층 간소화해 주는 새로운 서비스 기반 아키텍처입니다. 이 글에서는 OGG MA와 그 핵심 구성 요소를 살펴보았습니다. 이를 통해 온프레미스, 클라우드, 하이브리드 환경에서의 데이터 복제 방식이 한층 효율적으로 변화할 것으로 기대됩니다.
의견이나 질문이 있다면 피드백 탭을 이용해 남겨 주세요.
전문가의 관리·운영·구성 서비스로 환경 최적화하기
Rackspace의 애플리케이션 서비스 (RAS) 전문가들은 폭넓은 애플리케이션 포트폴리오 전반에서 다음과 같은 전문 및 관리형 서비스를 제공합니다.
- e커머스 및 디지털 경험(DX) 플랫폼
- 엔터프라이즈 리소스 플래닝(ERP)
- 비즈니스 인텔리전스(BI)
- Salesforce 고객 관계 관리(CRM)
- 데이터베이스
- 이메일 호스팅 및 생산성 솔루션
Rackspace가 제공하는 핵심 가치는 다음과 같습니다.
- 편견 없는 전문성: 고객의 현대화 여정을 안내하며, 즉각적인 가치를 실현하는 기능에 집중합니다.
- Fanatical Experience™: "프로세스 우선, 기술 차선(Process first. Technology second.®)" 철학과 전담 기술 지원을 결합해 종합적인 솔루션을 제공합니다.
- 타의 추종을 불허하는 포트폴리오: 풍부한 클라우드 경험을 바탕으로 올바른 클라우드에 맞는 기술을 선택하고 배포할 수 있도록 돕습니다.
- 애자일한 서비스 제공: 고객의 여정 단계에 맞춰 함께하며, 우리의 성공을 고객의 성공과 일치시킵니다.
지금 바로 채팅으로 상담을 시작해 보세요.