Amazon Aurora Global Database 시작하기 - Amazon Aurora

Amazon Aurora Global Database 시작하기

Aurora Global Database를 시작하려면 먼저 어떤 Aurora DB 엔진을 사용할지, 어떤 AWS 리전에서 사용할지 결정합니다. 특정 AWS 리전의 Aurora MySQL 및 Aurora PostgreSQL 데이터베이스 엔진의 특정 버전에 한하여 Aurora Global Database를 지원합니다. 완전한 목록은 Aurora 글로벌 데이터베이스 단원을 참조하세요.

다음 방법 중 하나로 Aurora Global Database를 만들 수 있습니다.

  • 새 Aurora DB 클러스터 및 Aurora DB 인스턴스로 새 Aurora Global Database 생성Amazon Aurora 글로벌 데이터베이스 생성의 단계를 수행하여 이 작업을 수행할 수 있습니다. 기본 Aurora DB 클러스터를 생성한 후 Amazon Aurora Global Database에 AWS 리전 추가의 단계에 따라 보조 AWS 리전을 추가합니다.

  • Aurora Global Database 기능을 지원하는 기존 Aurora DB 클러스터를 사용하고 여기에 AWS 리전 추가 – 기존 Aurora DB 클러스터가 Aurora 글로벌 모드를 지원하는 DB 엔진 버전을 사용하거나 글로벌 호환되는 경우에만 이 작업을 수행할 수 있습니다. 일부 DB 엔진 버전의 경우 이 모드는 명시적이지만 다른 경우에는 그렇지 않습니다.

    Aurora DB 클러스터를 선택할 때 AWS Management Console에서 [작업(Action)]에 대해 [리전 추가(Add region)]를 선택할 수 있는지 확인합니다. 선택 가능하면 해당 Aurora DB 클러스터를 Aurora 전역 클러스터에 사용할 수 있습니다. 자세한 내용은 Amazon Aurora Global Database에 AWS 리전 추가 섹션을 참조하세요.

Aurora Global Database를 만들기 전에 모든 구성 요구 사항을 이해하는 것이 좋습니다.

Amazon Aurora Global Database의 구성 요구 사항

Aurora Global Database는 두 개 이상의 AWS 리전에 걸쳐 있습니다. 기본 AWS 리전은 하나의 라이터 Aurora DB 인스턴스가 있는 Aurora DB 클러스터를 지원합니다. 보조 AWS 리전은 전체가 Aurora 복제본으로 구성된 읽기 전용 Aurora DB 클러스터를 실행합니다. 최소한 보조 AWS 리전이 한 곳 이상 필요하지만, Aurora Global Database는 최대 5개의 보조 AWS 리전를 포함할 수 있습니다. 이 표에는 Aurora Global Database에서 허용되는 최대 Aurora DB 클러스터, Aurora DB 인스턴스 및 Aurora 복제본이 나열됩니다.

설명 기본 AWS 리전 보조 AWS 리전

Aurora DB 클러스터

1

5(최대)

라이터 인스턴스

1

0

Aurora DB 클러스터당 읽기 전용 인스턴스 (Aurora 복제본)

15(최대)

16(최대)

읽기 전용 인스턴스(최대 허용, 지정된 보조 리전 수)

15 - s

s = 총 보조 AWS 리전 수

Aurora Global Database를 구성하는 Aurora DB 클러스터의 특정 요구 사항은 다음과 같습니다.

  • DB 인스턴스 클래스 요구 사항 – Aurora Global Database에는 메모리 집약적 애플리케이션에 최적화된 DB 인스턴스 클래스가 필요합니다. 메모리 최적화 DB 인스턴스 클래스에 대한 자세한 내용은 DB 인스턴스 클래스를 참조하세요. db.r5 이상의 인스턴스 클래스를 사용하는 것이 좋습니다.

  • AWS 리전 요구 사항 – Aurora Global Database에는 하나의 AWS 리전에 기본 Aurora DB 클러스터가 필요하고 다른 리전에 하나 이상의 보조 Aurora DB 클러스터가 필요합니다. 보조(읽기 전용) Aurora DB 클러스터를 최대 5개까지 생성할 수 있으며 각각은 다른 리전에 있어야 합니다. 즉, Aurora Global Database의 두 Aurora DB 클러스터가 동일한 AWS 리전에 있을 수 없습니다.

  • 이름 설정 요구 사항 – 개별 Aurora DB 클러스터에 선택하는 이름은 모든 AWS 리전에서 고유해야 합니다. 다른 리전에 있더라도 다른 Aurora DB 클러스터에는 동일한 이름을 사용할 수 없습니다.

  • Aurora Serverless v2의 용량 요구 사항 – Aurora Serverless v2의 글로벌 데이터베이스에서 기본 AWS 리전의 DB 클러스터에 필요한 최소 용량은 8ACU입니다.

이 섹션의 절차를 따르기 전에 AWS 계정가 필요합니다. Amazon Aurora 작업을 위한 설정 작업을 완료합니다. 자세한 내용은 Amazon Aurora 환경 설정 섹션을 참조하세요. 또한 Aurora DB 클러스터를 생성하기 위한 다른 예비 단계도 완료해야 합니다. 자세한 내용은 Amazon Aurora DB 클러스터 생성 단원을 참조하십시오.

Amazon Aurora 글로벌 데이터베이스 생성

