4주차 챌린지 과제 : AWS EC2와 RDS 연동하기

2022. 4. 2. 02:08·대외활동/UMC SERVER
반응형

이번 4주차 챌린지 과제는 RDS를 생성하고, 우리가 생성한 EC2 인스턴스와 RDS를 연동하는 것입니다.

본격적으로 시작하겠습니다!!!!

 

그럼 먼저 RDS란 무엇인가??

먼저 RDS는 아래 AWS 공식 페이지를 통해 알아볼 수 있었다.

https://aws.amazon.com/ko/rds/

 

데이터베이스 관리 시스템 | 관계형 RDS | Amazon Web Services

 

aws.amazon.com

공식 페이지 정의는 아래와 같다.

RDS는 "Amazon Relational Database Service(RDS)는 클라우드에서 간편하게 데이터베이스를 설치, 운영 및 확장할 수 있는 관리형 서비스 모음"이다.

쉽게 말해 클라우드에서 데이터베이스를 운영하는 것이라고 생각할 수 있겠다.

 

그럼 RDS는 어떤 상황에서 사용할까??

먼저 아래는 서버 1개당 데이터베이스를 1개 가지는 모습이다.

이러면 서버가 터지면 데이터베이스도 터질 확률이 높다.

 

서버마다 DB 1개를 가지는 모습

그래서 사람들은 여러 개의 서버가 1개의 데이터베이스를 공유하는 아키텍쳐를 떠올렸다.

여기서 사용되는 데이터베이스가 대표적으로 RDS가 있다.

다수의 서버가 1개의 DB를 공유

 

이제 간단한 RDS의 소개를 마무리했으니 EC2와 RDS를 연동해보자.

 

EC2와 RDS 연동

1. 먼저 우리가 사용할 EC2 인스턴스의 몇 가지 정보를 확인해야 한다.

우리는 EC2와 RDS를 연결할 것이므로 동일한 네트워크(VPC)에서 작업이 이루어져야한다.

따라서 VPC ID와 서브넷 ID를 확인해야 한다.

EC2 인스턴스 대시보드에서 확인

또한 해당 인스턴스의 보안 그룹 아이디도 확인해놔야 한다.

인스턴스 보안그룹 아이디 확인

그럼 이제 좌측에 보안 그룹 탭을 누르고 보안 그룹 생성을 누르자.

그럼 아래와 같은 창이 뜨는데 이름과 설명을 넣고 이전에 확인한 EC2 메인 화면에서 확인한 VPC ID를 VPC에 넣자

VPC 정보 작성

그리고 이제 아래와 같이 인바운드 규칙을 작성하자.

우리는 MySQL을 사용할 것이다. 또한 소스에는 아까 확인한 보안그룹아이디를 넣자.

인바운드 규칙 작성

이제 완료 버튼을 누르자.

 

이번에는 EC2 서비스 창에서 RDS 서비스 창으로 옮겨가자.

이후에 좌측에 서브넷 그룹을 누르자. 이후 DB 서브넷 그룹 생성 버튼을 누르면 된다.

그러면 아래와 같은 화면이 뜨는데 이전과 동일하다.

이름과 설명을 적고 아까 우리가 적은 VPC ID를 넣자.

VPC 정보 입력

이제 아래 그림처럼 서브넷을 설정한다.

본인은 선택할 수 있는 모든 서브넷을 추가했다.

서브넷 설정

이제 완료를 누른다.

 

다음은 파라미터 그룹을 생성할 차례다.

파라미터 그룹을 생성하는 이유는 한글 사용을 가능하게 하기 위함과 DB의 시간을 한국 시간으로 설정하기 위함이다.

좌측 탭에서 파라미터 그룹을 클릭하자. 이후 파라미터 그룹 생성을 누른다.

우리의 EC2 MySQL 버전은 5.7이다. 아래와 같이 작성한 후 생성을 누르자.

파라미터 그룹 생성

이제 한글 지원을 위해 몇 가지 작업이 남았다.

우리가 만든 파라미터로 들어가서 char을 검색한 후 character_set_client의 값을 utf8로 변경했다.

파라미터 수정

또한 collation_connection 값을 utf8_general_ci로 변경했다. 아래

파라미터 수정

그러면 이제 파라미터 그룹까지 완료했다. 이제 준비가 끝난 것이다.

 

그러면 이제 DB를 생성해보자.

