Amazon RDS에 대한 설정 - Amazon Relational Database Service

Amazon RDS에 대한 설정

Amazon Relational Database Service를 처음 사용하는 경우 먼저 다음 태스크를 완료해야 합니다.

AWS 계정이 이미 있고 Amazon RDS 요구 사항을 알고 있으며 IAM 및 VPC 보안 그룹에 모두 기본값을 사용하려는 경우에는 Amazon RDS 시작하기 섹션으로 건너뜁니다.

AWS 계정 및 루트 사용자 자격 증명 받기

AWS에 액세스하려면 AWS 계정에 가입해야 합니다.

AWS 계정에 가입

  1. https://portal.aws.amazon.com/billing/signup을 엽니다.

  2. 온라인 지시 사항을 따릅니다.

    등록 절차 중 전화를 받고 전화 키패드를 사용하여 확인 코드를 입력하는 과정이 있습니다.

AWS에서는 가입 프로세스가 완료된 후 확인 이메일을 보냅니다. 언제든지 https://aws.amazon.com/으로 이동하고 내 계정(My Account)을 선택하여 현재 계정 활동을 보고 계정을 관리할 수 있습니다.

IAM 사용자 생성

계정에 이미 전체 AWS 관리 권한이 있는 IAM 사용자가 포함되어 있는 경우 이 섹션을 건너뛸 수 있습니다.

Amazon Web Services(AWS) 계정을 처음 생성할 때는 단일 로그인 자격 증명으로 시작합니다. 이 자격 증명은 계정의 모든 AWS 서비스 및 리소스에 대한 완전한 액세스 권한을 갖습니다. 이 자격 증명을 AWS 계정 루트 사용자라고 합니다. 로그인할 때 계정을 만드는 데 사용한 이메일 주소와 암호를 입력합니다.

중요

일상적인 작업, 심지어 관리 작업의 경우에도 루트 사용자를 사용하지 마실 것을 강력히 권장합니다. 대신, IAM 사용자를 처음 생성할 때만 루트 사용자를 사용하는 모범 사례를 준수하세요. 그런 다음 루트 사용자 자격 증명을 안전하게 보관하고 몇 가지 계정 및 서비스 관리 작업을 수행할 때만 사용합니다. 루트 사용자로 로그인해야 하는 태스크를 보려면 루트 사용자 자격 증명이 필요한 태스크를 참조하세요.

자신을 위한 관리자 사용자를 직접 생성하여 관리자 그룹에 추가(콘솔)

  1. 루트 사용자(Root user)를 선택하고 AWS 계정 계정 이메일 주소를 입력하여 IAM 콘솔에 계정 소유자로 로그인합니다. 다음 페이지에서 암호를 입력합니다.

    참고

    Administrator IAM 사용자를 사용하는 아래 모범 사례를 준수하고, 루트 사용자 자격 증명을 안전하게 보관해 두는 것이 좋습니다. 몇 가지 계정 및 서비스 관리 태스크를 수행하려면 반드시 루트 사용자로 로그인해야 합니다.

  2. 탐색 창에서 사용자(Users)사용자 추가(Add users)를 차례로 선택합니다.

  3. 사용자 이름(User name)Administrator를 입력합니다.

  4. AWS Management Console 액세스(console access) 옆의 확인란을 선택합니다. 그런 다음 사용자 지정 암호(Custom password)를 선택하고 텍스트 상자에 새 암호를 입력합니다.

  5. (선택 사항) 기본적으로 AWS에서는 새 사용자가 처음 로그인할 때 새 암호를 생성해야 합니다. 사용자가 다음에 로그인할 때 새 암호를 생성해야 합니다(User must create a new password at next sign-in) 옆에 있는 확인란의 선택을 취소하면 새 사용자가 로그인한 후 암호를 재설정할 수 있습니다.

  6. 다음: 권한(Next: Permissions)을 선택합니다.

  7. 권한 설정(Set permissions) 아래에서 그룹에 사용자 추가(Add user to group)를 선택합니다.

  8. 그룹 생성(Create group)을 선택합니다.

  9. 그룹 생성(Create group) 대화 상자의 그룹 이름(Group name)Administrators를 입력합니다.

  10. 정책 필터링(Filter policies)을 선택한 다음 AWS 관리형 - 직무(managed - job function)를 선택하여 테이블 내용을 필터링합니다.

  11. 정책 목록에서 AdministratorAccess 확인란을 선택합니다. 그런 다음 그룹 생성(Create group)을 선택합니다.

    참고

    AdministratorAccess 권한을 사용하여 AWS Billing and Cost Management 콘솔에 액세스하려면 먼저 결제에 대한 IAM 사용자 및 역할 액세스를 활성화해야 합니다. 이를 위해 결제 콘솔에 액세스를 위임하기 위한 자습서 1단계의 지침을 따르세요.

  12. 그룹 목록으로 돌아가 새 그룹의 확인란을 선택합니다. 목록에서 그룹을 확인하기 위해 필요한 경우 새로 고침(Refresh)을 선택합니다.

  13. 다음: 태그(Next: Tags)를 선택합니다.

  14. (선택 사항) 태그를 키 값 페어로 연결하여 메타데이터를 사용자에게 추가합니다. IAM에서 태그 사용에 대한 자세한 내용은 IAM 사용 설명서IAM 엔터티 태깅을 참조하세요.

  15. 다음: 검토(Next: Review)를 선택하여 새 사용자에 추가될 그룹 멤버십의 목록을 확인합니다. 계속 진행할 준비가 되었으면 사용자 생성(Create user)을 선택합니다.

