AWS Database Migration Service의 사전 조건 - AWS Database Migration Service

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS Database Migration Service의 사전 조건

이 단원에서는 다음에 대한 사전 요구 작업을 배울 수 있습니다.AWS DMS예: 원본 및 대상 데이터베이스 설정 이러한 작업의 일환으로 Amazon VPC 서비스 기반의 VPC (Virtual Private Cloud) 를 설정하여 리소스를 포함하도록 합니다. 또한 원본 데이터베이스를 채우고 대상 데이터베이스에서 복제를 확인하는 데 사용할 Amazon EC2 인스턴스를 설정합니다.

참고

원본 데이터베이스를 채우는 데 최대 45분이 걸립니다.

이 자습서에서는 MySQL 데이터베이스를 원본으로 만들고 대상으로 PostgreSQL 데이터베이스를 만듭니다. 이 시나리오는 일반적으로 사용되는 저렴한 데이터베이스 엔진을 사용하여 복제를 시연합니다. 다양한 데이터베이스 엔진 사용 시연AWS DMS이기종 플랫폼 간 데이터 마이그레이션 기능.

이 자습서의 리소스는 미국 서부 (오레곤) 리전을 사용합니다. 다른 것을 사용하려면AWS지역, 미국 서부 (오레곤) 가 나타나는 곳 대신 선택한 지역을 지정하십시오.

참고

단순화를 위해 이 자습서에서 만든 데이터베이스는 암호화나 기타 고급 보안 기능을 사용하지 않습니다. 프로덕션 데이터베이스를 안전하게 유지하려면 보안 기능을 사용해야 합니다. 자세한 내용을 알아보려면 다음 섹션을 참조하세요.Amazon RDS의 보안.

필수 단계는 다음 주제를 참조하세요.

VPC 생성

이 단원에서는 다음을 포함하는 VPC 생성합니다.AWS리소스. VPC 사용할 때는 VPC를 사용하는 것이 가장 좋습니다.AWS데이터베이스, Amazon EC2 인스턴스, 보안 그룹 등이 논리적으로 구성되고 안전하게 유지되도록 하는 리소스.

또한 튜토리얼 리소스에 VPC 사용하면 자습서를 마쳤을 때 사용하는 모든 리소스를 삭제할 수 있습니다. VPC를 삭제하려면 먼저 VPC에 포함된 모든 리소스를 삭제해야 합니다.

에 사용할 VPC의 생성 방법AWS DMS
  1. AWS Management Console에 로그인하고 https://console.aws.amazon.com/vpc/에서 Amazon VPC 콘솔을 엽니다.

  2. 탐색 창에서 를 선택합니다.VPC 대시보드를 다시 실행합니다VPC 만들기.

  3. 온 더VPC 만들기페이지에서 다음 옵션을 입력합니다.

    • 생성할 리소스: VPC 및 기타

    • Name tag auto 생성: 선택해자동 생성를 누르고 입력DMSVPC.

    • IPv4 block:10.0.1.0/24

    • IPv6 CIDR block: No IPv6 CIDR 블록

    • 테넌시: 기본값

    • 가용 영역 수: 2

    • 퍼블릭 서브넷 수: 2

    • 사설 서브넷 수: 2

    • NAT 게이트웨이 ($): 없음

    • VPC 엔드포인트: 없음

    VPC 생성을 선택합니다.

  4. 탐색 창에서 를 선택합니다.내 VPC. 에 대한 VPC ID를 기록합니다.DMSVC.

  5. 탐색 창에서 를 선택합니다.보안 그룹.

  6. 이름이 지정된 그룹을 선택합니다.기본값입니다그것에는VPC ID기재하신 ID와 일치하는 경우DMSVC.

  7. 를 선택하세요인바운드 규칙탭을 누르고 선택인바운드 규칙 편집.

  8. [다른 규칙 추가(Add another rule)]를 선택합니다. 유형 규칙 추가MySQL/Aurora그리고 선택하세요어디서나 사용할 수 있는 IPv4...에 대한소스.

  9. 선택해규칙 추가를 다시. 유형 규칙 추가PostgreSQL그리고 선택하세요어디서나 사용할 수 있는 IPv4...에 대한소스.

  10. 규칙 저장을 선택합니다.