경우에 따라, 글로벌 호환되는 Aurora 데이터베이스 엔진을 실행하는 기존의 Aurora 프로비저닝된 DB 클러스터가 있을 수 있습니다. 이 경우, 다른 AWS 리전을 추가하여 Aurora Global Database를 생성할 수 있습니다. 그렇게 하려면 Amazon Aurora Global Database에 AWS 리전 추가 단원을 참조하세요.

AWS Management Console, AWS CLI 또는 RDS API를 사용하여 Aurora Global Database를 만들려면 다음 단계를 따르세요.

Aurora Global Database 생성 단계는 Aurora Global Database 기능을 지원하는 AWS 리전에 로그인하는 것으로 시작됩니다. 전체 목록은 Aurora 글로벌 데이터베이스 단원을 참조하세요.

다음 단계 중 하나는 Aurora DB 클러스터에 Amazon VPC 기반 Virtual Private Cloud(VPC)를 선택하는 것입니다. 사용자의 VPC를 사용하려면 VPC를 선택할 수 있도록 미리 생성해 두는 것이 좋습니다. 동시에, 관련 서브넷을 생성하고 필요에 따라 서브넷 그룹 및 보안 그룹을 생성합니다. 방법을 알아보려면 자습서: DB 인스턴스에 사용할 Amazon VPC 생성을 참조하세요.

Aurora DB 클러스터 생성에 대한 일반적인 내용은 Amazon Aurora DB 클러스터 생성 단원을 참조하세요.

Aurora 글로벌 데이터베이스를 생성하려면
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 데이터베이스 생성을 선택합니다. 데이터베이스 생성 페이지에서 다음을 수행합니다.

    • 데이터베이스 생성 방법으로 [표준 생성(Standard Create)]을 선택합니다. (손쉬운 생성을 선택하지 마세요.)

    • Engine type엔진 옵션 섹션에서 해당하는 엔진 유형인 Aurora(MySQL 호환) 또는 Aurora(PostgreSQL 호환)를 선택합니다.

  3. 다음 절차의 단계를 사용하여 Aurora Global Database 만들기를 계속합니다.

Aurora MySQL을 사용하여 글로벌 데이터베이스 생성

다음 단계는 Aurora MySQL의 모든 버전에 적용됩니다.

Aurora MySQL을 사용하여 Aurora Global Database를 생성하는 방법

데이터베이스 생성(Create database) 페이지를 완료합니다.

  1. Engine options(엔진 옵션)의 경우 다음을 선택합니다.

    1. Show filters(필터 표시)를 확장한 다음 Show versions that support the global database feature(글로벌 데이터베이스 기능을 지원하는 버전 표시)를 켭니다.

    2. Engine version(엔진 버전)의 경우 Aurora Global Database에 사용할 Aurora MySQL의 버전을 선택합니다.

      
                        Aurora MySQL DB 클러스터 생성 시 엔진 유형, 엔진 버전 선택 사항의 스크린샷(Aurora Global Database의 첫 단계)
  2. 템플릿의 경우, 프로덕션을 선택합니다. 또는 사용 사례에 적합한 경우 개발/테스트를 선택할 수 있습니다. 프로덕션 환경에서 개발/테스트를 사용하지 마십시오.

  3. 설정에서 다음을 수행합니다.

    1. DB 클러스터 식별자에 대한 의미 있는 이름을 입력합니다. Aurora 글로벌 데이터베이스 생성을 마치면 이 이름은 기본 DB 클러스터를 식별합니다.

    2. DB 인스턴스의 admin 사용자 계정에 대한 고유한 암호를 입력하거나 사용자를 위해 Aurora를 생성합니다. 암호 자동 생성을 선택하면 암호를 복사할 수 있는 옵션이 표시됩니다.

      
                글로벌 데이터베이스를 생성할 때 설정 선택 사항의 스크린샷.
  4. [DB 인스턴스 클래스(DB instance class)]에서 db.r5.large 또는 다른 메모리 최적화 DB 인스턴스 클래스를 선택합니다. db.r5 이상의 인스턴스 클래스를 사용하는 것이 좋습니다.

    
                DB 인스턴스 클래스의 스크린샷.
  5. 가용성 및 내구성의 경우 다른 가용 영역(AZ)에서 Aurora가 Aurora 복제본을 생성하도록 선택하는 것이 좋습니다. 지금 Aurora 복제본을 생성하지 않으면 나중에 복제본을 생성해야 합니다.

    
                가용성 및 내구성의 스크린 샷.
  6. Connectivity(연결)의 경우 이 DB 인스턴스의 가상 네트워킹 환경을 정의하는 Amazon VPC을 기반으로 하는 Virtual Private Cloud(VPC)를 선택합니다. 기본값을 선택하여 이 작업을 단순화할 수 있습니다.

  7. 데이터베이스 인증 설정을 완료합니다. 프로세스를 단순화하기 위해 지금 암호 인증을 선택하고 AWS Identity and Access Management(IAM)을 나중에 설정할 수 있습니다.

  8. 추가 구성에서 다음을 수행합니다.

    1. 이 클러스터의 기본 Aurora DB 인스턴스를 생성하려면 초기 데이터베이스 이름에 이름을 입력합니다. Aurora 기본 DB 클러스터의 라이터 노드입니다.

      사용할 사용자 지정 파라미터 그룹이 없는 경우 DB 클러스터 파라미터 그룹 및 DB 파라미터 그룹에 대해 기본값을 선택된 상태로 둡니다.

    2. [역추적 사용(Enable backtrack)] 확인란 선택을 취소합니다(선택되어 있는 경우). Aurora Global Database는 역추적을 지원하지 않습니다. 그렇지 않으면 추가 구성에 다른 기본 설정을 적용할 수 있습니다.

  9. 데이터베이스 생성을 선택합니다.

    Aurora DB 인스턴스, 이 Aurora 복제본 및 Aurora DB 클러스터 생성 프로세스를 완료하기 위해 Aurora에 몇 분 정도 소요될 수 있습니다. Aurora DB 클러스터를 Aurora Global Database에서 기본 DB 클러스터로 사용할 준비가 된 시기를 해당 상태로 알 수 있습니다. 이 경우, 해당 상태와 라이터 및 복제본 노드의 상태는 다음과 같이 사용 가능입니다.

    
                    Aurora Global Database에 사용할 준비가 된 Aurora DB 클러스터가 있는 데이터베이스의 스크린샷.