이와 동일한 절차에 따라 그룹이나 사용자를 추가로 생성하여 사용자에게 AWS 계정 리소스에 액세스할 수 있는 권한을 부여할 수 있습니다. 특정 AWS 리소스에 대한 사용자 권한을 제한하는 정책을 사용하는 방법을 알아보려면 액세스 관리정책 예제를 참조하세요.

IAM 사용자로 로그인

IAM 사용자(IAM user)를 선택하고 AWS 계정 ID 또는 계정 별칭을 입력하여 IAM 콘솔에 로그인합니다. 다음 페이지에서 IAM 사용자 이름 및 암호를 입력합니다.

참고

사용자 편의를 위해 AWS 로그인 페이지는 브라우저 쿠키를 사용하여 IAM 사용자 이름 및 계정 정보를 기억합니다. 이전에 다른 사용자로 로그인한 경우 버튼 아래의 로그인 링크를 선택하여 기본 로그인 페이지로 돌아갑니다. 여기서 AWS 계정 ID 또는 계정 별칭을 입력하면 계정의 IAM 사용자 로그인 페이지로 리디렉션됩니다.

IAM 사용자 액세스 키 생성

액세스 키는 액세스 키 ID 및 비밀 액세스 키로 이루어져 있는데, 이를 사용하여 AWS에 보내는 프로그래밍 방식의 요청에 서명할 수 있습니다. 액세스 키가 없는 경우에는 AWS Management Console에서 액세스 키를 생성할 수 있습니다 AWS 계정 루트 사용자 액세스 키가 필요하지 않은 태스크에는 액세스 키를 사용하지 않는 것이 바람직한 모범 사례입니다. 대신 자신에 대한 액세스 키를 사용하여 새 관리자 IAM 사용자를 생성합니다.

보안 액세스 키는 액세스 키를 생성하는 시점에만 보고 다운로드할 수 있습니다. 나중에 복구할 수 없습니다. 하지만 언제든지 새 액세스 키를 생성할 수 있습니다. 필요한 IAM 작업을 수행할 수 있는 권한도 있어야 합니다. 자세한 내용은 IAM 사용 설명서에서 IAM 리소스에 액세스하는 데 필요한 권한을 참조하세요.

IAM 사용자에 대한 액세스 키를 생성하려면

  1. AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 사용자를 선택합니다.

  3. 액세스 키를 생성할 사용자의 이름을 선택한 다음 Security credentials(보안 자격 증명) 탭을 선택합니다.

  4. 액세스 키 섹션에서 Create access key(액세스 키 생성)를 선택합니다.

  5. 새 액세스 키 페어를 보려면 표시를 선택합니다. 이 대화 상자를 닫은 후에는 보안 액세스 키에 다시 액세스할 수 없습니다. 자격 증명은 다음과 비슷합니다.

    • 액세스 키 ID: AKIAIOSFODNN7EXAMPLE

    • 비밀 액세스 키: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

  6. 키 페어 파일을 다운로드하려면 [Download .csv file]을 선택합니다. 안전한 위치에 키를 저장합니다. 이 대화 상자를 닫은 후에는 보안 액세스 키에 다시 액세스할 수 없습니다.

    AWS 계정을 보호하기 위해 키를 기밀로 유지하고, 이메일로 전송하지 마세요. AWS 또는 Amazon.com의 이름으로 문의가 온다 할지라도 조직 외부로 키를 공유하지 마세요. Amazon을 합법적으로 대표하는 사람이라면 결코 보안 키를 요구하지 않을 것입니다.

  7. .csv 파일을 다운로드한 후 닫기를 선택합니다. 액세스 키를 생성하면 키 페어가 기본적으로 활성화되므로 해당 페어를 즉시 사용할 수 있습니다.

