메뉴
Amazon Relational Database Service
사용 설명서 (API Version 2014-10-31)

자습: Amazon RDS DB 인스턴스에 사용할 Amazon VPC 생성

일반 시나리오에서는 Amazon VPC에 동일한 VPC에서 실행 중인 웹 서버와 데이터를 공유하는 Amazon RDS DB 인스턴스가 포함됩니다. 이 자습에서는 이 시나리오를 위한 VPC를 생성합니다.

다음 다이어그램은 이 시나리오를 보여 줍니다. 다른 시나리오에 대한 자세한 내용은 VPC에서 DB 인스턴스에 액세스하는 시나리오 단원을 참조하십시오.

 VPC 및 EC2 보안 그룹 시나리오

공용 인터넷이 아닌 웹 서버에서만 Amazon RDS DB 인스턴스를 사용할 수 있어야 하므로 퍼블릭 및 프라이빗 서브넷이 모두 있는 VPC를 생성합니다. 퍼블릭 서브넷에서 웹 서버를 호스팅하므로 웹 서버에서 퍼블릭 인터넷에 액세스할 수 있습니다. Amazon RDS DB 인스턴스는 프라이빗 서브넷에서 호스팅됩니다. 동일한 VPC에서 호스팅되므로 웹 서버에서는 Amazon RDS DB 인스턴스에 연결할 수 있지만, 퍼블릭 인터넷에서는 Amazon RDS DB 인스턴스에 액세스할 수 없어 보다 강화된 보안이 가능합니다.

프라이빗 서브넷과 퍼블릭 서브넷을 포함하는 VPC 생성

다음은 퍼블릭 서브넷과 프라이빗 서브넷을 모두 포함하는 VPC를 생성하는 절차입니다.

VPC 및 서브넷을 생성하는 방법

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. AWS Management Console의 오른쪽 상단 모서리에서 VPC를 생성할 리전을 선택합니다. 이 예에서는 미국 서부(오레곤) 리전을 사용합니다.

  3. 왼쪽 상단 모서리에서 [VPC Dashboard]를 선택합니다. VPC 생성을 시작하려면 [Start VPC Wizard]를 선택합니다.

  4. [Step 1: Select a VPC Configuration] 페이지에서 [VPC with Public and Private Subnets]를 선택한 후 [Select]를 선택합니다.

  5. [Step 2: VPC with Public and Private Subnets] 페이지에서 다음 값을 설정합니다.

    • IPv4 CIDR block: 10.0.0.0/16

    • IPv6 CIDR block: No IPv6 CIDR Block

    • VPC name: tutorial-vpc

    • Public subnet's IPv4 CIDR: 10.0.0.0/24

    • 가용 영역: us-west-2a

    • Public subnet name: Tutorial public

    • Private subnet's IPv4 CIDR: 10.0.1.0/24

    • 가용 영역: us-west-2a

    • Private subnet name: Tutorial Private 1

    • 인스턴스 유형: t2.micro

      중요

      콘솔에 [Instance type] 상자가 표시되지 않으면 [Use a NAT instance instead]를 클릭합니다. 이 링크는 오른쪽에 있습니다.

    • Key pair name: No key pair

    • Service endpoints: Skip this field.

    • Enable DNS hostnames: Yes

    • Hardware tenancy: Default

  6. 작업을 마쳤으면 [Create VPC]를 선택합니다.

추가 서브넷 생성

RDS DB 인스턴스를 VPC에서 사용하기 위한 Amazon RDS DB 서브넷 그룹을 만들려면 두 개의 프라이빗 서브넷 또는 두 개의 퍼블릭 서브넷이 있어야 합니다. 이 자습의 RDS DB 인스턴스는 프라이빗이므로 두 번째 프라이빗 서브넷을 VPC에 추가합니다.

서브넷을 추가로 생성하는 방법

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 두 번째 프라이빗 서브넷을 VPC에 추가하려면 VPC 대시보드를 선택한 후 [Subnets]과 [Create Subnet]을 차례대로 선택합니다.

  3. [Create Subnet] 페이지에서 다음 값을 설정합니다.

    • Name tag: Tutorial private 2

    • VPC: 이전 단계에서 생성한 VPC를 선택합니다(예: vpc-f1b76594 (10.0.0.0/16) | tutorial-vpc).

    • 가용 영역: us-west-2b

      참고

      첫 번째 프라이빗 서브넷에 대해 선택한 것과 다른 가용 영역을 선택합니다.

    • IPv4 CIDR block: 10.0.2.0/24

  4. 작업을 마쳤으면 [Yes, Create]를 선택합니다.

  5. 두 번째로 생성한 프라이빗 서브넷이 첫 번째 프라이빗 서브넷과 동일한 라우팅 테이블을 사용하는지 확인하려면 [VPC Dashboard]를 선택하고 [Subnets]를 선택한 다음 VPC에 대해 생성한 첫 번째 프라이빗 서브넷인 Tutorial private 1을 선택합니다.

  6. 서브넷 목록 아래에서 [Route Table] 탭을 선택하고 [Route Table]의 값(예: rtb-98b613fd)을 기록합니다.

  7. 서브넷 목록에서 두 번째 프라이빗 서브넷 Tutorial private 2를 선택하고 [Route Table] 탭을 선택합니다.

  8. 현재 라우팅 테이블이 첫 번째 프라이빗 서브넷에 사용한 라우팅 테이블과 동일하지 않은 경우 [Edit]을 선택합니다. [Change to]에서 앞서 기록한 라우팅 테이블(예: rtb-98b613fd)을 선택합니다.

  9. 선택 사항을 저장하기 위해 [Save]를 선택합니다.

