Amazon RDS Blue/Green 배포란?

1. 소개

Amazon RDS Blue/Green 배포안전하고 효율적인 데이터베이스 업데이트를 지원하는 기능입니다. 메이저 및 마이너 버전 업그레이드, DB 엔진 타입 변경 등 다양한 RDS 업데이트 작업 시 다운타임 최소화위험 감소를 제공합니다.
아래에서 Blue/Green 배포의 개념과 장점, 절차에 대해 자세히 알아보겠습니다.

1-1. Blue/Green 배포의 개념

  • Blue 환경: 현재 운영 중인 프로덕션 데이터베이스입니다. 사용자 트래픽이 연결된 상태로 서비스가 지속되고 있습니다.
  • Green 환경: Blue 환경과 동일한 설정을 가진 스테이징 데이터베이스입니다. 이곳에서 변경 사항을 안전하게 테스트할 수 있습니다.

1-2 Blue/Green 배포의 장점

  • 실시간 동기화
    • Blue 환경의 데이터가 Green 환경에 자동으로 동기화됩니다.
  • 안전한 테스트
    • 운영 환경(Blue)에 영향을 주지 않고, Green 환경에서 변경 사항을 검증할 수 있습니다.
  • 다운타임 최소화
    • Green 환경으로 트래픽 전환 시 1분 이내의 최소 다운타임을 보장합니다.
  • 애플리션 수정 최소화
    • 전환 후에도 기존 Endpoint를 유지하므로 애플리케이션 수정이 필요하지 않습니다.
  • 롤백 용이성
    • Green 환경에서 문제가 발생하면 기존 Blue 환경으로 손쉽게 롤백할 수 있습니다.

2. 배포 절차

Step 1: Green 환경 생성

  • Blue 환경과 동일한 설정의 새로운 RDS 인스턴스를 생성합니다.
  • 이 인스턴스는 Green 환경으로 사용됩니다.

Step 2: 데이터 동기화

  • Amazon RDS가 Blue → Green 환경으로 데이터를 자동 동기화합니다.

Step 3: 테스트

  • Green 환경에서 변경 사항을 안전하게 테스트합니다.
  • 성능 및 호환성을 검증한 후에 다음 단계로 진행합니다.

Step 4: 트래픽 전환

  • 테스트가 완료되면 트래픽을 Green 환경으로 전환합니다.
  • 전환 작업은 몇 초에서 1분 이내에 완료되며, 사용자 영향 최소화가 가능합니다.

Step 5: Blue 환경 유지 또는 삭제

  • 전환이 완료된 후에도 Blue 환경은 자동으로 삭제되지 않습니다.
  • 문제가 없을 시, 비용 최적화를 위해 Blue 환경을 수동으로 삭제합니다.

3. 사전 체크 사항

3-1. 파라미터 그룹

  • MySQL, Aurora (MySQL Compatible), MariaDB
    • binlog_format 파라미터를 ROW 또는 MIXED로 설정해야 합니다
binlog_format 파라미터
  • PostgreSQL, Aurora (PostgreSQL Compatible)
    • rds.logical_replication 파라미터를 활성화 합니다. (0 → 1)
    • synchronous_commit 파라미터를 활성화 합니다. (off → on)
rds.logical_replication 파라미터
synchronous_commit 파라미터

3-2. 옵션 그룹

  • 커스텀 옵션 그룹이 연결된 소스 데이터베이스의 경우, 메이저 버전 업그레이드 시 제한이 있을 수 있습니다.
    이와 관련된 사항은 실습(Hands-on)에서 구체적으로 다루겠습니다.

4. 고려 사항

  1. 비용
    • Blue/Green 배포 시 두 개의 데이터베이스 인스턴스가 동시에 운영됩니다.
      이에 따라 일시적으로 운영 비용이 증가할 수 있습니다.
  2. 리소스 사용량
    • 동기화 중 Green 환경의 리소스 사용량이 증가할 수 있으므로, 리소스 모니터링이 필요합니다.
  3. 모니터링
    • 전환 후에도 RDS 성능 지표를 모니터링하여 문제가 없는지 확인해야 합니다.
  4. 지원 엔진
    • Blue/Green 배포는 Aurora, MySQL, MariaDB, PostgreSQL 등 일부 엔진에서만 지원됩니다.
      사용 중인 RDS 엔진의 지원 여부를 사전에 확인하세요.

5. 마무리

Amazon RDS Blue/Green 배포를 활용하면 데이터베이스 업데이트의 리스크를 크게 줄이면서 다운타임을 최소화할 수 있습니다.
특히 중요한 운영 환경에서 안정적인 업그레이드신속한 롤백 기능을 제공하므로, 효율적인 DB 관리가 가능해집니다.
다음 글에서는 실제 예제를 통해 Blue/Green 배포를 구현하는 방법을 알아보겠습니다.

NDS는 많은 클라우드 경험을 통해 서비스 도입에 도움을 드릴 수 있습니다. 관련하여 문의 사항이나 기술 지원이 필요하신 경우 NDS Sales팀으로 연락주시길 바랍니다.