기본 DB 클러스터를 사용할 수 있는 경우 보조 클러스터를 추가하여 Aurora Global Database를 생성합니다. 이렇게 하려면 Amazon Aurora Global Database에 AWS 리전 추가 섹션의 단계를 따르세요.

Aurora PostgreSQL을 사용하여 글로벌 데이터베이스 생성

Aurora PostgreSQL을 사용하여 Aurora Global Database를 생성하는 방법

데이터베이스 생성(Create database) 페이지를 완료합니다.

  1. Engine options(엔진 옵션)의 경우 다음을 선택합니다.

    1. Show filters(필터 표시)를 확장한 다음 Show versions that support the global database feature(글로벌 데이터베이스 기능을 지원하는 버전 표시)를 켭니다.

    2. Engine version(엔진 버전)의 경우 Aurora Global Database에 사용할 Aurora PostgreSQL의 버전을 선택합니다.

      
                        Aurora PostgreSQL DB 클러스터 생성 시 엔진 유형, 엔진 버전 선택 사항의 스크린샷(Aurora Global Database의 첫 단계)
  2. 템플릿의 경우, 프로덕션을 선택합니다. 또는 해당하는 경우 개발/테스트를 선택할 수 있습니다. 프로덕션 환경에서 개발/테스트를 사용하지 마십시오.

  3. 설정에서 다음을 수행합니다.

    1. DB 클러스터 식별자에 대한 의미 있는 이름을 입력합니다. Aurora 글로벌 데이터베이스 생성을 마치면 이 이름은 기본 DB 클러스터를 식별합니다.

    2. DB 인스턴스의 사용자 계정에 대한 고유한 암호를 입력하거나 사용자를 위해 Aurora를 생성합니다. 암호 자동 생성을 선택하면 암호를 복사할 수 있는 옵션이 표시됩니다.

      
                  글로벌 데이터베이스를 생성할 때 설정 선택 사항의 스크린샷.
  4. [DB 인스턴스 클래스(DB instance class)]에서 db.r5.large 또는 다른 메모리 최적화 DB 인스턴스 클래스를 선택합니다. db.r5 이상의 인스턴스 클래스를 사용하는 것이 좋습니다.

    
                    DB 인스턴스 클래스의 스크린샷.
  5. Availability & durability(가용성 및 내구성)의 경우 다른 AZ에서 Aurora 복제본을 생성하도록 Aurora를 선택하기를 권장합니다. 지금 Aurora 복제본을 생성하지 않으면 나중에 복제본을 생성해야 합니다.

  6. 연결의 경우 이 DB 인스턴스의 가상 네트워킹 환경을 정의하는 Amazon VPC을 기반으로 하는 Virtual Private Cloud(VPC)를 선택합니다. 기본값을 선택하여 이 작업을 단순화할 수 있습니다.

  7. (선택 사항) Database authentication(데이터베이스 인증) 설정을 완료합니다. 암호 인증이 항상 사용됩니다. 프로세스를 단순화하기 위해 이 섹션을 건너뛰고 나중에 IAM 또는 암호 및 Kerberos 인증을 설정할 수 있습니다.

  8. 추가 구성에서 다음을 수행합니다.

    1. 이 클러스터의 기본 Aurora DB 인스턴스를 생성하려면 초기 데이터베이스 이름에 이름을 입력합니다. Aurora 기본 DB 클러스터의 라이터 노드입니다.

      사용할 사용자 지정 파라미터 그룹이 없는 경우 DB 클러스터 파라미터 그룹 및 DB 파라미터 그룹에 대해 기본값을 선택된 상태로 둡니다.

    2. 암호화, 로그 내보내기 등의 추가 구성에 대한 다른 모든 기본 설정을 적용합니다.

  9. 데이터베이스 생성을 선택합니다.

    Aurora DB 인스턴스, 이 Aurora 복제본 및 Aurora DB 클러스터 생성 프로세스를 완료하기 위해 Aurora에 몇 분 정도 소요될 수 있습니다. 클러스터를 사용할 준비가 되면 Aurora DB 클러스터와 해당 라이터 및 복제본 노드의 상태가 [사용 가능(Available)]으로 표시됩니다. 이것은 보조 데이터베이스를 추가하면 Aurora 글로벌 데이터베이스의 기본 DB 클러스터가 됩니다.

    
                    Aurora Global Database에 사용할 준비가 된 Aurora DB 클러스터가 있는 데이터베이스의 스크린샷.

