본문 바로가기
개발/AWS

RDS Multi AZ 고가용성 구성 테스트

by 궁즉변 변즉통 통즉구 2022. 3. 6.
반응형

RDS의 Multi-AZ 구성과 ReadOnly-Replication 구성 실습

Muti-AZ 동작 방식

1. 현재 Master db 인스턴스의 snapshot이 생성

2. 생성된 snapshot을 이용하여 다른 AZ에 대기 인스턴스가 생성

3. 기본 인스턴스와 Standby 인스턴스 간에 동기식으로 복제되어 데이터 중복성, snapshot 및 백업 중 I/O 중단 제거, 시스템 백업 중 지연 시간 급증을 최소화

출처: https://support.bespinglobal.com/support/solutions/articles/16000038897--aws-rds-multi-az-

 

1. RDS SubnetGroup 그룹 생성

- RDS 인스턴스가 생성 될 서브넷 그룹을 생성을 위해 RDS의 '서브넷 그룹'에서 'DB 서브넷 그룹 생성' 버튼 클릭

- 서브넷 그룹 이름 입력, VPC 선택, 서브넷에 포함된 AZ선택 및 서브넷 선택 후 생성(여기서는 2개의 가용영역과 PrivateSubnet으로 구성한 서브넷을 선택 했음)

 

2. RDS Security Group(SG) 생성

- 보안그룹 InBound 3306 포트로 소스는 RDS에 접속할 EC2의 IP만으로 설정해서 생성

 

3. RDS 생성

- '데이터베이스 생성' 버튼 클릭

 

- '표준생성'으로 'MySQL' 선택

 

- 템플릿은 개발/테스트 선택(프리티어는 다중 AZ구성 안됨)하고, 식별자 입력마스터 사용자 이름과 비밀번호 설정

 

- 인스턴스와 스토리지는 일단 디폴트 그대로 둠

 

-  [가용성 및 내구성] 다중 AZ배포 첫번째 선택, VPC 및 위에서 생성한 RDS 서브넷그룹 선택, 보안그룹도 위에서 생성한 SG 선택

- 나머지는 디폴트로 두고 생성

 

- 생성 후 RDS 엔드포인트(접속URL) 확인

 

4. EC2 접속 테스트

- EC2 접속해서 mysql client 설치

sudo yum install -y mysql

 

- RDS 접속 확인

mysql -u admin -p -h my-test.c4kuppciejdw.ap-northeast-2.rds.amazonaws.com

 

5. 고가용성 테스트

- 고가용성 테스트를 위해 EC2에서 초단위 DB 쿼리 실행

while true; do mysql -h my-test.c4kuppciejdw.ap-northeast-2.rds.amazonaws.com -uadmin -p비밀번호 -e "USE mysql;SELECT USER FROM user;"; date; sleep 1; done

* 출처: https://seungjuitmemo.tistory.com/241

 

- DB인스턴스에서 '작업 > 재부팅' 실행

 

- "장애 조치로 재부팅하시겠습니까?" 체크 후 확인

 

- 약 2분정도 뒤 정상 동작 됨, DB인스턴스의 '리전 및 AZ'가 a->c로 변경 됐음 

 

6. ReadOnly Replication 생성

- 데이터베이스에서 '작업 > 읽기 전용 복제본 생성' 클릭으로 쉽게 생성 가능

 

반응형

댓글