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. 고려 사항
- 비용
- Blue/Green 배포 시 두 개의 데이터베이스 인스턴스가 동시에 운영됩니다.
이에 따라 일시적으로 운영 비용이 증가할 수 있습니다.
- Blue/Green 배포 시 두 개의 데이터베이스 인스턴스가 동시에 운영됩니다.
- 리소스 사용량
- 동기화 중 Green 환경의 리소스 사용량이 증가할 수 있으므로, 리소스 모니터링이 필요합니다.
- 모니터링
- 전환 후에도 RDS 성능 지표를 모니터링하여 문제가 없는지 확인해야 합니다.
- 지원 엔진
- Blue/Green 배포는 Aurora, MySQL, MariaDB, PostgreSQL 등 일부 엔진에서만 지원됩니다.
사용 중인 RDS 엔진의 지원 여부를 사전에 확인하세요.
- Blue/Green 배포는 Aurora, MySQL, MariaDB, PostgreSQL 등 일부 엔진에서만 지원됩니다.
5. 마무리
Amazon RDS Blue/Green 배포를 활용하면 데이터베이스 업데이트의 리스크를 크게 줄이면서 다운타임을 최소화할 수 있습니다.
특히 중요한 운영 환경에서 안정적인 업그레이드와 신속한 롤백 기능을 제공하므로, 효율적인 DB 관리가 가능해집니다.
다음 글에서는 실제 예제를 통해 Blue/Green 배포를 구현하는 방법을 알아보겠습니다.
NDS는 많은 클라우드 경험을 통해 서비스 도입에 도움을 드릴 수 있습니다. 관련하여 문의 사항이나 기술 지원이 필요하신 경우 NDS Sales팀으로 연락주시길 바랍니다.