ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • RDS 생성하기
    클래스/초급 2022. 3. 31. 18:03
    728x90

    AWS RDS

    AWS 내에 RDS라는 서비스가 있다.
    필자가 스타트업에서 근무했을 때는 DBA 같은 디비 관리자가 따로 없었다.
    왜냐하면 클라우드에서 데이터베이스를 관리할 수 있는 서비스가 존재하기 때문이다.
    예전에는 데이터베이스 관리자가 프로젝트를 할 때 꼭 필요했었다.
    데이터가 서비스의 핵심이기 때문에 중요하게 다뤄야 하고 장애가 없이 처리를 해야 하기 때문이다.
    그래서 오라클이라는 비싼 데이터베이스를 웬만하면 다 사용했지만 클라우드의 등장과 아키텍처의 변화로
    지금은 그렇지 않게 되었다.
    그렇기 때문에 세계 최고의 데이터베이스 제품을 가진 오라클도 AWS와 같이 클라우드 서비스에 공을 들이고 있다.
    서론은 여기까지 하고 바로 RDS를 사용해 보자.

    서비스 - RDS

    서비스 검색을 해서 RDS 서비스를 찾아보자.
    관리되는 관계형 데이터베이스라고 설명되어 있다.
    어려운 관계형 데이터 베이스를 클라우드에서 직접 관리해 주겠다는 것이다.

    RDS - 메인페이지

    RDS 서비스 메인 페이지이다.
    여러 가지 기능들이 있다. 이 부분은 차차 사용해보기로 하고 데이터베이스 생성 버튼을 클릭해서 바로 생성해보자.

    RDS - 생성 방식 선택

    먼저 데이터베이스 생성 방식 선택 부분이다.
    표준 생성 옵션은 사용자가 옵션들을 잘 고르는 형태이고, 손쉬운 생성은 클라우드에서 알아서 골라준다.
    웬만하면 표준 생성을 해서 옵션들을 잘 선택하고 의미도 알아보아야 한다.
    왜냐하면 옵션에 따라 과금이 달라지고, 데이터베이스에 문제가 발생했을 때 아무리 클라우드에서 관리해 준다고 해도
    옵션들이 어떤 영향을 미치는지 알고 있어야 하기 때문이다.

    RDS - 엔진옵션

    중요한 엔진 옵션 부분이다.
    대표적으로 6개의 엔진을 제공한다. 하나씩 살펴보면

    • Amazon Aurora
      AWS에서 파워풀하게 데이터베이스를 관리해주는 엔진이다.
      Mysql, PostgreSQL을 내부적으로 제공하고, 서버리스도 형태의 관리도 제공한다.
      RDS의 다른 엔진들과 다른 점이 서버리스를 제공하는 부분인데, 데이터베이스를 사용도에 따라
      서버 자원을 알아서 관리해줘서 인스턴스의 수와 사이즈 같은 부분들은 관리하지 않도록 해준다.
      하지만 단점은 편하게 제공해 주는 만큼 비용이 비싸다.
    • MySQL
      시중에서 가장 많이 사용하는 오픈소스 관계형 데이터베이스 엔진이다.

    • MariaDB
      MySQL 개발자가 만든 또 하나의 관계형 데이터베이스 엔진이다.
      성능이 MySQL에 비해 더 나아서 사용자가 증가하고 있다.

    • PostgreSQL
      MySQL과 함께 많이 사용하는 오픈소스 관계형 데이터베이스 엔진이다.

    • Oracle
      몇 년 전만 해도 전 세계에서 제일 많이 사용했던 유료 관계형 데이터베이스 제품이다.
      하지만 클라우드 시대로 넘어와서 위상이 예전보다 낮아졌다.

    • Microsoft SQL Server
      마이크로소프트에서 만든 관계형 데이터베이스이다.

    RDS - Aurora 설정

    Aurora를 선택했을 때는 그림과 같이 2개의 엔진 에디션을 선택할 수 있다.
    그리고 용량 유형을 선택하여 데이터베이스 엔진이 설치되는 인스턴스에 덜 신경을 쓸 수 있다.
    덜 신경 쓸 수 있다는 뜻은 트래픽에 따라 서버의 사이즈나 용량 조절하는 부분을 신경을 안 써도 된다는 것이다.

    RDS - 템플릿

    하지만 다른 엔진을 선택했을 때 프리티어를 제공하는 반면 아직까지 프리티어를 제공해주지 않는다.

    RDS - 엔진옵션

    만약에 다른 엔진을 선택하면 Aurora처럼 부가적으로 선택하는 부분이 없어지고,
    엔진의 버전만 선택할 수 있게 된다.

    RDS - 템플릿

    하지만 프리티어가 있기 때문에 특정 기간 동안에는 무료로 사용해 볼 수 있다.
    템플릿에서 어떤 선택을 하느냐에 따라 엔진이 설치될 인스턴스 스펙이 바뀌게 된다.

    RDS - 설정

    설정에서는 RDS 리소스의 이름과 마스터 사용자의 계정, 비밀번호를 설정해야 한다.
    최초 데이터베이스를 접속할 때 마스터 계정을 사용하기 위해서이다.

    RDS - DB 인스턴스 클래스

    디비 인스턴스 클래스를 선택해야 한다.
    템플릿의 선택에 따라 선택할 수 있는 디비 인스턴스 스펙이 달라진다.

    RDS - 스토리지

    스토리지의 스펙을 선택해야 한다.
    관계형 데이터베이스는 결국 파일에 데이터가 쌓이는 형태이기 때문에
    스토리지의 안정성이 대단히 중요하다. 그래서 스토리지 자동 조정 활성화 부분이 있다.
    자동 조정 기능을 사용하면 스토리지가 꽉 차서 디스크 때문에 에러가 발생하는 부분에 신경 쓸 필요가 없게 된다.
    데이터가 많아지면 스토리지 용량이 알아서 늘어나게 된다.

    RDS - 연결

    연결에서는 데이터베이스의 연결을 위한 설정을 해준다.
    먼저 네트워크를 위한 VPC를 설정해준다. 특정 VPC에서 관리해야 한다면 해당 VPC를 선택해주고,
    아니면 선택되어있는 그대로 기본 VPC를 선택한 상태로 놔두면 된다.
    참고로 VPC는 클라우드 상에서 관리할 수 있는 논리적 네트워크라고 생각하면 된다.
    예를 들어 인스턴스들은 1번 VPC에 포함시키고,
    데이터베이스는 2번 VPC에 포함시키고 이렇게 상황에 따라 네트워크를 설계할 수 있다.
    서브넷은 VPC내에 있는 그룹이라고 보면 된다. VPC 부분은 다른 글에서 깊이 다뤄볼 예정이기 때문에 이번 글에서는
    그냥 이런 기능이 있구나 하고 넘어가면 된다. 보안 그룹은 인스턴스에 보안 그룹을 설정하는 것과 같다.
    보안 그룹을 하나 만들고 인바운드 포트를 데이터베이스의 포트인 3306으로 만들고
    여기서 생성한 보안그룹을 선택하면 된다.
    가용 영역은 리즌에서 어떤 영역에 인스턴스를 배치할 것인가 선택하는 것이다.
    특별한 설계가 없을 경우에는 기본 설정 없음으로 선택한다.

    RDS - 데이터베이스 인증

    데이터베이스 인증 부분은 어떤 인증을 사용할 것인가 선택하는 부분이다.
    세 가지의 인증이 있지만 보편적으로 사용하는 암호인증을 선택한다.

    RDS - 월별 추정 요금

    그리고 마지막으로 월별 추정 요금을 친절하게 보여준다.
    추정 요금이 얼마 정도 나오는지 참고할 수 있다.

    여기까지 설정하고 데이터베이스 생성 버튼을 클릭하면 드디어 데이터 베이스가 생성된다.
    옵션을 잘 못 설정했더라도 몇몇 옵션들은 수정할 수 있기 때문에 너무 걱정하지 말자.
    심지어 최악은 지우고 다시 설정하면 되니까 괜찮다. 이게 클라우드의 매력이다.


    설정할 부분이 좀 많지만 서비스에서 제일 중요한 부분인 데이터베이스 부분이기 때문에
    잘 살펴보고 생성을 해야 과금 폭탄도 피하고 올바르게 사용할 수 있을 것 같다.


     

     

     

    728x90

    '클래스 > 초급' 카테고리의 다른 글

    RDS 스냅샷 사용하기  (0) 2022.04.01
    생성된 RDS 살펴보기  (0) 2022.04.01
    AWS Lightsail 이용한 간단한 서버관리  (0) 2022.03.27
    EC2 이미지 만들기  (0) 2022.03.25
    Certificate Manager 이용해서 HTTPS 통신하기  (0) 2022.03.22
Designed by Tistory.