관련 주제

요구 사항 결정

Amazon RDS의 기본 빌딩 블록은 DB 인스턴스입니다. DB 인스턴스에서는 데이터베이스를 생성합니다. DB 인스턴스는 엔드포인트라고 하는 네트워크 주소를 할당합니다. 애플리케이션은 이 엔드포인트를 사용하여 DB 인스턴스에 연결합니다. DB 인스턴스를 생성할 때 스토리지, 메모리, 데이터베이스 엔진 및 버전, 네트워크 구성, 보안, 유지 관리 기간 등의 세부 정보를 지정합니다. 보안 그룹을 통해 DB 인스턴스에 대한 네트워크 액세스를 제어할 수 있습니다.

DB 인스턴스와 보안 그룹을 생성하기 전에 DB 인스턴스 및 네트워크 필요를 알아야 합니다. 고려해야 할 몇 가지 중요 사항은 다음과 같습니다:

  • 리소스 요구 사항 – 애플리케이션 또는 서비스의 메모리 및 프로세서 요구 사항은 무엇입니까? 이러한 설정을 사용하면 어떤 DB 인스턴스 클래스를 사용할지를 결정하는 데 도움이 됩니다. DB 인스턴스 클래스에 대한 사양은 DB 인스턴스 클래스 단원을 참조하십시오.

  • VPC, 서브넷 및 보안 그룹 – DB 인스턴스는 대부분의 경우 Virtual Private Cloud(VPC) 안에 있습니다. DB 인스턴스에 연결하려면 보안 그룹 규칙을 설정해야 합니다. 이러한 규칙은 사용하는 VPC 종류와 사용 방식(기본 VPC 또는 사용자 정의 VPC)에 따라 다르게 설정됩니다.

    다음은 각 VPC 옵션의 규칙을 설명한 목록입니다.

    • 기본 VPC - AWS 계정에 최신 AWS 리전의 기본 VPC가 있는 경우 DB 인스턴스를 지원하도록 해당 VPC를 구성할 수 있습니다. DB 인스턴스 생성 시 기본 VPC를 지정할 경우 다음을 수행합니다.

      • 애플리케이션 또는 서비스에서 Amazon RDS DB 인스턴스로의 연결 권한을 부여하는 VPC 보안 그룹을 생성해야 합니다. VPC 콘솔의 [보안 그룹(Security Group)] 옵션 또는 AWS CLI를 사용하여 VPC 보안 그룹을 생성합니다. 자세한 정보는 4단계: VPC 보안 그룹 만들기 섹션을 참조하세요.

      • 기본 DB 서브넷 그룹을 지정합니다. 이 AWS 리전에서 처음 DB 인스턴스를 생성하는 경우에는 Amazon RDS가 DB 인스턴스를 생성할 때 기본 DB 서브넷 그룹을 생성합니다.

    • 사용자 정의 VPC – DB 인스턴스 생성 시 사용자 정의 VPC를 지정할 경우 다음 사항에 유의해야 합니다.

      • 애플리케이션 또는 서비스에서 Amazon RDS DB 인스턴스로의 연결 권한을 부여하는 VPC 보안 그룹을 생성해야 합니다. VPC 콘솔의 [보안 그룹(Security Group)] 옵션 또는 AWS CLI를 사용하여 VPC 보안 그룹을 생성합니다. 자세한 정보는 4단계: VPC 보안 그룹 만들기 섹션을 참조하세요.

      • VPC가 DB 인스턴스를 호스팅하려면 별도의 가용 영역에서 각각 최소 2개 이상씩 서브넷을 구성하는 등 특정 요구 사항을 충족해야 합니다. 자세한 정보는 Amazon Virtual Private Cloud VPC 및 Amazon RDS 섹션을 참조하세요.

      • DB 서브넷 그룹을 지정하여 DB 인스턴스에서 VPC를 사용할 서브넷을 정의해야 합니다. 자세한 정보는 VPC에서 DB 인스턴스를 사용한 작업에서 DB 서브넷 그룹을 참조하십시오.

      참고

      일부 레거시 계정은 VPC를 사용하지 않습니다. 새 AWS 리전에 액세스하고 있거나 새 RDS 사용자인 경우(2013년 이후) 대부분 VPC 내부에서 DB 인스턴스를 생성합니다. 자세한 내용은 EC2-VPC 또는 EC2-Classic 플랫폼을 사용 중인지 확인 섹션을 참조하세요.

  • 높은 가용성: 장애 조치 지원이 필요합니까 Amazon RDS에서 다중 AZ 배포는 기본 DB 인스턴스를 생성하고 장애 조치 지원을 위해 다른 가용 영역에 보조 예비 DB 인스턴스를 생성합니다. 고가용성을 유지하기 위해 프로덕션 워크로드에는 다중 AZ 배포를 권장합니다. 개발 및 테스트 목적으로는 비 다중 AZ 배포를 사용할 수 있습니다. 자세한 내용은 고가용성을 위한 다중 AZ 배포 섹션을 참조하세요.

  • IAM 정책: AWS 계정에 Amazon RDS 작업을 수행하는 데 필요한 권한을 부여하는 정책이 있습니까? IAM 자격 증명을 사용하여 AWS에 연결하는 경우 IAM 계정에는 Amazon RDS 작업을 수행하는 데 필요한 권한을 부여하는 IAM 정책이 있어야 합니다. 자세한 내용은 Amazon RDS의 자격 증명 및 액세스 관리 섹션을 참조하세요.

  • 개방 포트: 데이터베이스가 어떤 TCP/IP 포트에서 수신 대기합니까? 일부 기업에서는 방화벽이 데이터베이스 엔진의 기본 포트 연결을 차단하는 경우도 있습니다. 이처럼 기업 방화벽이 기본 포트를 차단할 경우 새로운 DB 인스턴스를 생성할 때 다른 포트를 선택해야 합니다. 단, 지정 포트에서 수신 대기할 DB 인스턴스를 생성하는 경우 해당 DB 인스턴스를 수정하여 포트를 변경할 수 있습니다.

  • AWS 리전: 데이터베이스를 구성하려고 하는 AWS 리전은 어디입니까? 애플리케이션이나 웹 서비스에 가깝게 데이터베이스를 구성하면 네트워크 지연 시간을 줄일 수 있습니다. 자세한 내용은 리전, 가용 영역 및 로컬 영역 섹션을 참조하세요.

  • DB 디스크 하위 시스템: 스토리지 요구 사항은 무엇입니까? Amazon RDS는 세 가지 스토리지 유형을 제공합니다.

    • 마그네틱(표준 스토리지)

    • 범용(SSD)

    • 프로비저닝된 IOPS(PIOPS)

    마그네틱 스토리지는 I/O 요구 사항이 보통 수준이거나 가끔씩 집중적으로 발생하는 애플리케이션에 적합한 비용 효율적인 스토리지입니다. gp2라고도 불리는 범용 SSD 기반 스토리지는 디스크 기반 스토리지보다 액세스 속도가 더욱 빠릅니다. 프로비저닝된 IOPS 스토리지는 성능에 민감하고 임의 액세스 I/O 처리량이 일정한 I/O 집약적 워크로드, 특히 데이터베이스 워크로드 요구 사항을 충족하도록 설계되었습니다. Amazon RDS 스토리지에 대한 자세한 정보는 Amazon RDS DB 인스턴스 스토리지 단원을 참조하십시오.

