실습 구성도 및 목표
RDS 배포하고 웹 서버와 연동하는 것으로 고가용성 확보 위한 Multi-AZ 기능, 성능 확장 위한 Read Replica 기능 .
실습단계
- CloudFormation으로 배포
- RDS 생성하고 웹 서버와 연동
- RDS의 고가용성 위한 Multi-AZ 구성하고 동작 확인
- RDS 성능 확장을 위한 Read Replica를 구성하고 동작 확인
기본 인프라 배포


- 기본적인 서브넷 구성이랑 웹서버 , 라우팅테이블 설정, 인터넷 게이트웨이 db 보안그룹 완료한상태
RDS 생성하고 웹 서버와 연동
- RDS1 데이터 베이스 생성


- 모니터링 활성화 해제 , 기존 만든 DB 파라미터 그룹, 백업 35일 , t3micro , 개발 /테스트용 으로 다중 AZ DB인스턴스 생성
기다리는 동안 rds 2 생성해보자
- RDS2 생성
- mysql로 프리티어로 생성한다.

- 백업 보존 기간 0 설정, 자동 백업 기능 비활성화 => 단독 생성
- 생성완료

- 웹서버와 RDS 연동
- 웹서버 접속 및 RDS 엔드포인트로 변수설정

- RDS 접속

- 웹 서버의 index.php 파일 수정하여 rds2 연동

- 웹서버의 퍼블릭 IP에 접속하여 데이터 추가

- 웹서버에서 확인가능

RDS2가 중지될 경우 동작 확인하기
- 웹서버에 접속하여 데이터베이스 테이블 확인하는 반복문 수행
. /db_sh/SELECT_TABLE_RDS2.sh

- 데이터베이스에서 테이블 정보 가져오지 못하는 상황
- 단일로 동작하고있어서 중지되거나 재부팅 되면 문제 발생한다.
- 다시시작
RDS의 고가용성 위한 Multi-AZ 동작 확인
- RDS 주소를 RDS1 엔드포인트로 치환

- 테이블 EMPLOYEES 생성

- 데이터 추가

- 테이블 확인

- RDS1에서 employee 테이블 정보 반복하는 스크립트 실행하고 유지 , rds1 재부팅

재부팅하면서 Primary db는 중지고 장애조치 위해 Standby가 primary로 승격되면서 자동으로 페일 오버 수행


- 사진을 보면 ip가 변경이 되는걸 알수있음 => Primary db 변경
Read Replica 동작 확인
- 읽기 전용 복제본 생성
- 생성을 해야되는데 자동 백업 기능이 활성화 상태여야한다. 백업 보존기간 0일로 설정해서 설정 불가 , 실제 Read replica 실습은 RDS1으로 해보자

- 읽기 전용 복제본으로 들어가서 데이터 추가 쿼리 실행해보자.