기본 DB 클러스터가 사용할 수 있게 되면 Amazon Aurora Global Database에 AWS 리전 추가의 단계에 따라 보조 클러스터를 하나 이상 생성합니다.

다음 절차의 AWS CLI 명령은 다음 작업을 수행합니다.

  1. Aurora Global Database를 만들고 이름을 지정하며 사용할 Aurora 데이터베이스 엔진 유형을 지정합니다.

  2. Aurora 글로벌 데이터베이스에 대한 Aurora DB 클러스터를 생성합니다.

  3. 클러스터에 대한 Aurora DB 인스턴스를 생성합니다. 이것은 글로벌 데이터베이스의 기본 Aurora DB 클러스터입니다.

  4. Aurora DB 클러스터용 두 번째 DB 인스턴스를 생성합니다. Aurora DB 클러스터를 완료하기 위한 리더입니다.

  5. Amazon Aurora Global Database에 AWS 리전 추가의 다음 단계에 따라 다른 리전에서 두 번째 Aurora DB 클러스터를 생성한 다음 Aurora 글로벌 데이터베이스에 추가합니다.

Aurora 데이터베이스 엔진에 대한 절차를 따릅니다.

Aurora MySQL을 사용하여 글로벌 데이터베이스 생성

Aurora MySQL을 사용하여 Aurora Global Database를 생성하는 방법
  1. create-global-cluster CLI 명령을 사용하여 AWS 리전, Aurora 데이터베이스 엔진 및 버전의 이름을 전달합니다.

    Linux, macOS, Unix:

    aws rds create-global-cluster --region primary_region \ --global-cluster-identifier global_database_id \ --engine aurora-mysql \ --engine-version version # optional

    Windows의 경우:

    aws rds create-global-cluster ^ --global-cluster-identifier global_database_id ^ --engine aurora-mysql ^ --engine-version version # optional

    이러면 이름 (식별자) 및 Aurora 데이터베이스 엔진이 포함된 "빈" Aurora 글로벌 데이터베이스가 생성됩니다. Aurora 글로벌 데이터베이스를 사용할 수 있기까지 몇 분 정도 걸릴 수 있습니다. 다음 단계로 넘어가기 전에 describe-global-clusters CLI 명령을 사용하여 사용할 수 있는지 확인합니다.

    aws rds describe-global-clusters --region primary_region --global-cluster-identifier global_database_id

    Aurora 글로벌 데이터베이스를 사용할 수 있는 경우 기본 Aurora DB 클러스터를 생성할 수 있습니다.

  2. 기본 Aurora DB 클러스터를 생성하려면 create-db-cluster CLI 명령을 사용합니다. --global-cluster-identifier 파라미터를 사용하여 Aurora 글로벌 데이터베이스의 이름을 포함합니다.

    Linux, macOS, Unix:

    aws rds create-db-cluster \ --region primary_region \ --db-cluster-identifier primary_db_cluster_id \ --master-username userid \ --master-user-password password \ --engine aurora-mysql \ --engine-version version \ --global-cluster-identifier global_database_id

    Windows의 경우:

    aws rds create-db-cluster ^ --region primary_region ^ --db-cluster-identifier primary_db_cluster_id ^ --master-username userid ^ --master-user-password password ^ --engine aurora-mysql ^ --engine-version version ^ --global-cluster-identifier global_database_id

    describe-db-clusters AWS CLI 명령을 사용하여 Aurora DB 클러스터가 준비되었는지 확인합니다. 특정 Aurora DB 클러스터를 골라 내려면 --db-cluster-identifier 파라미터를 사용합니다. 또는 명령에 Aurora DB 클러스터 이름을 생략하여 지정된 리전의 모든 Aurora DB 클러스터에 대한 세부 정보를 얻을 수 있습니다.

    aws rds describe-db-clusters --region primary_region --db-cluster-identifier primary_db_cluster_id

    응답에 클러스터에 대한 "Status": "available"이 표시되면 사용할 준비가 된 것입니다.

  3. 기본 Aurora DB 클러스터에 대한 DB 인스턴스를 생성합니다. 이렇게 하려면 create-db-instance CLI 명령을 사용합니다. 명령에 Aurora DB 클러스터의 이름을 지정하고 인스턴스에 대한 구성 세부 정보를 지정합니다. Aurora DB 클러스터에서 파라미터를 가져오므로 명령에서 --master-username--master-user-password 파라미터를 전달할 필요가 없습니다.

    --db-instance-class의 경우 메모리 최적화 클래스의 인스턴스 클래스(예: db.r5.large)만 사용할 수 있습니다. db.r5 이상의 인스턴스 클래스를 사용하는 것이 좋습니다. DB 인스턴스 클래스에 대한 자세한 내용은 DB 인스턴스 클래스를 참조하세요.

    Linux, macOS, Unix:

    aws rds create-db-instance \ --db-cluster-identifier primary_db_cluster_id \ --db-instance-class instance_class \ --db-instance-identifier db_instance_id \ --engine aurora-mysql \ --engine-version version \ --region primary_region

    Windows의 경우:

    aws rds create-db-instance ^ --db-cluster-identifier primary_db_cluster_id ^ --db-instance-class instance_class ^ --db-instance-identifier db_instance_id ^ --engine aurora-mysql ^ --engine-version version ^ --region primary_region

    create-db-instance 작업을 완료하는 데 다소 시간이 걸립니다. 계속하기 전에 상태를 확인하여 Aurora DB 인스턴스를 사용할 수 있는지 확인합니다.

    aws rds describe-db-clusters --db-cluster-identifier primary_db_cluster_id

    명령이 "사용 가능" 상태를 반환하면 기본 DB 클러스터에 대해 다른 Aurora DB 인스턴스를 생성할 수 있습니다. Aurora DB 클러스터의 읽기 전용 인스턴스 ( Aurora 복제본) 입니다.

  4. 클러스터에 대한 다른 Aurora DB 인스턴스를 생성하려면 create-db-instance CLI 명령을 사용합니다.

    Linux, macOS, Unix:

    aws rds create-db-instance \ --db-cluster-identifier primary_db_cluster_id \ --db-instance-class instance_class \ --db-instance-identifier replica_db_instance_id \ --engine aurora-mysql

    Windows의 경우:

    aws rds create-db-instance ^ --db-cluster-identifier primary_db_cluster_id ^ --db-instance-class instance_class ^ --db-instance-identifier replica_db_instance_id ^ --engine aurora-mysql