아마존 RDS 파라미터 그룹 생성

소스 및 대상 데이터베이스의 설정을 지정하려면AWS DMS, Amazon RDS 파라미터 그룹을 사용하십시오. 데이터베이스 간에 초기 및 지속적인 복제를 허용하려면 다음을 구성해야 합니다.

  • 소스 데이터베이스의 바이너리 로그이므로AWS DMS복제해야 하는 증분 업데이트를 결정할 수 있습니다.

  • 대상 데이터베이스의 복제 역할, 그래서AWS DMS초기 데이터 전송 시 외래 키 제약 조건을 무시합니다. 이 설정을 사용하면AWS DMS데이터를 순서에 맞게 마이그레이션할 수 있습니다.

에서 사용할 파라미터 그룹을 만들려면AWS DMS
  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 를 선택합니다.파라미터 그룹.

  3. 온 더파라미터 그룹페이지, 선택파라미터 그룹 생성.

  4. 온 더파라미터 그룹 생성페이지에서 다음 설정을 입력합니다.

    • 파라미터터 그룹 패밀리:MySQL8.0

    • 그룹 이름: dms-mysql-parameters

    • 설명: Group for specifying binary log settings for replication

    Create(생성)를 선택합니다.

  5. 온 더파라미터 그룹페이지, 선택dms-mysql-parameters, 그리고dms-parameter-group페이지, 선택매개변수 편집.

  6. 다음 파라미터를 다음 값으로 설정합니다.

    • 빈로그_체크섬: NONE

    • 빈로그_포맷:

    Save changes(변경 사항 저장)를 선택합니다.

  7. 온 더파라미터 그룹페이지, 선택파라미터 그룹 생성를 다시.

  8. 온 더파라미터 그룹 생성페이지에서 다음 설정을 입력합니다.

    • 파라미터터 그룹 패밀리:포스트그레 13

    • 그룹 이름: dms-postgresql-parameters

    • 설명: Group for specifying role setting for replication

    Create(생성)를 선택합니다.

  9. 온 더파라미터 그룹페이지, 선택dms-postgresql-parameters.

  10. 온 더dms-postgresql-parameters페이지, 선택매개변수 편집, 및 세트세션_복제_역할 매개변수레플리카. 를 다시 실행합니다.세션_복제_역할매개변수가 매개변수의 첫 페이지에 없습니다. 페이지 관리 또는 검색 필드를 사용하여 파라미터를 찾습니다.

  11. Save changes(변경 사항 저장)를 선택합니다.

원본 Amazon RDS 데이터베이스 생성

다음 절차에 따라 원본 Amazon RDS 데이터베이스를 생성합니다.

MySQL 데이터베이스용 원본 RDS를 생성하는 방법
  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 온 더대시보드페이지, 선택데이터베이스 생성에서데이터베이스섹션. 선택하지 마세요데이터베이스 생성에서Amazon Aurora페이지 상단에있는 섹션.

  3. 온 더데이터베이스 생성페이지에서 다음 옵션을 설정합니다.

    • 데이터베이스 생성 방법 선택: Standard Create(표준 생성)를 선택합니다.

    • 엔진 옵션: 엔진 유형(Engine type)에서 MySQL을 선택합니다. 에 대한Version, 나가기MySQL 8.0.28선택한.

    • 템플릿: 선택해개발/테스트.

    • 가용성 및 내구성: 나가기다중 AZ DB 인스턴스선택한.

    • Settings:

      • DB 인스턴스 식별자: dms-mysql을 입력합니다.

      • Master username: 를 다시 실행합니다admin.

      • Auto generate a password: 선택하지 않은 상태로 유지합니다.

      • 마스터 암호: changeit을 입력합니다.

      • [Confirm Password]: 를 입력합니다changeit를 다시.

    • DB 인스턴스 클래스:

      • DB 인스턴스 클래스: 나가기스탠다드 클래스선택된.

      • 에 대한DB 인스턴스 클래스, 선택db.m5.large.

    • 스토리지:

      • CT...스토리지 Autoscaling 활성화BOX.

      • 나머지 설정은 그대로 둡니다.

    • 연결:

      • 가상 사설 클라우드: DMSVC

      • 퍼블릭 액세스: . 공용 액세스를 활성화해야 사용할 수 있습니다.AWS Schema Conversion Tool.

      • [Availability zone]:us-west-2a

      • 나머지 설정은 그대로 둡니다.

    • Database authentication(데이터베이스 인증): 나가기암호 인증선택한.

    • 확장추가 구성:

      • 아래에데이터베이스 옵션를 입력합니다dms_sample...에 대한초기 데이터베이스 이름.

      • 아래에DB 파라미터 그룹, 선택dms-mysql-parameters.

      • 아래에백업, 나가기자동 백업 활성화선택한. 지속적인 복제를 지원하려면 소스 데이터베이스에 자동 백업이 활성화되어 있어야 합니다.

      • 아래에백업 보존 기간, 선택1 일.

      • 아래에암호화, 지우기Enable encryptionBOX.

      • 아래에성능 개선 도우미, 지우기Performance Insights 활성화BOX.

      • 아래에모니터링, 지우기확장 모니터링 활성화BOX.

      • 아래에유지 관리, 지우기auto minor version upgradeBOX.

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

