Amazon Aurora
Aurora 사용 설명서 (API 버전 2014-10-31)

Amazon Aurora 환경 설정

Amazon Aurora를 처음 사용한다면 먼저 다음 작업을 완료해야 합니다.

AWS에 가입

Amazon RDS(AWS)에 가입하면 Amazon RDS를 포함한 AWS의 모든 서비스에 AWS 계정이 자동으로 등록됩니다. 사용한 서비스에 대해서만 청구됩니다.

Amazon RDS에서는 사용한 리소스에 대해서만 비용을 지불합니다. 생성한 Amazon RDS DB 클러스터는 실시간으로 활성화됩니다(샌드박스에서 실행되지 않음). 종료하기 전까지 해당 클러스터에 대해 표준 Amazon RDS 사용 요금이 발생합니다. Amazon RDS 사용 요금에 대한 자세한 정보는 Amazon RDS 제품 페이지를 참조하십시오. AWS를 처음 사용하는 고객인 경우에는 Amazon RDS를 무료로 사용해볼 수 있습니다. 자세한 정보는 AWS 프리 티어 단원을 참조하십시오.

이미 AWS 계정이 있다면 다음 작업으로 건너뛰십시오. AWS 계정이 없는 경우에는 아래 단계를 수행하여 계정을 만드십시오.

AWS 계정을 만들려면 다음을 수행합니다.

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

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

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

다음 작업에 필요하므로 AWS 계정 번호를 기록합니다.

IAM 사용자 생성

Amazon RDS 등의 AWS 서비스에 액세스하려면 자격 증명을 제공해야 합니다. 리소스에 대한 액세스 권한이 있는지 여부를 파악해야 하기 때문입니다. 콘솔은 암호를 요구합니다. AWS 계정에 대한 액세스 키를 생성하면 명령줄 인터페이스 또는 API에 액세스할 수 있습니다. 그러나 AWS 계정에 자격 증명을 사용하여 AWS에 액세스하지 말고, AWS Identity and Access Management(IAM)를 사용하는 것이 좋습니다. IAM 사용자를 생성하여 관리자 권한과 함께 IAM 그룹에 추가하거나, 이 사용자에게 관리자 권한을 부여하십시오. 그러면 IAM 사용자의 특정 URL이나 자격 증명을 사용하여 AWS에 액세스할 수 있습니다.

AWS에 가입했지만 IAM 사용자를 생성하지 않았다면 IAM 콘솔에서 생성할 수 있습니다.

관리자 사용자를 직접 생성하여 관리자 그룹에 추가하려면(콘솔)

  1. https://console.aws.amazon.com/iam/에서 AWS 계정 루트 사용자 이메일 주소 및 암호를 사용하여 IAM 콘솔에 AWS 계정 루트 사용자 로그인합니다.

    참고

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

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

  3. 사용자 이름Administrator를 입력합니다.

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

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

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

  7. 권한 설정 아래에서 그룹에 사용자 추가를 선택합니다.

  8. 그룹 생성을 선택합니다.

  9. 그룹 생성 대화 상자의 그룹 이름Administrators를 입력합니다.

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

  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 사용자로 로그인하려면 먼저 AWS 콘솔에서 로그아웃한 후 다음 URL을 사용합니다. 여기에서 your_aws_account_id는 하이픈을 제외한 AWS 계정 번호를 나타냅니다. 예를 들어, AWS 계정 번호가 1234-5678-9012이면 계정 ID는 123456789012입니다.

https://your_aws_account_id.signin.aws.amazon.com/console/

방금 생성한 IAM 사용자 이름과 암호를 입력합니다. 로그인하면 탐색 모음에 "your_user_name @ your_aws_account_id"가 표시됩니다.

로그인 페이지의 URL에 AWS 계정 ID가 포함되지 않게 하려면 계정 별칭을 생성할 수 있습니다. IAM 대시보드에서 사용자 지정을 선택하고 회사 이름 등의 별칭을 입력합니다. 계정 별칭을 만든 후 로그인하려면 다음 URL을 사용하십시오.

https://your_account_alias.signin.aws.amazon.com/console/

본인 계정의 IAM 사용자 로그인 링크를 확인하려면 IAM 콘솔을 열고 대시보드의 [AWS Account Alias] 아래를 체크합니다.

요구 사항 결정

