Aurora MySQL의 교차 리전 읽기 전용 복제본 DB 클러스터 생성
AWS Management Console, AWS Command Line Interface(AWS CLI) 또는 Amazon RDS API를 사용하여 교차 리전 읽기 전용 복제본인 Aurora DB 클러스터를 만들 수 있습니다. 암호화된 및 암호화되지 않은 DB 클러스터에서 모두 리전 간 읽기 전용 복제본을 만들 수 있습니다.
AWS Management Console을 사용하여 Aurora MySQL에 대한 교차 리전 읽기 전용 복제본을 만드는 경우, Amazon RDS는 대상 AWS 리전에 DB 클러스터를 만든 다음 해당 DB 클러스터의 기본 인스턴스인 DB 인스턴스를 자동으로 만듭니다.
AWS CLI 또는 RDS API를 사용하여 리전 간 읽기 전용 복제본을 만드는 경우, 먼저 대상 AWS 리전에 DB 클러스터를 만들고 활성화될 때까지 기다립니다. 활성화되면 해당 DB 클러스터의 기본 인스턴스인 DB 인스턴스를 만듭니다.
읽기 전용 복제본 DB 클러스터의 기본 인스턴스를 사용할 수 있게 되면 복제가 시작됩니다.
다음 절차를 사용하여 Aurora MySQL DB 클러스터에서 리전 간 읽기 전용 복제본을 만듭니다. 이러한 절차는 암호화되었거나 암호화되지 않은 DB 클러스터에서 읽기 전용 복제본을 만드는 데 사용됩니다.
AWS Management Console을 사용하여 교차 리전 읽기 전용 복제본인 Aurora MySQL DB 클러스터를 만들려면
https://console.aws.amazon.com/rds/
에서 AWS Management Console에 로그인한 후 Amazon RDS 콘솔을 엽니다. -
AWS Management Console의 오른쪽 상단 모서리에서 소스 DB 클러스터를 호스팅하는 AWS 리전을 선택합니다.
-
탐색 창에서 Databases(데이터베이스)를 선택합니다.
-
리전 간 읽기 전용 복제본을 만들 DB 클러스터를 선택합니다.
-
작업(Actions)에서 리전 간 읽기 전용 복제본 만들기(Create cross-Region read replica)를 선택합니다.
-
다음 표에 설명되어 있는 대로 리전 간 읽기 전용 복제본 만들기 페이지에서 리전 간 읽기 전용 복제본 DB 클러스터의 옵션 설정을 선택합니다.
옵션 설명 대상 리전
새로운 리전 간 읽기 전용 복제본 DB 클러스터를 호스팅할 AWS 리전을 선택합니다.
[Destination DB subnet group]
리전 간 읽기 전용 복제본 DB 클러스터에 사용할 DB 서브넷 그룹을 선택합니다.
공개적으로 액세스할 수 있음(Publicly accessible)
리전 간 읽기 전용 복제본 DB 클러스터에 퍼블릭 IP 주소를 할당하려면 예를 선택하고, 그렇지 않으면 아니요를 선택합니다.
암호화(Encryption)
암호화 활성화(Enable Encryption)를 선택하면 이 DB 클러스터에 대해 미사용 데이터 암호화를 설정할 수 있습니다. 자세한 내용은 Amazon Aurora 리소스 암호화 단원을 참조하십시오.
AWS KMS key
[Encryption]을 [Enable Encryption]으로 설정한 경우에만 사용할 수 있습니다. 현재 DB 클러스터를 암호화하는 데 사용할 AWS KMS key을(를) 선택합니다. 자세한 내용은 Amazon Aurora 리소스 암호화 단원을 참조하십시오.
DB 인스턴스 클래스
DB 클러스터의 기본 인스턴스에 대한 처리 및 메모리 요건을 정의한 DB 인스턴스 클래스를 선택합니다. DB 인스턴스 클래스 옵션에 대한 자세한 정보는 Amazon Aurora DB 인스턴스 클래스 단원을 참조하십시오.
다중 AZ 배포
장애 조치 지원을 위해 대상 AWS 리전의 다른 가용 영역에 새 DB 클러스터의 읽기 전용 복제본을 만들려면 예를 선택합니다. 다중 가용 영역에 대한 자세한 내용은 리전 및 가용 영역 단원을 참조하십시오.
복제본 소스 읽기
리전 간 읽기 전용 복제본을 만들 원본 DB 클러스터를 선택합니다.
DB 인스턴스 식별자
리전 간 읽기 전용 복제본 DB 클러스터의 기본 인스턴스 이름을 입력합니다. 이 식별자는 새 DB 클러스터의 기본 인스턴스에 대한 엔드포인트 주소로 사용됩니다.
DB 인스턴스 식별자는 다음과 같은 제약 조건이 있습니다.
-
1~63자의 영숫자 문자 또는 하이픈으로 구성되어야 합니다.
-
첫 번째 문자는 글자이어야 합니다.
-
하이픈으로 끝나거나 하이픈이 2개 연속으로 이어져서는 안 됩니다.
-
개별 AWS 리전별로 각 AWS 계정의 모든 DB 인스턴스에 대해 고유해야 합니다.
리전 간 읽기 전용 복제본 DB 클러스터는 원본 DB 클러스터의 스냅샷으로 만드는 것이기 때문에 읽기 전용 복제본의 마스터 사용자 이름과 마스터 암호는 원본 DB 클러스터의 마스터 사용자 이름 및 마스터 암호와 동일합니다.
DB 클러스터 식별자
리전 간 읽기 전용 복제본 DB 클러스터의 이름을 입력합니다. 이 이름은 복제본의 대상 AWS 리전에서 사용자 계정에 고유한 이름이어야 합니다. 이 식별자는 DB 클러스터에 대한 클러스터 엔드포인트 주소로 사용됩니다. 클러스터 엔드포인트에 대한 자세한 내용은 Amazon Aurora 엔드포인트 연결 단원을 참조하십시오.
DB 클러스터 식별자는 다음과 같은 제약 조건이 있습니다.
-
1~63자의 영숫자 문자 또는 하이픈으로 구성되어야 합니다.
-
첫 번째 문자는 글자이어야 합니다.
-
하이픈으로 끝나거나 하이픈이 2개 연속으로 이어져서는 안 됩니다.
-
개별 AWS 계정별로 각 AWS 리전의 모든 DB 클러스터에 대해 고유해야 합니다.
우선 순위
새 DB 클러스터의 기본 인스턴스에 대한 장애 조치의 우선 순위를 선택합니다. 기본 인스턴스의 결함으로부터 복구할 때 이 우선 순위에 따라 Aurora 복제본이 승격되는 순서가 결정됩니다. 값을 선택하지 않을 경우 기본값은 tier-1입니다. 자세한 내용은 Aurora DB 클러스터의 내결함성 섹션을 참조하세요.
데이터베이스 포트
애플리케이션과 유틸리티가 데이터베이스에 액세스할 때 사용할 포트를 지정합니다. Aurora DB 클러스터는 기본적으로 MySQL 포트, 3306으로 지정됩니다. 일부 기업에서는 방화벽으로 이 포트에 대한 연결을 차단합니다. 이처럼 기업 방화벽이 기본 포트를 차단할 경우 새로운 DB 클러스터에 다른 포트를 선택해야 합니다.
확장 모니터링
DB 클러스터가 실행되는 운영 체제에 대한 실시간 지표 수집을 설정하려면 향상된 모니터링 사용 설정(Enable enhanced monitoring)을 선택합니다. 자세한 내용은 Enhanced Monitoring을 사용하여 OS 지표 모니터링 단원을 참조하십시오.
역할 모니터링
[Enhanced Monitoring]을 [Enable enhanced monitoring]으로 설정한 경우에만 사용할 수 있습니다. Amazon RDS가 Amazon CloudWatch Logs와 통신할 수 있도록 생성한 IAM 역할을 선택하거나 RDS가
rds-monitoring-role
라는 이름의 역할을 생성하도록 기본값을 선택합니다. 자세한 내용은 Enhanced Monitoring을 사용하여 OS 지표 모니터링 섹션을 참조하세요.세부 수준
[Enhanced Monitoring]을 [Enable enhanced monitoring]으로 설정한 경우에만 사용할 수 있습니다. DB 클러스터에 대해 지표를 수집하는 간격(초)을 설정하십시오.
마이너 버전 자동 업그레이드
이 설정은 Aurora MySQL DB 클러스터에 적용되지 않습니다.
Aurora MySQL의 엔진 업데이트에 대한 자세한 내용은 Amazon Aurora MySQL에 대한 데이터베이스 엔진 업데이트 단원을 참조하십시오.
-
-
Aurora의 리전 간 읽기 전용 복제본을 만들려면 생성을 선택합니다.
CLI를 사용하여 리전 간 읽기 전용 복제본인 Aurora MySQL DB 클러스터를 만들려면
-
읽기 전용 복제본 DB 클러스터를 만들려는 AWS 리전에서 AWS CLI create-db-cluster 명령을 호출합니다.
--replication-source-identifier
옵션을 포함시키고, 읽기 전용 복제본을 만들 원본 DB 클러스터의 Amazon 리소스 이름(ARN)을 지정합니다.--replication-source-identifier
로 식별되는 DB 클러스터가 암호화되는 교차 리전 복제의 경우--kms-key-id
옵션 및--storage-encrypted
옵션을 지정합니다.참고
--storage-encrypted
를 지정하고--kms-key-id
의 값을 제공하여 암호화되지 않은 DB 클러스터에서 암호화된 읽기 전용 복제본으로 리전 간 복제를 설정할 수 있습니다.--master-username
및--master-user-password
파라미터는 지정할 수 없습니다. 이러한 값은 원본 DB 클러스터에서 가져옵니다.다음 코드 예에서는 us-west-2 리전의 암호화되지 않은 DB 클러스터 스냅샷에서 us-east-1 리전에 읽기 전용 복제본을 만듭니다. 이 명령은 us-east-1 리전에서 호출됩니다. 이 예제에서는 마스터 사용자 암호를 생성하고 이를 Secrets Manager에서 관리하는
--manage-master-user-password
옵션을 지정합니다. 자세한 내용은 Amazon Aurora 및 AWS Secrets Manager를 통한 암호 관리 단원을 참조하십시오. 또는--master-password
옵션을 사용하여 암호를 직접 지정하고 관리할 수 있습니다.대상 LinuxmacOS, 또는Unix:
aws rds create-db-cluster \ --db-cluster-identifier sample-replica-cluster \ --engine aurora \ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster
Windows의 경우:
aws rds create-db-cluster ^ --db-cluster-identifier sample-replica-cluster ^ --engine aurora ^ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster
다음 코드 예에서는 us-west-2 리전의 암호화된 DB 클러스터 스냅샷에서 us-east-1 리전에 읽기 전용 복제본을 만듭니다. 이 명령은 us-east-1 리전에서 호출됩니다.
대상 LinuxmacOS, 또는Unix:
aws rds create-db-cluster \ --db-cluster-identifier sample-replica-cluster \ --engine aurora \ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster \ --kms-key-id
my-us-east-1-key
\ --storage-encryptedWindows의 경우:
aws rds create-db-cluster ^ --db-cluster-identifier sample-replica-cluster ^ --engine aurora ^ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster ^ --kms-key-id
my-us-east-1-key
^ --storage-encrypted이
--source-region
옵션은--replication-source-identifier
에서 식별된 DB 클러스터가 암호화되는 AWS GovCloud(미국 동부)와 AWS GovCloud(미국 서부) 리전 간의 교차 리전 복제에 필요합니다.--source-region
의 경우 소스 DB 클러스터의 AWS 리전을 지정합니다.--source-region
이 지정되지 않은 경우에는--pre-signed-url
값을 지정합니다. 미리 서명된 URL은 소스 AWS 리전에서 호출되는create-db-cluster
명령에 대한 서명 버전 4의 서명된 요청이 포함된 URL입니다.pre-signed-url
옵션에 대한 자세한 정보는 AWS CLI 명령 참조에서 create-db-cluster를 참조하세요. -
다음 예제와 같이 AWS CLI describe-db-clusters 명령을 사용하여 DB 클러스터를 사용할 수 있는지 확인합니다.
aws rds describe-db-clusters --db-cluster-identifier sample-replica-cluster
describe-db-clusters
결과에 상태가available
로 표시되면 DB 클러스터의 기본 인스턴스를 만들어 복제를 시작합니다. 이렇게 하려면 다음 예제에서와 같이 AWS CLI create-db-instance 명령을 사용하면 됩니다.대상 LinuxmacOS, 또는Unix:
aws rds create-db-instance \ --db-cluster-identifier sample-replica-cluster \ --db-instance-class db.r3.large \ --db-instance-identifier sample-replica-instance \ --engine aurora
Windows의 경우:
aws rds create-db-instance ^ --db-cluster-identifier sample-replica-cluster ^ --db-instance-class db.r3.large ^ --db-instance-identifier sample-replica-instance ^ --engine aurora
DB 인스턴스가 생성되어 사용할 수 있게 되면 복제가 시작됩니다. AWS CLI create-db-instance 명령을 호출하여 DB 인스턴스를 사용할 수 있는지를 파악할 수 있습니다.
API를 사용하여 리전 간 읽기 전용 복제본인 Aurora MySQL DB 클러스터를 만들려면
-
읽기 전용 복제본 DB 클러스터를 만들려는 AWS 리전에서 RDS API CreateDBCluster 작업을 호출합니다.
ReplicationSourceIdentifier
파라미터를 포함시키고, 읽기 전용 복제본을 만들 원본 DB 클러스터의 Amazon 리소스 이름(ARN)을 지정합니다.ReplicationSourceIdentifier
로 식별되는 DB 클러스터가 암호화되는 교차 리전 복제의 경우KmsKeyId
파라미터를 지정하고StorageEncrypted
파라미터를true
로 설정합니다.참고
StorageEncrypted
를true
로 지정하고KmsKeyId
의 값을 제공하여 암호화되지 않은 DB 클러스터에서 암호화된 읽기 전용 복제본으로 리전 간 복제를 설정할 수 있습니다. 이 경우PreSignedUrl
을 지정하지 않아도 됩니다.MasterUsername
및MasterUserPassword
파라미터 값은 원본 DB 클러스터에서 가져오므로 포함시키지 않아도 됩니다.다음 코드 예에서는 us-west-2 리전의 암호화되지 않은 DB 클러스터 스냅샷에서 us-east-1 리전에 읽기 전용 복제본을 만듭니다. 이 작업은 us-east-1 리전에서 호출됩니다.
https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBCluster &ReplicationSourceIdentifier=arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster &DBClusterIdentifier=sample-replica-cluster &Engine=aurora &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20160201T001547Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=a04c831a0b54b5e4cd236a90dcb9f5fab7185eb3b72b5ebe9a70a4e95790c8b7
다음 코드 예에서는 us-west-2 리전의 암호화된 DB 클러스터 스냅샷에서 us-east-1 리전에 읽기 전용 복제본을 만듭니다. 이 작업은 us-east-1 리전에서 호출됩니다.
https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBCluster &KmsKeyId=my-us-east-1-key &StorageEncrypted=true &PreSignedUrl=https%253A%252F%252Frds.us-west-2.amazonaws.com%252F %253FAction%253DCreateDBCluster %2526DestinationRegion%253Dus-east-1 %2526KmsKeyId%253Dmy-us-east-1-key %2526ReplicationSourceIdentifier%253Darn%25253Aaws%25253Ards%25253Aus-west-2%25253A123456789012%25253Acluster%25253Asample-master-cluster %2526SignatureMethod%253DHmacSHA256 %2526SignatureVersion%253D4 %2526Version%253D2014-10-31 %2526X-Amz-Algorithm%253DAWS4-HMAC-SHA256 %2526X-Amz-Credential%253DAKIADQKE4SARGYLE%252F20161117%252Fus-west-2%252Frds%252Faws4_request %2526X-Amz-Date%253D20161117T215409Z %2526X-Amz-Expires%253D3600 %2526X-Amz-SignedHeaders%253Dcontent-type%253Bhost%253Buser-agent%253Bx-amz-content-sha256%253Bx-amz-date %2526X-Amz-Signature%253D255a0f17b4e717d3b67fad163c3ec26573b882c03a65523522cf890a67fca613 &ReplicationSourceIdentifier=arn:aws:rds:us-west-2:123456789012:cluster:sample-master-cluster &DBClusterIdentifier=sample-replica-cluster &Engine=aurora &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20160201T001547Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=a04c831a0b54b5e4cd236a90dcb9f5fab7185eb3b72b5ebe9a70a4e95790c8b7
ReplicationSourceIdentifier
로 식별되는 DB 클러스터가 암호화되는 AWS GovCloud(미국 동부)와 AWS GovCloud(미국 서부) 리전 간의 교차 리전 복제의 경우에도PreSignedUrl
파라미터를 지정합니다. 미리 서명된 URL은 복제할 암호화된 DB 클러스터가 포함된 소스 AWS 리전에서 수행할 수 있는CreateDBCluster
API 작업에 대한 유효한 요청이어야 합니다. KMS 키 식별자는 읽기 전용 복제본을 암호화하는 데 사용되며, 대상 AWS 리전에 대해 유효한 KMS 키여야 합니다. 미리 서명된 URL을 수동이 아닌 자동으로 생성하려면--source-region
옵션 대신 AWS CLI create-db-cluster 명령을 사용합니다. -
다음 예제와 같이 RDS API DescribeDBClusters 작업을 사용하여 DB 클러스터를 사용할 수 있는지 확인합니다.
https://rds.us-east-1.amazonaws.com/ ?Action=DescribeDBClusters &DBClusterIdentifier=sample-replica-cluster &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20160201T002223Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=84c2e4f8fba7c577ac5d820711e34c6e45ffcd35be8a6b7c50f329a74f35f426
DescribeDBClusters
결과에 상태가available
로 표시되면 DB 클러스터의 프라이머리 인스턴스를 만들어 복제를 시작합니다. 그러려면 다음 예제와 같이 RDS API CreateDBInstance 작업을 사용하세요.https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBInstance &DBClusterIdentifier=sample-replica-cluster &DBInstanceClass=db.r3.large &DBInstanceIdentifier=sample-replica-instance &Engine=aurora &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20160201T003808Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=125fe575959f5bbcebd53f2365f907179757a08b5d7a16a378dfa59387f58cdb
DB 인스턴스가 생성되어 사용할 수 있게 되면 복제가 시작됩니다. AWS CLI DescribeDBInstances 명령을 호출하여 DB 인스턴스를 사용할 수 있는지를 파악할 수 있습니다.
Amazon Aurora MySQL 리전 간 복제본 보기
describe-db-clusters AWS CLI 명령 또는 DescribeDBClusters RDS API 작업을 호출하여 Amazon Aurora MySQL DB 클러스터에 대한 교차 리전 복제 관계를 확인할 수 있습니다. 응답에서 교차 리전 읽기 복제본 DB 클러스터의 DB 클러스터 식별자는 ReadReplicaIdentifiers
필드에서 확인하세요. 복제 소스인 소스 DB 클러스터의 ARN은 ReplicationSourceIdentifier
요소를 참조하세요.