AWS serverless 데이터베이스 생성
AWS serverless 데이터베이스 생성
AWS serverless 데이터베이스를 생성합니다.
본 문서에서는 serverless aurora DB 생성에 대해 설명합니다.
AWS 콘솔에 로그인한 후에 AWS 검색창에 rds를 입력하여 서비스를 검색합니다.
검색된 화면에서 RDS를 클릭합니다.
Amazon RDS화면에서 좌측의 데이터베이스를 클릭한 후 우측화면의 [데이터베이스 생성]을 클릭합니다.
아래와 같이 데이터베이스 생성화면이 화면에 나타납니다.
본 문서에서는 Aurora(MySQL Compatible) DB를 선택해서 생성하는 것을 설명합니다.
엔진 옵션
엔진 유형에서 Aurora(MySQL Compatible)을 선택합니다.
엔진 버전에서 "Serverless v2를 지원하는 버전 표시"를 클릭한 후 사용 가능한 버전에서
"Aurora MySQL 3.03.0(compatible with MySQL 8.0.26)을 선택합니다.
Serverless v2를 지원하는 다른 버전을 선택해도 됩니다.
템플릿 항목에서는 프로덕션 또는 개발/테스트를 선택합니다.
이 선택은 다른 선택사항은 동일하고 "가용성 및 내구성" 항목에 복제본을 생성 여부에 기본 선택사항이 달라집니다.
옵션선택에 크게 영향은 없으며, 관례적으로 개발/테스트용으로 생성할 경우에는 "개발/태스트"를 선택하고,
운영용으로 생성할 경우에는 "프로덕션"을 선택합니다.
설정
- DB 클러스터 식별자 : 각자가 사용하고자 하는 클러스터명을 입력
- 마스터 사용자 이름 : DB 마스터 사용자
- 마스터 암호 : DB 마스터 사용자의 암호
인스턴스 구성
- DB 인스턴스 클래스에서 서버리스를 선택합니다
- 용량 범위 : 최소 ACU와 최대 ACU를 입력합니다.
*** 1 ACU는 2GB의 메모리와 이에 해당하는 CPU, 네트워크 등의 자원을 나타내는 단위입니다.
가용성 및 내구성
운영 환경인 경우 Muti-zone에 복제본/리더 노드 생성을 선택하고,
개발/테스트인 경우 Aurora 복제본 생성하지 않음을 선택합니다.
물론 각자가 원하는 방식으로 구성할 수 있습니다.
연결
- 컴퓨팅 리소스 : EC2 컴퓨팅 리소스에 연결 안 함을 선택
- 네트워트 유형 : IPv2를 선택
- Virtual Private Cloud(VPC) : Aurora DB를 구성할 VPC를 선택
- DB 서브넷 그룹 : VPC 내에 만들어진 DB 서브넷 그룹 선택
- 퍼블릭 액세스 : "아니오"를 선택. 외부에서 직접 접근이 필요한 경우 "예"를 선택할 수 있으나, 보안상 위험
- VPC 보안 그룹 : DB접근 제어를 위해 각자가 생성한 보안 그룹 선택하거나 신규 생성
- 추가구성 : 기본 port가 3306인데 보안상 다른 포트를 설정.
데이터베이스 인증
- 데이터베이스 인증 옵션 : 암호 인증 선택
참고 : 암호 및 IAM 데이터베이스 인증을 선택하는 경우 https://hoing.io/archives/1238 참조해서 설정
모니터링
- 성능 인사이트 켜기 : 성능 개선 도우미는 데이터베이스 성능을 표시하여 분석하는데 도움이 되므로 성능 모니터링이 필요한 경우 선택
- 보존 기간 : 7일(무료), 24개월까지 보관 가능하나 비용 발생
- AWS KMS키 : aws managed key나 customer manager key 선택
- Enhanced 모니터링 활성화 : DB 인스턴스의 운영 체제를 실시간으로 모니터링할 수 있습니다. 다른 프로세스 또는 스레드에서 CPU를 사용하는 방법을 확인하려면 Enhanced Monitoring 지표가 유용합니다.
추가구성
- 초기 데이터베이스 이름 : 초기 데이터베이스 이름을 입력하면 DB 클러스터 생성 시 데이터베이스를 생성
- DB 클러스터 파라미터 그룹 : DB 클러스터에 적용될 파라미터 그룹 선택
- DB 파라미터 그룹 : DB 인스턴스에 적용될 파라미터 그룹 선택
- 옵션그룹 : 별도로 생성한 옵션그룹이 있을 경우 선택. 그렇지 않으면 default 옵션 그룹 사용
- 장애 조치 우선 순위 : 장애 조치 우선 순위는 기본 인스턴스(마스터)의 장애 시 다수의 읽기 복제본 중에서 기본 인스턴스로 승격 시킬 인스턴스에 대한 우선 순위를 지정하는 옵션 입니다. 우선 순위가 가장 높은 복제본(티어 0으로 시작)을 새로운 기본 인스턴스로 승격시킵니다.
- 백업 보존기간 : 1일에서 35일까지 보관할 수 있음. 각자의 백업정책에 따라 설정
- 암호화 : 데이터파일에 대한 암호화 설정
- AWS KMS키 : aws managed key나 customer manager key 선택
- 역추적 : 역추적을 활성화하면 DB를 특정 시점으로 되돌릴 수 있습니다.
로그 내보내기
- CloudWatch logs로 게시할 로그 유형 선택 : 원하는 로그를 선택
유지관리
- 마이너버전 자동 업그레이드 사용을 선택하면 AWS 가 마이너버전을 자동으로 업그레이드 함. 주의할 점은 다운타임이 발생한다는 것입니다. 운영DB인 경우에는 자동 업그레이드를 선택하지 않고 계획된 작업일정으로 업그레이드를 하도록 합니다.
- 유지관리 기간 : Amazon RDS가 보류 중인 수정(예: DB 인스턴스 클래스 변경) 또는 패치를 DB 인스턴스에 적용할 기간을 선택합니다. 이러한 유지 관리는 선택한 기간 내에 시작하고 완료합니다. 기간을 선택하지 않으면 Amazon RDS가 임의로 기간을 할당합니다.
삭제방지
- 데이터베이스가 실수로 삭제되는 것을 방지합니다. 이 선택을 하면 데이터베이스를 삭제할 수 없습니다. 삭제하려면 이 옵션을 변경하고 삭제해야 합니다.
위의 사항들을 입력 또는 선택완료후 [데이터베이스 생성] 버튼을 클릭합니다.
아래와 같은 화면이 나오는데
ElasticCache cluster와 RDS Proxy를 생성할지에 대한 선택 화면입니다.
필요시 생성할 수 있습니다. 본 문서에서는 추가 생성하지 않습니다. 추후 시간이 가용하면 설명 추가 예정
- ElaticCache cluster
- RDS Proxy
데이터베이스가 생성된 화면입니다. 역할을 보면 "리전 클러스터"와 "라이터 인스턴스"가 생성된 걸 볼 수 있습니다.
AWS serverless 데이터베이스 연결
AWS serverless 데이터베이스 연결할 수 있는 여러 방법에 대해 설명합니다.
1) 쿼리 편집기 : AWS 콘솔에서Data API를 통해 DB와 연결할 수 있는 방법이나, 현재(2023. 04. 18) 서울 리전에서는 제공하고 있지 않음. 쿼리 편집기를 클릭하면 아래와 같은 메시지가 발생하고 서울 리전에서 Aurora 서버리스 데이터베이스 생성 시 Data API 활성화 옵션이 보이지 않음.
2) VPC 내의 Amazon Aurora DB 클러스터에 액세스 –VPC를 통해 Amazon AuroraDB 클러스터에 액세스할 수 있습니다. 이렇게 하려면 특정 Aurora DB 클러스터에 대한 액세스를 허용하도록 VPC의 보안 그룹에서 인바운드 규칙을 편집합니다.
3) VPC 외부의 Amazon Aurora DB 클러스터에 액세스 – 외부에서 Amazon Aurora DB 클러스터에 액세스하려면 Amazon Aurora DB 클러스터의 퍼블릭 엔드포인트 주소를 사용하여 접속할 수 있습니다. 보안상의 이유로 외부에서 DB로의 액세스는 일반적으로 허용되지 않습니다.
AWS serverless 데이터베이스 장애조치(FailOver)