보안 그룹과 DB 인스턴스 생성에 필요한 정보를 확인하였으면 다음 단계로 진행합니다.

보안 그룹을 생성하여 VPC 내부의 DB 인스턴스에 대한 액세스를 제공

VPC 보안 그룹은 VPC에서 실행되는 DB 인스턴스에 대한 액세스를 제공합니다. 이들은 연결된 DB 인스턴스에 대한 방화벽 역할을 하여 DB 인스턴스 수준에서 인바운드 트래픽과 아웃바운드 트래픽을 모두 제어합니다. 기본적으로 DB 인스턴스는 DB 인스턴스를 보호하는 방화벽 및 기본 보안 그룹과 함께 생성됩니다.

DB 인스턴스에 연결하려면 먼저 연결하는 데 사용할 수 있는 규칙을 보안 그룹에 추가해야 합니다. 네트워크 및 구성 정보를 사용하여 DB 인스턴스에 액세스하는 데 사용할 수 있는 규칙을 생성합니다.

예를 들어 VPC의 DB 인스턴스에서 데이터베이스에 액세스하는 애플리케이션이 있다고 가정해 보겠습니다. 이 경우, 애플리케이션이 데이터베이스에 액세스하는 데 사용할 포트 범위와 IP 주소를 지정하는 사용자 지정 TCP 규칙을 추가해야 합니다. Amazon EC2 인스턴스에 애플리케이션이 있는 경우 Amazon EC2 인스턴스에 대해 설정한 보안 그룹을 사용할 수 있습니다.

