CDC를 이용한 Active-LiveStandby DB 구축 시 failover 방안

1,915 views
1,691 views

Published on

CDC를 이용하여 Active-LiveStandby DB를 구축할 경우, 기존 DB Clustering 기술에서 제공하던 것과 유사한 failover 방안이 필요하다. 몇 가지 솔루션들을 소개한다.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,915
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
25
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

CDC를 이용한 Active-LiveStandby DB 구축 시 failover 방안

  1. 1. <Insert Picture Here>DB Active-LiveStandby 환경에서 HA 역할정명훈(jerry.jeong@oracle.com)Data Integration Sales Consulting,Oracle Korea Ltd.
  2. 2. DB Active-LiveStandby 환경에서 HA 필요성 • 전제 • GoldenGate를 이용하여 DB를 Active-LiveStandby 형태로 구성하여 Application 서비스를 할 경우 DB에 대한 failover를 수행할 수 있는 HA 솔루션이 필요하다. • 일반적으로 Oracle RAC와 같은 환경에서는 Oracle Clusterware가 Service IP를 넘겨주는 HA 역할을 담당하지만, GoldenGate를 이용한 Active-LiveStandby 환경에서는 해당 역할을 하는 다른 컴포넌트가 필요하다. • 구현 방식은 여러 가지가 있으며 이 문서에서 그러한 다양한 구현 방법에 대해 기술한다. 장애 시 standby로 switch© 2012 Oracle Corporation – Proprietary and Confidential 2/ 총 페이지
  3. 3. 운영체제 Cluster/HA 기능 이용 • 운영체제 Cluster/HA 기능 • 대부분의 운영체제는 다음과 같이 Clustering 또는 High Availability 기능을 제공한다. • Oracle Solaris Cluster • Data Service for Oracle • Linux Cluster • Linux HA & Linux Heartbeat • HP/UX Service Guard • Toolkit for Oracle • IBM HACMP • HACMP SmartAssist for Oracle • Window MSCS(Microsoft Cluster Server) • 운영체제 Cluster/HA 활용 • 운영체제 솔루션은 운영 노드 장애 시, Virtual IP(또는 Service IP)를 백업 노드로 넘기는 기능을 가지고 있다. 이 기능을 이용하여 Oracle DB TNS Listner를 백업 DB쪽으로 failover 하여 운영할 수 있다. • 대부분의 솔루션은 트기 Oracle DB와 같은 즉정 서비스나 애플리케이션의 Health Check를 할 수 있는 기능이 있으며, 그것을 이용하여 일정 기준을 넘어서면 백업 노드로 failover 할 수 있다. • Active 노드에서 DB 프로세스(인스턴스) 장애 시, 재 기동을 시도하는 기능도 포함© 2012 Oracle Corporation – Proprietary and Confidential 3/ 총 페이지
  4. 4. 기타 Cluster/HA 제품 이용 • 특정 운영체제에 종속적이지 않은 Cluster/HA 솔루션 • EMC AutoStart • Legato 솔루션을 인수해서 이름을 AutoStart로 변경 • LifeKeeper • Window, Linux 지원 • 그외 기타 • Fujitsu PRIMECLUSTER, IBM Tivoli System Automation for Multiplatforms, NEC ExpressCluster, Veritas Cluster Server • 운영체제 Cluster/HA 기능과 유사하게 Oracle DB에 대한 Health Check와 Virtual IP failover 기능 제공한다.© 2012 Oracle Corporation – Proprietary and Confidential 4/ 총 페이지
  5. 5. 네트워크 장비 이용 • 네트워크 장비를 통한 DB Listener failover • F5 Big-IP LTM(Local Traffic Manager) • Oracle DB의 FAN(Fast Application Notification) 신호를 받아 능동적으로 failover • Active 노드 장애 시, DB로부터 FAN 신호를 받아 LiveStandby 노드로 전환한다. • 또는 TCP Proxy 역할을 통해, Active 노드의 TCP Listener가 응답하지 않을 경우 Active 노드를 dead로 마킹하고 Standby로 failover • TCP 패킷에 대한 Rewrite 기능이 있어 Oracle SID가 다른 경우에도 failover 가능하다. • iControl 스크립트를 이용해 DB의 Health Check 구현이 가능하다. • 기타 L4/L7 장비 • 평소에는 Active 노드에서 DB 요청 처리 • Active 노드 장비 다운이나 Listener fail로 TCP 응답이 안될 경우 기존 노드를 dead로 마킹하고 Standby로 failover • HA 솔루션에서 제공하는 Virtual IP 기능을 장비에서 제공하는 것과 유사한 효과 • Active-LiveStandby 형태로 DB를 운영할 것이므로 네트워크 장비를 Load-balancing 모드가 아닌 Failover 모드로 운영해야 한다.© 2012 Oracle Corporation – Proprietary and Confidential 5/ 총 페이지
  6. 6. DB 자체의 Connection Failover 기능 이용 • DB 자체가 가지고 있는 Connection Failover 기능을 활용하는 방법 • Oracle CTF(Connect Time Failover) • Type 4 JDBC Driver를 이용하는 경우 Connection 문자열에 Active 노드와 LiveStandby 노드의 Listener IP를 동시에 기술하여 접속하는 방법 • 평소에는 Active 노드로 접속되다가 장애 발생하면, LiveStandby 노드의 Listener로 접속되어 failover 가능 • 단, 일시적인 네트워크 문제가 발생하는 경우에도 LiveStandby에 접속될 수 있으므로 Active와 LiveStandby를 각각 Read/Write와 Read 용도로 분리하는 경우에는 위험성 있음 • Oracle TAF(Transparent Application Failover) • Type 2 JDBC Driver나 SQL*Net 클라이언트 라이브러리로 접속하는 경우 사용하는 방법 • 접속 시점에만 동작하는 CTF와 달리 접속된 이후에도 노드 간 failover를 할 수 있어 CTF에 비해 유리 • 단, SQL*Net 사용이 가능한 애플리케이션만 지원 • Oracle FAN(Fast Application Notification) • DB 노드나 인스턴스의 장애를 능동적으로 감지하여 failover를 할 수 있는 방법 • Type 4 JDBC에서도 사용 가능 • 단, 특수 API를 이용하여 구현해야 하므로 애플리케이션 수정이 필요 (또는 지원 가능한 미들웨어 사용해야 함) • 미들웨어의 Multi Data Source 기능 • 이 방법은 DB 자체의 기능은 아니지만 WebLogic 서버에서 제공 되는 Multi Data Source 기능을 이용하는 것 • Active와 LiveStandby 노드에 대한 커넥션 풀을 미리 만들어 놓고 평소에는 Active 노드의 풀을 사용하다가, 장애가 발생하면 Standby 노드의 풀을 사용하는 방법 • Multi Data Source 기능을 지원하는 미들웨어를 사용해야 함© 2012 Oracle Corporation – Proprietary and Confidential 6/ 총 페이지
  7. 7. Oracle Clusterware 이용 • Oracle Clusterware • Oracle RAC(Real Application Cluster)의 클러스터링 솔루션 • 각종 서비스에 대한 HA 기능, 즉 노드 장애 시 다른 노드로 서비스 마이그레이션 기능 제공 • Virtual IP(Service IP) 기능을 통해 TNS Listener를 백업 노드로 전환할 수 있음 • 11g에서는 SCAN IP 기능을 통해 여러 노드 간 Listener에 대한 load-balancing과 failover 지원 • Oracle RAC 필요 • 노트: 이 방법은 Oracle RAC가 필요하므로 Standalone으로 운영 되는 DB에서는 라이선스 문제로 사용할 수 없음© 2012 Oracle Corporation – Proprietary and Confidential 7/ 총 페이지
  8. 8. © 2012 Oracle Corporation – Proprietary and Confidential 8/ 총 페이지
  9. 9. © 2010 Oracle Corporation – Proprietary and Confidential 9/ 총 페이지

×