DB 인스턴스를 사용할 수 있는 경우 라이터 노드에서 복제본으로의 복제가 시작됩니다. 계속하기 전에 describe-db-instances CLI 명령으로 DB 인스턴스를 사용할 수 있는지 확인합니다.

이때 라이터 DB 인스턴스와 Aurora 복제본이 포함된 기본 Aurora DB 클러스터가 있는 Aurora 글로벌 데이터베이스가 있습니다. 이제 다른 리전에 읽기 전용 Aurora DB 클러스터를 추가하여 Aurora 글로벌 데이터베이스를 완료할 수 있습니다. 이렇게 하려면 Amazon Aurora Global Database에 AWS 리전 추가 단원의 절차를 따르십시오.

Aurora PostgreSQL을 사용하여 글로벌 데이터베이스 생성

다음 명령을 사용하여 Aurora Global Database에 대한 Aurora 객체를 생성할 때 각 객체를 사용할 수 있게 되려면 몇 분 정도 걸릴 수 있습니다. 지정된 명령을 완료한 후 특정 Aurora 객체의 상태를 확인하여 해당 상태를 사용할 수 있는지 확인하는 것이 좋습니다.

이렇게 하려면 describe-global-clusters CLI 명령을 사용합니다.

aws rds describe-global-clusters --region primary_region --global-cluster-identifier global_database_id
Aurora PostgreSQL을 사용하여 Aurora 글로벌 데이터베이스를 생성하려면
  1. create-global-cluster CLI 명령을 사용합니다.

    Linux, macOS, Unix:

    aws rds create-global-cluster --region primary_region \ --global-cluster-identifier global_database_id \ --engine aurora-postgresql \ --engine-version version # optional

    Windows의 경우:

    aws rds create-global-cluster ^ --global-cluster-identifier global_database_id ^ --engine aurora-postgresql ^ --engine-version version # optional

    Aurora 글로벌 데이터베이스를 사용할 수 있는 경우 기본 Aurora DB 클러스터를 생성할 수 있습니다.

  2. 기본 Aurora DB 클러스터를 생성하려면 create-db-cluster CLI 명령을 사용합니다. --global-cluster-identifier 파라미터를 사용하여 Aurora 글로벌 데이터베이스의 이름을 포함합니다.

    Linux, macOS, Unix:

    aws rds create-db-cluster \ --region primary_region \ --db-cluster-identifier primary_db_cluster_id \ --master-username userid \ --master-user-password password \ --engine aurora-postgresql \ --engine-version version \ --global-cluster-identifier global_database_id

    Windows의 경우:

    aws rds create-db-cluster ^ --region primary_region ^ --db-cluster-identifier primary_db_cluster_id ^ --master-username userid ^ --master-user-password password ^ --engine aurora-postgresql ^ --engine-version version ^ --global-cluster-identifier global_database_id

    Aurora DB 클러스터가 준비되었는지 확인합니다. 다음 명령의 응답에 Aurora DB 클러스터에 대한 "Status": "available"가 표시되면 계속할 수 있습니다.

    aws rds describe-db-clusters --region primary_region --db-cluster-identifier primary_db_cluster_id
  3. 기본 Aurora DB 클러스터에 대한 DB 인스턴스를 생성합니다. 이렇게 하려면 create-db-instance CLI 명령을 사용합니다.

    Aurora DB 클러스터의 이름을 --db-cluster-identifier 파라미터와 함께 전달

    Aurora DB 클러스터에서 파라미터를 가져오므로 명령에서 --master-username--master-user-password 파라미터를 전달할 필요가 없습니다.

    --db-instance-class의 경우 메모리 최적화 클래스의 인스턴스 클래스(예: db.r5.large)만 사용할 수 있습니다. db.r5 이상의 인스턴스 클래스를 사용하는 것이 좋습니다. DB 인스턴스 클래스에 대한 자세한 내용은 DB 인스턴스 클래스를 참조하세요.

    Linux, macOS, Unix:

    aws rds create-db-instance \ --db-cluster-identifier primary_db_cluster_id \ --db-instance-class instance_class \ --db-instance-identifier db_instance_id \ --engine aurora-postgresql \ --engine-version version \ --region primary_region

    Windows의 경우:

    aws rds create-db-instance ^ --db-cluster-identifier primary_db_cluster_id ^ --db-instance-class instance_class ^ --db-instance-identifier db_instance_id ^ --engine aurora-postgresql ^ --engine-version version ^ --region primary_region
  4. 계속하기 전에 Aurora DB 인스턴스의 상태를 확인합니다.

    aws rds describe-db-clusters --db-cluster-identifier primary_db_cluster_id

    응답에 Aurora DB 인스턴스 상태가 "사용 가능"으로 표시되면 기본 DB 클러스터에 대해 다른 Aurora DB 인스턴스를 생성할 수 있습니다.

  5. Aurora DB 클러스터용 Aurora 복제본을 생성하려면 create-db-instance CLI 명령을 사용합니다.

    Linux, macOS, Unix:

    aws rds create-db-instance \ --db-cluster-identifier primary_db_cluster_id \ --db-instance-class instance_class \ --db-instance-identifier replica_db_instance_id \ --engine aurora-postgresql

    Windows의 경우:

    aws rds create-db-instance ^ --db-cluster-identifier primary_db_cluster_id ^ --db-instance-class instance_class ^ --db-instance-identifier replica_db_instance_id ^ --engine aurora-postgresql

