[AWS] Amazon RDS와 VPC

Jimin·2023년 7월 10일

23.06.30 연구실 세미나 발표: RDS와 VPC

Amazon RDS란?

아마존 관계형 데이터베이스 서비스

  • 관계형 데이터베이스를 제공하는 서비스
  • 가상머신 위에서 동작
  • 내부에서는 EC2 활용
  • VPC(Virtual Private Cloud, 가상 개인용 클라우드) 안에서 동작
  • 기본적으로 외부에서 접근 불가능
    • Public으로 오픈 가능
  • 서브넷과 보안 그룹 지정 필요함 (방화벽 역할 수행)

VPC 란?

  • Virtual Private Cloud, 가상 개인용 클라우드
  • 독립적인 가상의 네트워크 공간
  • 서브넷 생성, 라우팅 테이블, 네트워크 게이트웨이 구성 등 네트워크 환경을 사용자가 원하는대로 완벽하게 제어할 수 있음

  • VPC가 없다면 EC2 인스턴스들이 서로 거미줄처럼 연결되고 인터넷과 연결됩니다.
  • 이런 구조는 시스템의 복잡도를 엄청나게 끌어올릴뿐만 아니라 하나의 인스턴스만 추가되도 모든 인스턴스를 수정해야하는 불편함이 생깁니다.

  • VPC를 적용하면 위 그림과 같이 VPC별로 네트워크를 구성할 수 있고 각각의 VPC에 따라 다르게 네트워크 설정을 줄 수 있습니다.
  • 또한 각각의 VPC는 완전히 독립된 네트워크처럼 작동하게 됩니다.

VPC 구축 과정

1. VPC 생성

  • AWS 리전 A를 가정하고 예를들어 가상 네트워크 공간인 VPC를 하나 만듭니다.
  • 이때 VPC에는 사설 아이피 대역에 맞춰서 구축됩니다.
  • 여기서 사설 아이피는 일반 가정이나 회사 내 등에 할당된 네트워크의 ip 주소 즉 우리끼리 사용하는 ip주소 대역입니다.

2. 서브넷 생성

서브넷이란?

  • VPC를 잘개 쪼개는 과정
  • 서브넷을 나누는 이유는 더 많은 네트워크망을 만들기 위해서임
  • 각각의 서브넷 안에 RDS, EC2와 같은 리소스들을 위치시킬 수 있음

3. 라우팅 테이블과 라우터, 인터넷 게이트웨이

  • 네트워크 요청이 발생하면 데이터는 우선 라우터로 향합니다.
  • 서브넷a의 라우팅 테이블을 통해 VPC안의 네트워크 번위를 갖는 네트워크 요청은 로컬에서 찾도록 되어있습니다.
  • 그 외에 외부로 통하는 트래픽은 처리할 수 없음 -> 이때 인터넷 게이트웨이를 사용합니다.
  • 인터넷 게이트웨이는 VPC와 인터넷을 연결해주는 하나의 관문이라고 볼 수 있습니다.
  • 서브넷 B의 라우팅 테이블을 보면 0.0.0.0/0으로 정의되어 있습니다. - 이는 모든 트래픽에 대해 인터넷 게이트웨이A로 향하라는 뜻입니다.
  • 라우팅 테이블은 가장 먼저 목적지의 주소가 첫번째 행 주소에 매칭되는지 확인 한 후 매칭되지 않는다면 인터넷 게이트웨이A로 향하게 됩니다.

4. 네트워크 ACL(Access Control List)과 보안 그룹

  • 네트워크 ACL과 보안그룹은 방화벽과 같은 역활을 하며 인바운드 트래픽과 아웃바운드 트래픽 보안정책을 설정할 수 있습니다.
  • 먼저 Stateful한 방식으로 동작하는 보안그룹은 모든 허용을 차단하도록 기본설정 되어있으며 필요한 설정은 허용해주어야 합니다.
  • 또한 네트워크ACL과 다르게 각각의 보안 그룹별로도 별도의 트래픽을 설정할 수 있으며 서브넷에도 설정할 수 있지만 각각의 EC2인스턴스에도 적용할 수 있습니다.
  • 네트워크 ACL은 Stateless하게 작동하며 모든 트래픽을 기본설정되어 있기 때문에 불필요한 트래픽을 막도록 적용해야합니다.
  • 서브넷 단위로 적용되며 리소스별로는 설정할 수 없습니다.
  • 네트워크ACL과 보안그룹이 충돌한다면 보안그룹이 더 높은 우선순위를 갖습니다.

5. NAT(Network Address Translation, 네트워크 주소 변환) 게이트웨이

  • 서브넷이 인터넷과 통신하기 위한 아웃바운드 인스턴스

---

RDS 사용한 배포 실습

  • Postman POST 요청

0개의 댓글