대상 Amazon RDS 데이터베이스 생성

이전 절차를 반복하여 다음 변경 사항을 적용하여 대상 Amazon RDS 데이터베이스를 생성합니다.

PostgreSQL 데이터베이스를 위한 타겟 RDS를 만들려면
  1. 이전 절차의 1-2단계를 반복합니다.

  2. 온 더데이터베이스 생성페이지에서 다음을 제외하고 동일한 옵션을 설정하십시오.

    1. 에 대한엔진 옵션, 선택PostgreSQL.

    2. 에 대한Version, 선택PostgreSQL 13.4-R1

    3. 에 대한DB 인스턴스 식별자를 입력합니다dms-postgresql.

    4. 에 대한Master username, 나가기postgres선택한.

    5. 에 대한DB 파라미터 그룹, 선택dms-postgresql-parameters.

    6. CT자동 백업 활성화.

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

Amazon EC2 클라이언트 생성

이 단원에서는 Amazon EC2 클라이언트를 생성합니다. 이 클라이언트를 사용하여 복제할 데이터로 소스 데이터베이스를 채웁니다. 또한 이 클라이언트를 사용하여 대상 데이터베이스에서 쿼리를 실행하여 복제를 확인할 수 있습니다.

Amazon EC2 클라이언트를 사용하여 데이터베이스에 액세스하면 인터넷을 통한 데이터베이스 액세스에 비해 다음과 같은 이점이 있습니다.

  • 데이터베이스에 대한 액세스를 동일한 VPC 있는 클라이언트로 제한할 수 있습니다.

  • 이 자습서에서 사용하는 도구가 Amazon Linux 2에서 작동하고 설치하기도 쉽다는 것을 확인했습니다. 이 자습서에서는 이러한 도구를 사용하는 것이 좋습니다.

  • VPC의 구성 요소 간 데이터 작업은 일반적으로 인터넷을 통한 작업보다 성능이 더 좋습니다.

Amazon EC2 클라이언트를 생성 및 구성하여 원본 데이터베이스를 채우려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 온 더대시보드, 선택인스턴스 시작.

  3. 온 더인스턴스 시작페이지에서 다음 값을 입력합니다.

    1. 에서이름 및 태그섹션, 입력DMSClient...에 대한이름.

    2. 에서애플리케이션 및 OS 이미지(Amazon Machine Image)섹션, 설정을 그대로 두십시오.

    3. 에서인스턴스 유형섹션, 선택t2.xlarge.

    4. 에서키 페어(로그인)섹션, 선택새 key pair 생성.

    5. 온 더key pair 생성페이지에서 다음을 입력합니다.

      • Key pair name: DMSKeyPair

      • Key pair pair type: 를 다시 실행합니다RSA.

      • 프라이빗 키 파일 형식: 선택해pemMacOS 또는 리눅스에서 OpenSSH를 사용하는 경우, 또는ppk윈도우용 퍼티용

      키 파일을 저장하라는 메시지가 표시되면 키 파일을 저장합니다.

      참고

      새 키 페어를 생성하는 대신 기존 Amazon EC2 key pair 사용할 수도 있습니다.

    6. 에서네트워크 설정섹션, 선택편집. 다음 설정을 선택합니다.

      • VPC -필수: 에 대해 기록한 ID가 있는 VPC 선택합니다.DMSVCVPC.

      • 서브넷: 첫 번째 퍼블릭 서브넷을 선택합니다.

      • 퍼블릭 IP 자동 할당: Enable(활성화)를 선택합니다.

      나머지 설정은 그대로 두고 를 선택합니다.인스턴스 시작.