DB 인스턴스를 사용할 수 있는 경우 라이터 노드에서 복제본으로의 복제가 시작됩니다. 계속하기 전에 describe-db-instances CLI 명령으로 DB 인스턴스를 사용할 수 있는지 확인합니다.

Aurora 글로벌 데이터베이스는 존재하지만, 라이터 DB 인스턴스와 Aurora 복제본으로 구성된 Aurora DB 클러스터가 있는 기본 리전만 있습니다. 이제 다른 리전에 읽기 전용 Aurora DB 클러스터를 추가하여 Aurora 글로벌 데이터베이스를 완료할 수 있습니다. 이렇게 하려면 Amazon Aurora Global Database에 AWS 리전 추가 단원의 절차를 따르십시오.

RDS API를 사용하여 Aurora Global Database를 생성하려면 CreateGlobalCluster 작업을 실행합니다.

Amazon Aurora Global Database에 AWS 리전 추가

Aurora Global Database에는 기본 Aurora DB 클러스터와 다른 AWS 리전에서 최소 한 개의 보조 Aurora DB 클러스터가 필요합니다. Aurora Global Database에 최대 5개의 보조 DB 클러스터를 연결할 수 있습니다. Aurora Global Database에 추가하는 각 보조 DB 클러스터에 대해 기본 DB 클러스터에 허용되는 Aurora 복제본 수를 하나씩 줄입니다.

예를 들어 Aurora 글로벌 데이터베이스에 5개의 세컨더리 리전이 있는 경우 프라이머리 DB 클러스터에는 15개가 아닌 10개의 Aurora 복제본만 있을 수 있습니다. 자세한 내용은 Amazon Aurora Global Database의 구성 요구 사항 섹션을 참조하세요.

프라이머리 DB 클러스터의 Aurora 복제본(읽기 인스턴스) 수에 따라 추가할 수 있는 세컨더리 DB 클러스터 수가 결정됩니다. 프라이머리 DB 클러스터의 총 리더 인스턴스 수와 세컨더리 클러스터 수는 15를 초과할 수 없습니다. 예를 들어 프라이머리 DB 클러스터에 14개의 리더 인스턴스와 1개의 세컨더리 클러스터가 있는 경우 글로벌 데이터베이스에 다른 세컨더리 클러스터를 추가할 수 없습니다.

참고

Aurora MySQL 버전 3의 경우 보조 클러스터를 만들 때 lower_case_table_names 값이 기본 클러스터 값과 일치하는지 확인하세요. 이 설정은 서버가 식별자 대소문자 구분을 처리하는 방법에 영향을 주는 데이터베이스 파라미터입니다. 데이터베이스 파라미터에 대한 자세한 내용은 파라미터 그룹 작업 내용을 참조하세요.

보조 클러스터를 생성할 때는 기본 클러스터와 보조 클러스터에 동일한 DB 엔진 버전을 사용하는 것이 좋습니다. 필요한 경우 기본 클러스터를 보조 클러스터와 동일한 버전으로 업그레이드합니다. 자세한 내용은 관리형 리전 간 전환 및 장애 조치를 위한 패치 수준 호환성 섹션을 참조하세요.