퍼블릭 웹 서버에 대해 VPC 보안 그룹 생성

이제 퍼블릭 액세스를 위한 보안 그룹을 생성합니다. VPC의 퍼블릭 인스턴스에 연결하려면 인터넷으로부터의 트래픽 연결을 허용하는 VPC 보안 그룹에 인바운드 규칙을 추가해야 합니다.

VPC 보안 그룹의 생성 방법

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. [VPC Dashboard], [Security Groups]와 [Create Security Group]을 차례대로 선택합니다.

  3. [Create Security Group] 페이지에서 다음 값을 설정합니다.

    • Name tag: tutorial-securitygroup

    • 그룹 이름: tutorial-securitygroup

    • 설명: Tutorial Security Group

    • VPC: 앞에서 생성한 VPC를 선택합니다(예: vpc-f1b76594 (10.0.0.0/16) | tutorial-vpc).

  4. 보안 그룹을 생성하려면 [Yes, Create]를 선택합니다.

인바운드 규칙을 보안 그룹에 추가하는 방법

  1. VPC의 인스턴스에 연결할 때 사용할 IP 주소를 측정합니다. 퍼블릭 IP 주소를 측정하려면 http://checkip.amazonaws.com의 서비스를 사용하면 됩니다. 고정 IP 주소가 없는 방화벽 뒤나 ISP(인터넷 서비스 제공업체)를 통해 연결되어 있는 경우 클라이언트 컴퓨터가 사용하는 IP 주소의 범위를 찾아야 합니다.

    주의

    0.0.0.0/0을 사용하면 모든 IP 주소에서 퍼블릭 인스턴스에 액세스할 수 있습니다. 이 방법은 테스트 환경에서 잠시 사용하는 것은 괜찮지만 프로덕션 환경에서는 안전하지 않습니다. 프로덕션에서는 특정 IP 주소나 주소 범위만 인스턴스에 액세스하도록 허용하십시오.

  2. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  3. [VPC Dashboard], [Security Groups]와 이전 절차에서 생성한 tutorial-securitygroup 보안 그룹을 차례로 선택합니다.

  4. [Inbound Rules] 탭을 선택한 후 [Edit]를 선택합니다.

  5. 새로운 인바운드 규칙으로 다음 값을 설정하여 SSH(Secure Shell)에서 EC2 인스턴스에 액세스하도록 허용합니다. 이렇게 하면 EC2 인스턴스에 연결하여 웹 서버 및 다른 유틸리티를 설치하고 웹 서버의 콘텐츠를 업로드할 수 있습니다.

    • Type: SSH (22)

    • Source: 이전 단계의 IP 주소 또는 범위(예: 203.0.113.25/32)

  6. [Add another rule]을 선택합니다.

  7. 새 인바운드 규칙에 다음 값을 설정하여 웹 서버에 대한 HTTP 액세스를 허용합니다.

    • Type: HTTP (80)

    • 소스: 0.0.0.0/0.

  8. 설정을 저장하려면 [Save]를 선택합니다.

프라이빗 Amazon RDS DB 인스턴스에 대한 VPC 보안 그룹 생성

Amazon RDS DB 인스턴스를 프라이빗으로 유지하려면 프라이빗 액세스를 위한 보조 보안 그룹을 생성합니다. VPC의 프라이빗 인스턴스에 연결하려면 웹 서버로부터의 트래픽만을 허용하는 VPC 보안 그룹에 인바운드 규칙을 추가해야 합니다.

VPC 보안 그룹의 생성 방법

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. [VPC Dashboard], [Security Groups]와 [Create Security Group]을 차례대로 선택합니다.

  3. [Create Security Group] 페이지에서 다음 값을 설정합니다.

    • Name tag: tutorial-db-securitygroup

    • 그룹 이름: tutorial-db-securitygroup

    • 설명: Tutorial DB Instance Security Group

    • VPC: 앞에서 생성한 VPC를 선택합니다(예: vpc-f1b76594 (10.0.0.0/16) | tutorial-vpc).

  4. 보안 그룹을 생성하려면 [Yes, Create]를 선택합니다.

인바운드 규칙을 보안 그룹에 추가하는 방법

  1. https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. [VPC Dashboard], [Security Groups]와 이전 절차에서 생성한 tutorial-db-securitygroup 보안 그룹을 차례로 선택합니다.

  3. [Inbound Rules] 탭을 선택한 후 [Edit]를 선택합니다.

  4. 새로운 인바운드 규칙으로 다음 값을 설정하여 EC2 인스턴스의 포트 3306에서 MySQL 트래픽을 허용합니다. 이렇게 하면 웹 서버에서 DB 인스턴스에 연결하여 웹 애플리케이션의 데이터를 데이터베이스에 저장하고 검색할 수 있습니다.

    • Type: MySQL/Aurora (3306)

    • Source: 이 자습서의 앞부분에서 만든 tutorial-securitygroup 보안 그룹의 식별자(예: sg-9edd5cfb)

  5. 설정을 저장하려면 [Save]를 선택합니다.