소스 데이터베이스 채우기

이 섹션에서는 나중에 사용할 원본 및 대상 데이터베이스의 엔드포인트를 찾고 다음 도구를 사용하여 원본 데이터베이스를 채웁니다.

  • Git - 소스 데이터베이스를 채우는 스크립트를 다운로드합니다.

  • MySQL 클라이언트, 이 스크립트를 실행합니다.

엔드포인트 가져오기

PostgreSQL용 RDS 및 PostgreSQL용 RDS DB 인스턴스용 RDS의 엔드포인트를 찾아 나중에 사용할 수 있도록 메모해 둡니다.

DB 인스턴스 엔드포인트를 찾으려면
  1. https://console.aws.amazon.com/rds/에서 AWS Management Console에 로그인한 후 Amazon RDS 콘솔을 엽니다.

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

  3. 를 선택하세요dms-MySQL데이터베이스 및 참고끝점데이터베이스 값입니다.

  4. 에 대해 이전 단계를 반복합니다.dms-포스트그레SQL데이터베이스.

소스 데이터베이스 채우기

다음으로, 클라이언트 인스턴스에 연결하고 필요한 소프트웨어를 설치하고 다운로드합니다.AWSGit에서 데이터베이스 스크립트를 샘플링하고 스크립트를 실행하여 소스 데이터베이스를 채웁니다.

원본 데이터베이스를 채우려면
  1. 이전 단계에서 저장한 호스트 이름과 공개 키를 사용하여 클라이언트 인스턴스에 Connect.

    Amazon EC2 인스턴스에 연결하는 방법에 대한 자세한 내용은 를 참조하십시오.인스턴스 액세스에서Linux 인스턴스용 Amazon EC2 사용 설명서.

    참고

    PuTTY를 사용하는 경우 에서 TCP 킵얼라이브를 활성화하세요.연결비활성 상태에서 연결 시간이 초과되지 않도록 하는 설정 페이지.

  2. Git과 MySQL 설치합니다. 필요에 따라 설치를 확인합니다.

    $ sudo yum install git $ sudo yum install mysql
  3. PSQL을 설치합니다. 나중에 PSQL 클라이언트를 사용하여 복제를 확인합니다.

    이 작업을 수행하려면 다음 단계를 수행하십시오.

    1. Yum Package 리포지토리 구성 파일 만들기 (pgdg.repo).

      $ sudo su # cd /etc/yum.repos.d # nano pgdg.repo
    2. 다음 내용을 pgdg.repo 파일에 추가합니다.

      [pgdg11] name=PostgreSQL 11 $releasever - $basearch baseurl=https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7.5-x86_64 enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-PGDG-11
    3. 설치하고 필요에 따라 설치를 확인합니다.

      sed -i "s/rhel-\$releasever-\$basearch/rhel-7.5-x86_64/g" "/etc/yum.repos.d/pgdg.repo" yum groupinstall "PostgreSQL Database Server 11 PGDG"
    4. exitsudo.

      $ exit
  4. 다음 명령을 실행하여 데이터베이스 생성 스크립트를 에서 다운로드합니다. GitHub.

    git clone https://github.com/aws-samples/aws-database-migration-samples.git
  5. 디렉터리를 aws-database-migration-samples/mysql/sampledb/v1/로 변경합니다.

  6. 다음 명령을 실행합니다. 예를 들어 이전에 기록한 소스 RDS 인스턴스의 엔드포인트를 입력합니다.dms-mysql.cdv5fbeyiy4e.us-west-2.rds.amazonaws.com.

    mysql -h dms-mysql.abcdefghij01.us-west-2.rds.amazonaws.com -P 3306 -u admin -p dms_sample < ~/aws-database-migration-samples/mysql/sampledb/v1/install-rds.sql
  7. 데이터베이스 생성 스크립트를 실행합니다. 스크립트에서 스키마를 생성하고 데이터를 채우는 데 최대 45분이 걸립니다.