Aurora Global Database에 AWS 리전 추가
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. AWS Management Console의 탐색 창에서 데이터베이스를 선택합니다.

  3. 보조 Aurora DB 클러스터가 필요한 Aurora 글로벌 데이터베이스를 선택합니다. 기본 Aurora DB 클러스터가 Available인지 확인합니다.

  4. Actions(작업)에서 Add region(리전 추가)을 선택합니다.

    
                작업 메뉴에서 '리전 추가'를 선택한 상태로 프로비저닝된 DB 클러스터를 보여주는 스크린샷입니다.
  5. 리전 추가 페이지에서 보조 AWS 리전을 선택합니다.

    동일한 Aurora Global Database에 대해 보조 Aurora DB 클러스터가 이미 있는 AWS 리전을 선택할 수 없습니다. 또한 이는 기본 Aurora DB 클러스터와 동일한 리전이 될 수 없습니다.

    
                  Aurora 글로벌 데이터베이스의 리전 추가 페이지입니다.
  6. 새 AWS 리전에서 보조 Aurora 클러스터에 대한 나머지 필드를 완료합니다. 이 옵션은 Aurora DB 클러스터 인스턴스와 동일한 구성 옵션입니다. 단, Aurora MySQL–기반 Aurora Global Database에 대해 다음 옵션만 적용됩니다.

  7. 리전 추가를 선택합니다.

Aurora Global Database에 리전 추가를 완료한 다음 스크린샷에서 보듯이 AWS Management Console의 [데이터베이스(Databases)] 목록에서 확인할 수 있습니다.


            보조 클러스터를 보여주는 스크린샷은 이제 Aurora Global Database의 일부입니다.
Aurora Global Database에 보조 AWS 리전을 추가하는 방법
  1. create-db-cluster CLI 명령을 Aurora Global Database의 이름(--global-cluster-identifier)과 함께 사용합니다. 기타 명령 파라미터에서 다음을 수행합니다.

  2. --region의 경우 Aurora 기본 리전과 다른 AWS 리전을 선택합니다.

  3. --engine--engine-version 파라미터의 구체적인 값을 선택합니다. 이러한 값은 Aurora Global Database의 기본 Aurora DB 클러스터에 대한 값과 같습니다.

  4. 암호화된 클러스터의 경우 기본 AWS 리전을 암호화에 대한 --source-region로 지정합니다.

다음 예제에서는 새 Aurora DB 클러스터를 생성하여 Aurora Global Database에 읽기 전용 보조 Aurora DB 클러스터로 연결합니다. 마지막 단계에서 Aurora DB 인스턴스가 새 Aurora DB 클러스터에 추가됩니다.

Linux, macOS, Unix:

aws rds --region secondary_region \ create-db-cluster \ --db-cluster-identifier secondary_cluster_id \ --global-cluster-identifier global_database_id \ --engine aurora-mysql|aurora-postgresql --engine-version version aws rds --region secondary_region \ create-db-instance \ --db-instance-class instance_class \ --db-cluster-identifier secondary_cluster_id \ --db-instance-identifier db_instance_id \ --engine aurora-mysql|aurora-postgresql

Windows의 경우:

aws rds --region secondary_region ^ create-db-cluster ^ --db-cluster-identifier secondary_cluster_id ^ --global-cluster-identifier global_database_id_id ^ --engine aurora-mysql|aurora-postgresql ^ --engine-version version aws rds --region secondary_region ^ create-db-instance ^ --db-instance-class instance_class ^ --db-cluster-identifier secondary_cluster_id ^ --db-instance-identifier db_instance_id ^ --engine aurora-mysql|aurora-postgresql

RDS API를 사용하여 새 AWS 리전을 Aurora Global Database에 추가하려면 CreateDBCluster 작업을 실행합니다. GlobalClusterIdentifier 파라미터를 사용하여 기존 글로벌 데이터베이스의 식별자를 지정합니다.

보조 리전에 헤드리스 Aurora DB 클러스터 생성

Aurora Global Database는 기본 클러스터와 다른 AWS 리전에 하나 이상의 보조 Aurora DB 클러스터가 필요하지만, 보조 클러스터에 headless 구성을 사용할 수 있습니다. 헤드리스 세컨더리 Aurora DB 클러스터는 DB 인스턴스가 없는 클러스터입니다. 이 유형의 구성은 Aurora Global Database에 대한 비용을 줄일 수 있습니다. Aurora DB 클러스터에서는 컴퓨팅과 스토리지가 분리되어 있습니다. DB 인스턴스가 없으면 컴퓨팅 요금이 청구되지 않고 스토리지 요금만 청구됩니다. 올바르게 설정되면, 헤드리스 보조 스토리지 볼륨이 기본 Aurora DB 클러스터와 동기화 상태를 유지합니다.

Aurora Global Database를 생성할 때 보통 때처럼 보조 클러스터를 추가합니다. 그러나 프라이머리 Aurora DB 클러스터가 세컨더리 DB 클러스터로 복제되기 시작한 후에는 세컨더리 Aurora DB 클러스터에서 Aurora 읽기 전용 DB 인스턴스를 삭제합니다. 이 세컨더리 클러스터에는 더 이상 DB 인스턴스가 없기 때문에 “헤드리스”로 간주됩니다. 그러나 스토리지 볼륨은 기본 Aurora DB 클러스터와 동기화 상태를 유지합니다.

주의

Aurora PostgreSQL을 사용하여 보조 AWS 리전에 헤드리스 클러스터를 생성하려면 AWS CLI 또는 RDS API를 사용하여 보조 AWS 리전을 추가합니다. 세컨더리 클러스터에 대한 리더 DB 인스턴스를 생성하는 단계를 건너뜁니다. 현재 헤드리스 클러스터 생성은 RDS 콘솔에서 지원되지 않습니다. 사용할 CLI 및 API 프로시저는 Amazon Aurora Global Database에 AWS 리전 추가 섹션을 참조하세요.

