오라클 19c는 오라클 11g, 12c에 이은 Long Term Support 릴리즈로 공식 기술지원 외에 새로운 기능들이 많이 추가되었습니다. (Machine Learning, Spatial & Graph functionality, EZConnect plus, multi-tenancy등) 11g와 18c는 이미 기술지원이 종료되었고 12c는 2022년 7월에 기술지원이 종료되므로 19c 업그레이드는 Extended Support에 따른 추가비용을 절감하고 최신 보안 업데이트를 받을 수 있는 방법입니다. (19c 프리미엄 기술지원은 2024년 4월까지) 참고로 18c, 21c는 Innovation Release로 통상 2년정도의 기술지원만 제공하기 때문에 잦은 업그레이드를 원치 않는 경우에는 19c가 현재로서는 가장 좋은 선택입니다.
아래는 오라클 릴리즈 및 기술지원 일정입니다.
Source: Release Schedule of Current Database Releases (Doc ID 742060.1)
19c Standard Edition의 경우에는 이전 버전에서 지원되던 RAC가 더 이상 지원되지 않기 때문에 HA 기능이 필요한 경우에는 RAC를 대신하여 SE2HA를 사용하거나 Enterprise Edition으로 업그레이드가 필요합니다. SE2HA는 10일이내는 추가 라이선스 없이도 Failover를 지원하지만 RAC 대비 기능적인 차이가 있습니다. 아래는 RAC와 SE2HA간의 비교입니다.
오라클 RAC 아키텍처
- RAC는 각노드에 Active DB를 가지며 한 노드에 장애가 있어도 또 다른 Active 인스턴스가 서비스를 제공하기 때문에 순단이 있어도 즉시 재 접속할 수 있습니다.
- SE2는 RAC를 사용하는 경우 노드당 1 Socket 라이선스 제한이 있고 (ODA 제외) 인스턴스당 16개 쓰레드 제한이 있습니다.
- 외부 어플리케이션은 두개 노드에 모두 접속할 수 있기 때문에 총 32개 쓰레드를 두 노드의 하드웨어를 통해 지원할 수 있습니다.
- 통상 각 노드에 오라클 홈이 설정되고 Database는 공유 ASM 스토리지에 위치합니다.
오라클 SE2HA 아키텍처
- Database는 Singe 인스턴스로 한번에 하나의 노드만 운영이 되므로 Active 노드에 장애가 발생하면 Passive 노드로 절체가 됩니다. 절체과정에 시간이 소요되므로 접속이 불가능한 상태가 발생할 수 있습니다.
- Socket에 대한 제한은 없지만 16개 쓰레드 제한이 있어 32개 쓰레드를 사용할 수 있는 RAC에 비해 최대 쓰레드는 절만 수준입니다.
- Passive 노드에는 10 Day Failover Rule 내에서 오라클 라이선스가 필요하지 않습니다.
가장 큰 차이점은 RAC가 Active/Active 방식인데 반해 SE2HA는 Active/Passive 방식으로 동작합니다. 따라서 SE2HA에서는 두 노드를 동시에 사용하지 못하고 장애 시 절체에 따른 시간이 소요됩니다. 오라클 라이선스정책은 보다 우수한 성능이나 고가용성이 필요하면 Enterprise Edition을 사용하라는 의미로 해석됩니다.
DR 기능의 필요성
RAC와 SE2HA는 모두 DR 기능을 대체할 수 없습니다. 공유 스토리지는 SPOF (Single Point of Failure)가 되며 물리적으로 동일 위치에서 운영되기 때문에 대응하기 어려운 시나리오가 발생합니다.
SE2HA와 같은 제한된 HA를 Dbvisit Standby와 같은 DR 솔루션으로 보완할 수 있습니다. Dbvisit DR 운영을 자동화하고 수분내 RPO/RTO를 달성할 수 있습니다. Enterprise Edition을 필요로 하는 Data Guard와 같이 저렴한 오라클 Standard Edition을 사용하면서, Standby DB를 지속적으로 유지하여 필요시 최소한의 시간내에 정상적으로 DB를 활성화 할 수 있습니다.