DB 인스턴스 액세스의 일반적인 시나리오에 대한 자세한 내용은 VPC에서 DB 인스턴스에 액세스하는 시나리오 섹션을 참조하세요.

VPC 보안 그룹의 생성 방법

  1. AWS Management Console에 로그인하고 https://console.aws.amazon.com/vpc에서 Amazon VPC 콘솔을 엽니다.

    참고

    RDS 콘솔이 아니라 VPC 콘솔을 사용해야 합니다.

  2. AWS Management Console의 오른쪽 상단에서 VPC 보안 그룹 및 DB 인스턴스를 만들 AWS 리전을 선택합니다. 해당 AWS 리전의 Amazon VPC 리소스 목록에 1개 이상의 VPC와 몇 개의 서브넷이 표시되어야 합니다. 그렇지 않으면 해당 AWS 리전에 기본 VPC가 없는 것입니다.

  3. 탐색 창에서 [Security Groups]를 선택합니다.

  4. 보안 그룹 생성을 선택합니다.

    [보안 그룹 생성(Create security group)] 페이지가 나타납니다.

  5. [기본 세부 정보(Basic details)]에서 [보안 그룹 이름(Security group name)]과 [설명(Description)]을 입력합니다. [VPC]에서 DB 인스턴스를 생성할 VPC를 선택합니다.

  6. [인바운드 규칙(Inbound rules)]에서 [규칙 추가(Add rule)]를 선택합니다.

    1. 유형에 대해 사용자 지정 TCP를 선택합니다.

    2. [포트 범위(Port range)]에 DB 인스턴스에 사용할 포트 값을 입력합니다.

    3. [소스(Source)]에서 DB 인스턴스에 액세스할 IP 주소 범위(CIDR 값)를 입력하거나 보안 그룹 이름을 선택합니다. 내 IP를 선택하면 브라우저에서 감지된 IP 주소에서 DB 인스턴스에 액세스할 수 있습니다.

  7. IP 주소 또는 다른 포트 범위를 추가해야 하는 경우 [규칙 추가(Add rule)]를 선택하고 규칙에 대한 정보를 입력합니다.

  8. (선택 사항) [아웃바운드 규칙(Outbound rules)]에서 아웃바운드 트래픽에 대한 규칙을 추가합니다. 기본적으로 모든 아웃바운드 트래픽이 허용됩니다.

  9. 보안 그룹 생성을 선택합니다.

방금 생성한 VPC 보안 그룹을 DB 인스턴스 생성 시 보안 그룹으로 사용할 수 있습니다.

참고

기본 VPC를 사용하는 경우 VPC의 모든 서브넷을 포괄하는 기본 서브넷 그룹이 자동으로 생성됩니다. DB 인스턴스를 생성할 때 기본 VPC를 선택하고 DB 서브넷 그룹기본값을 사용할 수 있습니다.

설정 요구 사항을 완료한 후에는 Amazon RDS DB 인스턴스 생성의 지침에 따라 요구 사항과 보안 그룹을 사용하여 DB 인스턴스를 생성할 수 있습니다. 특정 DB 엔진을 사용하는 DB 인스턴스를 생성하는 방법에 대한 자세한 내용은 다음 표의 관련 설명서를 참조하세요.

참고

DB 인스턴스를 생성한 후 연결할 수 없는 경우 Amazon RDS DB 인스턴스에 연결할 수 없음의 문제 해결 정보를 참조하십시오.