RDS의 Multi-AZ 구성과 ReadOnly-Replication 구성 실습
Muti-AZ 동작 방식
1. 현재 Master db 인스턴스의 snapshot이 생성
2. 생성된 snapshot을 이용하여 다른 AZ에 대기 인스턴스가 생성
3. 기본 인스턴스와 Standby 인스턴스 간에 동기식으로 복제되어 데이터 중복성, snapshot 및 백업 중 I/O 중단 제거, 시스템 백업 중 지연 시간 급증을 최소화
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 생성
- 데이터베이스에서 '작업 > 읽기 전용 복제본 생성' 클릭으로 쉽게 생성 가능
'개발 > AWS' 카테고리의 다른 글
AWS ALB, AutoScalingGroup 활용해서 Blue-Green 배포 테스트 (0) | 2022.03.09 |
---|---|
AWS Certificate Manager(ACM) 인증서 생성 (2) | 2022.03.08 |
AWS API Gateway 살펴보기(HTTP API, REST API 생성) (0) | 2022.03.04 |
AWS CodePipeline 구성(CodeCommit, CodeBuild, CodeDeploy 활용) (0) | 2022.02.28 |
AWS CodeBuild로 빌드하기(SpringBoot, Maven) (0) | 2022.02.26 |
댓글