글로벌 데이터베이스에서 13.4, 12.8 또는 11.13 미만의 엔진 버전을 사용하는 경우 보조 리전에 리더 DB 인스턴스를 생성한 후 삭제하면 기본 리전의 라이터 DB 인스턴스에서 Aurora PostgreSQL 진공 문제가 발생할 수 있습니다. 이 문제가 발생하면 세컨더리 리전의 리더 DB 인스턴스를 삭제한 후 프라이머리 리전의 라이터 DB 인스턴스를 다시 시작합니다.

Aurora Global Database에 헤드리스 보조 Aurora DB 클러스터를 추가하는 방법
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. AWS Management Console의 탐색 창에서 데이터베이스를 선택합니다.

  3. 보조 Aurora DB 클러스터가 필요한 Aurora 글로벌 데이터베이스를 선택합니다. 기본 Aurora DB 클러스터가 Available인지 확인합니다.

  4. Actions(작업)에서 Add region(리전 추가)을 선택합니다.

  5. 리전 추가 페이지에서 보조 AWS 리전을 선택합니다.

    동일한 Aurora Global Database에 대해 보조 Aurora DB 클러스터가 이미 있는 AWS 리전을 선택할 수 없습니다. 또한 이는 기본 Aurora DB 클러스터와 동일한 리전이 될 수 없습니다.

  6. 새 AWS 리전에서 보조 Aurora 클러스터에 대한 나머지 필드를 작성합니다. 이 옵션은 Aurora DB 클러스터 인스턴스와 동일한 구성 옵션입니다.

    Aurora MySQL–기반 Aurora Global Database의 경우, Enable read replica write forwarding(읽기 복제본 쓰기 전달 활성화) 옵션을 무시합니다. 리더 인스턴스를 삭제한 후에는 이 옵션을 사용할 수 없습니다.

  7. 리전 추가를 선택합니다. Aurora Global Database에 리전 추가를 완료한 다음 스크린샷에서 보듯이 AWS Management Console의 [데이터베이스(Databases)] 목록에서 확인할 수 있습니다.

    
            해당 리더 인스턴스와 함께 보조 클러스터를 보여 주는 스크린샷은 이제 Aurora Global Database의 일부입니다.
  8. 계속하기 전에 AWS Management Console 또는 AWS CLI를 사용하여 보조 Aurora DB 클러스터 및 해당 리더 인스턴스의 상태를 확인합니다. 예:

    $ aws rds describe-db-clusters --db-cluster-identifier secondary-cluster-id --query '*[].[Status]' --output text

    새로 추가된 세컨더리 Aurora DB 클러스터의 상태가 creating에서 available로 변경되려면 몇 분 정도 걸릴 수 있습니다. Aurora DB 클러스터를 사용할 수 있게 되면 리더 인스턴스를 삭제할 수 있습니다.

  9. 세컨더리 Aurora DB 클러스터에서 리더 인스턴스를 선택한 후 [삭제(Delete)]를 선택합니다.

    
              리더 인스턴스가 선택되고 삭제할 준비가 되었음을 보여주는 스크린샷.

리더 인스턴스를 삭제한 후 세컨더리 클러스터는 Aurora 글로벌 데이터베이스의 일부로 남습니다. 다음과 같이 연결된 인스턴스가 없습니다.


        헤드리스 세컨더리 DB 클러스터를 보여주는 스크린샷.

이러한 중단이 발생할 경우 이 헤드리스 보조 Aurora DB 클러스터를 사용하여 기본 AWS 리전의 계획되지 않은 중단으로부터 Amazon Aurora Global Database를 수동으로 복구할 수 있습니다.

Amazon Aurora Global Database에 스냅샷 사용

Aurora DB 클러스터의 스냅샷을 복원하거나 Amazon RDS DB 인스턴스에서 복원하여 Aurora 글로벌 데이터베이스의 시작점으로 사용할 수 있습니다. 스냅샷을 복원하고 새로운 Aurora 프로비저닝된 DB 클러스터를 동시에 생성합니다. 그런 다음 복원된 DB 클러스터에 다른 AWS 리전을 추가하여 Aurora Global Database로 전환합니다. 이 방법으로 스냅샷을 사용하여 생성하는 모든 Aurora DB 클러스터는 Aurora Global Database의 기본 클러스터가 됩니다.

사용하는 스냅샷은 DB 클러스터에서 provisioned 생성되거나 serverless Aurora DB 클러스터에서 생성될 수 있습니다.

복원 프로세스 중에 스냅샷과 동일한 DB 엔진 유형을 선택합니다. 예를 들어, Aurora PostgreSQL을 실행 중인 Aurora Serverless DB 클러스터에서 만든 스냅샷을 복원하려는 상황을 가정해 보겠습니다. 이 경우, 동일한 Aurora DB 엔진과 버전을 사용하여 Aurora PostgreSQL DB 클러스터를 생성합니다.

AWS 리전을 추가할 때 복원된 DB 클러스터는 Aurora Global Database에 대한 기본 클러스터 역할을 가정합니다. 이 기본 클러스터에 포함된 모든 데이터는 Aurora Global Database에 추가하는 보조 클러스터에 복제됩니다.


            Aurora Global Database에 대한 복원 스냅샷 페이지를 보여주는 스크린샷.