Aurora의 기본 빌딩 블록은 DB 클러스터입니다. 하나의 DB 클러스터에 한 개 이상의 DB 인스턴스가 속할 수 있습니다. DB 클러스터는 클러스터 엔드포인트라고 하는 네트워크 주소를 할당합니다. 애플리케이션은 DB 클러스터에서 생성된 데이터베이스에 액세스할 때마다 해당 DB 클러스터가 할당한 클러스터 엔드포인트에 연결됩니다. 또한 DB 클러스터를 생성할 때 지정하는 정보에 따라서 메모리, 데이터베이스 엔진 및 버전, 네트워크 구성, 보안, 유지 관리 기간 등의 구성 요소가 제어됩니다.

보안 그룹을 생성하거나 DB 클러스터를 생성하려면 DB 클러스터 및 네트워크 요구 사항을 사전에 반드시 알고 있어야 합니다. 요구 사항의 예를 들면 다음과 같습니다.

  • 애플리케이션 또는 서비스의 메모리 및 프로세서 요구 사항은 무엇입니까? DB 클러스터를 생성할 때는 사용할 DB 인스턴스 클래스를 결정하면서 이러한 설정을 사용하게 됩니다. DB 인스턴스 클래스에 대한 사양은 DB 인스턴스 클래스 선택 단원을 참조하십시오.

  • DB 클러스터는 가상 사설 클라우드(VPC)에 있습니다. DB 클러스터에 연결하려면 보안 그룹 규칙을 구성해야 합니다. 다음은 각 VPC 옵션의 규칙을 설명한 목록입니다.

    • 기본 VPC — 현재 리전에서 AWS 계정에 기본 VPC가 있는 경우 해당 VPC를 구성하여 DB 클러스터를 지원할 수 있습니다. DB 클러스터 생성 시 기본 VPC를 지정할 경우 다음과 같이 실행해야 합니다.

      • VPC 보안 그룹을 생성하여 데이터베이스를 이용해 애플리케이션 또는 서비스에서 Aurora DB 클러스터까지 연결 권한을 부여해야 합니다. VPC 보안 그룹을 생성하려면 VPC 콘솔에서 Amazon EC2 API 또는 보안 그룹 옵션을 사용해야 합니다. 자세한 정보는 4단계: VPC 보안 그룹 만들기 단원을 참조하십시오.

      • 기본 DB 서브넷 그룹을 지정해야 합니다. 리전에서 처음 DB 클러스터를 생성하는 경우에는 Amazon RDS가 DB 클러스터 생성과 함께 기본 DB 서브넷 그룹을 생성합니다.

    • 사용자 정의 VPC — DB 클러스터 생성 시 사용자 정의 VPC를 지정할 경우 다음과 같이 실행해야 합니다.

      • VPC 보안 그룹을 생성하여 데이터베이스를 이용해 애플리케이션 또는 서비스에서 Aurora DB 클러스터까지 연결 권한을 부여해야 합니다. VPC 보안 그룹을 생성하려면 VPC 콘솔에서 Amazon EC2 API 또는 보안 그룹 옵션을 사용해야 합니다. 자세한 정보는 4단계: VPC 보안 그룹 만들기 단원을 참조하십시오.

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

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

  • 장애 조치 지원이 필요합니까? Aurora에서 다중 AZ 배포는 기본 인스턴스와 Aurora 복제본을 생성합니다. 장애 조치 지원을 위해 기본 인스턴스와 Aurora 복제본을 서로 다른 가용 영역에 두도록 구성할 수 있습니다. 고가용성을 유지하기 위해 프로덕션 워크로드에는 다중 AZ 배포를 권장합니다. 개발 및 테스트 목적으로는 비 다중 AZ 배포를 사용할 수 있습니다. 자세한 정보는 Aurora을 위한 고가용성 단원을 참조하십시오.

  • 귀하의 AWS 계정에 Amazon RDS 연산 수행에 필요한 권한을 부여하는 정책이 있습니까? IAM 자격 증명을 사용하여 AWS에 연결하는 경우 IAM 계정에는 Amazon RDS 작업을 수행하는 데 필요한 권한을 부여하는 IAM 정책이 있어야 합니다. 자세한 정보는 인증 및 액세스 제어 단원을 참조하십시오.

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

  • 데이터베이스를 구성하려고 하는 리전은 어디입니까? 애플리케이션이나 웹 서비스에 가깝게 데이터베이스를 구성하면 네트워크 지연 시간을 줄일 수 있습니다.

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

보안 그룹을 생성하여 VPC 내의 DB 클러스터에 대한 액세스를 제공합니다.