좌측 탭에 데이터베이스를 클릭하자. 이제 데이터베이스 생성을 누르자.

필자는 아래와 같은 세팅으로 진행했다.

MySQL 생성

이제 스크롤을 내려 무료 사용을 위해 템플릿으로 프리티어를 선택한다.

템플릿 선택

그럼 이제 아래와 같이 설정 정보를 넣자.

설정 정보 입력

이제 다른 설정은 건드리지 말고 내리다가 아래 이미지와 동일한 설정이 나올 것이다.

서브넷 그룹은 우리가 위에서 작성한 그룹을 넣는다. VPC 보안 그룹도 우리가 위에서 작성한 것을 넣는다.

RDS 연결 설정

그리고 추가 구성에서 파라미터 그룹은 아까 우리가 만든 한글 파라미터 그룹을 넣는다.

한글 파라미터 그룹 입력

그리고 완료를 누르면 아래와 같이 데이터베이스가 완성되었다.

데이터베이스 완성!

 

그럼 이제 마지막 부분인 EC2와 RDS를 연동해보자

위 이미지에서 만든 데이터베이스를 클릭해보자. 그러면 아래와 같이 엔드포인트를 확인할 수 있다.  이것을 복사한다.

엔드 포인트 확인

그리고 아래와 같은 코드를 EC2 터미널에 입력한다.

mysql -u admin -p --host umc-debin-db.cg7cko9hkkgb.ap-northeast-2.rds.amazonaws.com

비밀번호만 성공적으로 넣으면  이제 EC2 터미널에서 접속할 수 있다.

성공화면은 아래와 같다!!!

(비밀번호 오류가 있어서 데이터베이스를 다시 생성했습니다. 그래서 위 명령어와 아래 명령어가 다릅니다.)

 

4주차 챌린지 과제도 이것으로 끝!!! 다음부터 본격적인 데이터베이스 파트다.

 

이상으로 포스팅을 마치겠습니다. 감사합니다!

 

참고 자료

https://developer111.tistory.com/52

https://rile1036.tistory.com/81

반응형
'대외활동/UMC SERVER' 카테고리의 다른 글
  • 6주차 공부 - API와 FrameWork
  • 5주차 실습, 과제 후기 : ERD 작성 및 SQL 쿼리 실습
  • 3주차 챌린지 과제 : HTTPS 적용하기(Ubuntu, Let's Encrypt, Certbot)
  • 3주차 실습 : EC2 인스턴스에 서버 환경 구축, 도메인과 IP 연결
Debin
Debin
공부 기록을 남기며 게시글 리팩토링을 진행하는 블로그입니다.
  • Debin
    리팩토링하는 블로그
    Debin
  • 전체
    오늘
    어제
    • 분류 전체보기
      • DB
        • DB 기초
        • MySQL
        • SQL 튜닝
      • OS
      • Network
      • Git
      • 디지털콘텐츠기획
      • 소프트웨어공학
      • 코딩테스트
        • 프로그래머스
        • 백준
        • 인프런
      • 공부 일지
      • 독서
        • 클린코드
        • 일상 속 사물이 알려주는 웹 API 디자인
        • 토비의 스프링
        • 객체지향의 사실과 오해
        • 자바 잘 읽는 법
      • 기록 및 회고
      • Cloud
        • AWS
      • 개발
        • Java
        • Spring Core
        • Spring MVC
        • Spring DB
        • Spring Boot
        • Spring Security
        • Spring Batch
        • JPA
        • Test
        • Android
      • 대외활동
        • UMC SERVER
        • 카엔프 SW 아카데미
      • 프로젝트
      • Docker
      • Gradle
      • ELK
      • 실무 이야기
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
  • 공지사항

    • 본인 깃허브입니다!
  • 인기 글

  • 태그

    데이터베이스
    mysql
    컨테이너
    자바
    스프링 부트
    spring
    운영체제
    객체지향
    프록시
    innodb
    docker
    코딩 #개발자 #노마드북클럽 #노개북
    AOP
    container
    스프링
    객체
    ORM
    SQL
    redis
    test
    도커
    토비의 스프링
    인덱스
    트랜잭션
    spring boot
    spring mvc
    AWS
    Java
    리눅스
    JPA
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
Debin
4주차 챌린지 과제 : AWS EC2와 RDS 연동하기
상단으로

티스토리툴바