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

Amazon RDS에 대한 설정

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

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

AWS 계정에 등록

AWS 계정이 없는 경우 다음 절차에 따라 계정을 생성합니다.

AWS 계정에 등록하려면
  1. https://portal.aws.amazon.com/billing/signup을 여세요.

  2. 온라인 지시 사항을 따르세요.

    등록 절차 중에는 전화를 받고 키패드로 인증 코드를 입력하는 과정이 있습니다.

    AWS 계정에 가입하면 AWS 계정 루트 사용자이 생성됩니다. 루트 사용자에게는 계정의 모든 AWS 서비스 및 리소스 액세스 권한이 있습니다. 보안 모범 사례는 사용자에게 관리 액세스 권한을 할당하고, 루트 사용자만 사용하여 루트 사용자 액세스 권한이 필요한 작업을 수행하는 것입니다.

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

관리자 액세스 권한이 있는 사용자 생성

AWS 계정에 가입하고 AWS 계정 루트 사용자에 보안 조치를 한 다음, AWS IAM Identity Center를 활성화하고 일상적인 작업에 루트 사용자를 사용하지 않도록 관리 사용자를 생성합니다.

귀하의 AWS 계정 루트 사용자 보호
  1. 루트 사용자를 선택하고 AWS 계정이메일 주소를 입력하여 AWS Management Console에 계정 소유자로 로그인합니다. 다음 페이지에서 비밀번호를 입력합니다.

    루트 사용자를 사용하여 로그인하는 데 도움이 필요하면 AWS 로그인 사용 설명서루트 사용자로 로그인을 참조하세요.

  2. 루트 사용자의 다중 인증(MFA)을 활성화합니다.

    지침은 IAM 사용 설명서의 AWS 계정루트 사용자용 가상 MFA 디바이스 활성화(콘솔)를 참조하세요.

관리자 액세스 권한이 있는 사용자 생성
  1. IAM Identity Center를 활성화합니다.

    지침은 AWS IAM Identity Center 사용 설명서AWS IAM Identity Center 설정을 참조하세요.

  2. IAM Identity Center에서 사용자에게 관리 액세스 권한을 부여합니다.

    IAM Identity Center 디렉터리를 ID 소스로 사용하는 방법에 대한 자습서는 AWS IAM Identity Center 사용 설명서기본 IAM Identity Center 디렉터리로 사용자 액세스 구성을 참조하세요.

관리 액세스 권한이 있는 사용자로 로그인
  • IAM IDentity Center 사용자로 로그인하려면 IAM IDentity Center 사용자를 생성할 때 이메일 주소로 전송된 로그인 URL을 사용합니다.

    IAM Identity Center 사용자로 로그인하는 데 도움이 필요한 경우 AWS 로그인 사용 설명서AWS 액세스 포털에 로그인을 참조하세요.

추가 사용자에게 액세스 권한 할당
  1. IAM Identity Center에서 최소 권한 적용 모범 사례를 따르는 권한 세트를 생성합니다.

    지침은 AWS IAM Identity Center 사용 설명서의 Create a permission set를 참조하세요.

  2. 사용자를 그룹에 할당하고, 그룹에 Single Sign-On 액세스 권한을 할당합니다.

    지침은 AWS IAM Identity Center 사용 설명서의 Add groups를 참조하세요.

프로그래밍 방식 액세스 권한 부여

사용자가 AWS Management Console 외부에서 AWS와 상호 작용하려면 프로그래밍 방식의 액세스가 필요합니다. 프로그래밍 방식으로 액세스를 부여하는 방법은 AWS에 액세스하는 사용자 유형에 따라 다릅니다.

사용자에게 프로그래밍 방식 액세스 권한을 부여하려면 다음 옵션 중 하나를 선택합니다.

프로그래밍 방식 액세스가 필요한 사용자는 누구인가요? To 액세스 권한을 부여하는 사용자

작업 인력 ID

(IAM Identity Center가 관리하는 사용자)

임시 보안 인증 정보를 사용하여 AWS CLI, AWS SDK 또는 AWS API에 대한 프로그래밍 요청에 서명합니다.

사용하고자 하는 인터페이스에 대한 지침을 따릅니다.

IAM 임시 보안 인증 정보를 사용하여 AWS CLI, AWS SDK 또는 AWS API에 대한 프로그래밍 요청에 서명합니다. IAM 사용 설명서의 AWS 리소스와 함께 임시 보안 인증 정보 사용에 나와 있는 지침을 따르세요.
IAM

(권장되지 않음)

장기 보안 인증 정보를 사용하여 AWS CLI, AWS SDK 또는 AWS API에 대한 프로그래밍 요청에 서명합니다.

사용하고자 하는 인터페이스에 대한 지침을 따릅니다.

요구 사항 결정

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 보안 그룹을 생성합니다. 자세한 정보는 3단계: VPC 보안 그룹 만들기 섹션을 참조하세요.

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

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

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

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

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

  • 높은 가용성 - 장애 조치 지원이 필요합니까 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)

    • 마그네틱(표준 스토리지라고도 함)

    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 인스턴스를 만들 때 Amazon EC2 인스턴스와 DB 인스턴스 간의 연결을 구성할 수 있습니다. 자세한 내용은 EC2 인스턴스와의 자동 네트워크 연결 구성 단원을 참조하세요.

작은 정보

DB 인스턴스를 생성할 때 Amazon EC2 인스턴스와 DB 클러스터 간의 네트워크 연결을 자동으로 설정할 수 있습니다. 자세한 내용은 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. 탐색 창에서 보안 그룹을 선택합니다.

  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 서브넷 그룹기본값을 사용할 수 있습니다.

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

참고

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