DB 클러스터는 VPC에서 생성될 가능성이 가장 높습니다. 보안 그룹은 VPC에서 실행되는 DB 클러스터에 대한 액세스를 제공합니다. 이들은 연결된 DB 클러스터에 대한 방화벽 역할을 하여 클러스터 수준에서 인바운드 트래픽과 아웃바운드 트래픽을 모두 제어합니다. 기본적으로 DB 클러스터는 DB 클러스터에 대한 액세스를 방지하는 방화벽 및 기본 보안 그룹과 함께 생성됩니다. 따라서 DB 클러스터에 연결할 수 있는 규칙을 보안 그룹에 추가해야 합니다. 이전 단계에서 파악한 네트워크 및 구성 정보를 사용하여 DB 클러스터에 액세스할 수 있는 규칙을 만듭니다.

DB 보안 그룹을 요구하는 레거시 DB 클러스터(VPC에서 실행되지 않음)가 아니라면 생성해야 하는 보안 그룹은 VPC 보안 그룹입니다. 2013년 3월 이후 AWS 계정을 생성하였다면 기본 VPC가 지원되므로 DB 클러스터를 이 VPC 내에 생성할 수 있습니다. VPC 내에 DB 클러스터를 생성하려면 클러스터에 액세스할 수 있는 규칙을 VPC 보안 그룹에 추가해야 합니다.

예를 들어 애플리케이션이 VPC 내에 생성한 DB 클러스터의 데이터베이스에 액세스할 경우 데이터베이스에 액세스하는 데 필요한 포트 범위와 IP 주소를 지정한 사용자 정의 TCP 규칙을 추가해야 합니다. Amazon EC2 클러스터에서 실행하는 애플리케이션이 있다면 Amazon EC2 클러스터에 대해 설정한 VPC 또는 EC2 보안 그룹을 사용할 수 있습니다.

VPC 보안 그룹의 생성 방법

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

  2. AWS Management 콘솔 상단 오른쪽 모서리에서 VPC 보안 그룹과 DB 클러스터를 생성할 리전을 선택합니다. 해당 리전의 Amazon VPC 리소스 목록에 1개 이상의 VPC와 몇 개의 서브넷이 있는 것으로 표시되어야 합니다. 그렇지 않으면 해당 리전에 기본 VPC가 없는 것입니다.

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

  4. [Create Security Group]을 선택합니다.

  5. [Create Security Group] 창에서 보안 그룹의 Name tag, Group nameDescription을 입력합니다. DB 클러스터를 생성하려는 VPC를 선택합니다. [Yes, Create]를 선택합니다.

  6. 생성한 VPC 보안 그룹이라고 해도 여전히 선택할 수 있어야 합니다. 콘솔 화면 하단 세부 정보 창에 보안 그룹 세부 정보를 비롯해 인바운드 및 아웃바운드 규칙 작업에 대한 탭이 표시됩니다. 인바운드 규칙 탭을 선택합니다.

  7. Inbound Rules 탭에서 [Edit]를 선택합니다. [Custom TCP Rule]을 [Type] 목록에서 선택합니다. 포트 범위 텍스트 상자에 DB 클러스터에 사용할 포트 값을 입력한 후 소스 텍스트 상자에 클러스터에 액세스하는 위치의 IP 주소 범위(CIDR 값)를 입력하거나, 보안 그룹 이름을 선택합니다.

  8. IP 주소를 더 추가하거나 다른 포트 범위를 추가할 경우에는 Add another rule(다른 규칙 추가)을 선택합니다.

  9. 필요에 따라 [Outbound Rules] 탭을 사용하여 아웃바운드 트래픽 규칙을 추가할 수도 있습니다.

  10. 모두 마쳤으면 설정을 변경한 각 탭에서 저장을 클릭합니다.

    이제 방금 생성한 VPC 보안 그룹을 DB 클러스터 생성 시 보안 그룹으로 사용할 수 있습니다.

    마지막으로 VPC 서브넷에 대해 간략히 언급하자면, 기본 VPC를 사용하는 경우에는 VPC의 모든 서브넷을 아우르는 기본 서브넷 그룹이 이미 생성되어 있습니다. DB 클러스터를 생성할 때 기본값 VPC를 선택하고 DB 서브넷 그룹기본값을 사용할 수 있습니다.

    모든 설정 요구 사항을 마쳤으면 이제 요구 사항과 생성한 보안 그룹을 사용하여 DB 클러스터를 시작할 수 있습니다. DB 클러스터를 만드는 방법에 대한 자세한 정보는 다음 표의 관련 문서를 참조하십시오.

    설정 후 테스트 Amazon Aurora DB 클러스터를 만들 수 있습니다. 지침은 DB 클러스터를 만들고 Amazon Aurora DB 클러스터의 데이터베이스에 연결하기을 참조하십시오.