설정을 위한 사전 조건 완료 AWS Database Migration Service - AWS 데이터베이스 마이그레이션 서비스

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

설정을 위한 사전 조건 완료 AWS Database Migration Service

이 섹션에서는 소스 및 대상 데이터베이스 설정 AWS DMS과 같은 에 대한 사전 필수 작업을 배울 수 있습니다. 이러한 작업의 일환으로 리소스를 포함하도록 Amazon VPC 서비스를 기반으로 가상 프라이빗 클라우드(VPC)도 설정합니다. 또한 소스 데이터베이스를 채우고 대상 데이터베이스에서 복제를 확인하는 데 사용하는 Amazon EC2 인스턴스를 설정합니다.

참고

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

이 자습서에서는 MariaDB 데이터베이스를 소스로 생성하고 PostgreSQL 데이터베이스를 대상으로 생성합니다. 이 시나리오에서는 일반적으로 사용되는 저렴한 데이터베이스 엔진을 사용하여 복제를 시연합니다. 서로 다른 데이터베이스 엔진을 사용하면 이기종 플랫폼 간에 데이터를 마이그레이션하는 AWS DMS 기능을 시연할 수 있습니다.

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

참고

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

사전 조건 단계는 다음 항목을 참조하세요.

생성 VPC

이 섹션에서는 AWS 리소스를 포함하도록 VPC를 생성합니다. 를 사용하는 VPC 것은 AWS 리소스를 사용할 때 데이터베이스, Amazon EC2 인스턴스, 보안 그룹 등이 논리적으로 구성되고 안전하도록 하는 모범 사례입니다.

자습서 리소스VPC에 를 사용하면 자습서 작업을 마칠 때 사용하는 모든 리소스를 삭제할 수도 있습니다. 를 삭제하려면 먼저 에 VPC 포함된 모든 리소스를 삭제해야 합니다VPC.

와 함께 사용할 VPC를 생성하려면 AWS DMS
  1. 에 로그인 AWS Management Console 하고 에서 Amazon VPC 콘솔을 엽니다https://console.aws.amazon.com/vpc/.

  2. 탐색 창에서 VPC 대시보드 를 선택한 다음 생성을 VPC선택합니다.

  3. 생성 VPC 페이지에서 다음 옵션을 입력합니다.

    • : VPC 등을 생성하는 리소스

    • 이름 태그 자동 생성: 자동 생성을 선택하고 DMSVPC을 입력합니다.

    • IPv4 블록: 10.0.1.0/24

    • IPv6 CIDR 블록 : IPv6 CIDR 블록 없음

    • 테넌시: 기본값

    • 가용 영역 수: 2

    • 퍼블릭 서브넷 수: 2

    • 프라이빗 서브넷 수: 2

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

    • VPC 엔드포인트 : 없음

    생성을 VPC선택합니다.

  4. 탐색 창에서 VPCs를 선택합니다. 의 VPC ID를 기록해 둡니다DMSVPC.

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

  6. 에 대해 기록한 VPC ID와 일치하는 ID가 있는 기본 이라는 그룹을 선택합니다DMSVPC.

  7. 인바운드 규칙 탭을 선택하고 인바운드 규칙 편집을 선택합니다.

  8. 규칙 추가를 선택합니다. My SQL/Aurora 유형의 규칙을 추가하고 소스 에 대해 Anywhere-IPv4를 선택합니다.

  9. 규칙 추가를 다시 선택합니다. PostgreSQL 유형의 규칙을 추가하고 소스 에서 Anywhere-IPv4를 선택합니다.

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

Amazon RDS 파라미터 그룹 생성

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

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

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

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

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

  3. 파라미터 그룹 페이지에서 파라미터 그룹 생성을 선택합니다.

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

    • 파라미터 그룹 패밀리: mariadb10.6

    • 그룹 이름: dms-mariadb-parameters

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

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

  5. 파라미터 그룹 페이지에서 를 선택하고 dms-mariadb-parameters페이지에서 편집 dms-mariadb-parameters 선택합니다.

  6. 다음 파라미터를 다음 값 중 하나로 설정합니다.

    • binlog_checksum : NONE

    • binlog_format : ROW

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

  7. 파라미터 그룹 페이지에서 파라미터 그룹 생성을 다시 선택합니다.

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

    • 파라미터 그룹 패밀리: postgres13

    • 그룹 이름: dms-postgresql-parameters

    • 설명: Group for specifying role setting for replication

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

  9. 파라미터 그룹 페이지에서 를 선택합니다dms-postgresql-parameters.

  10. 페이지에서 편집을 dms-postgresql-parameters 선택하고 session_replication_role 파라미터를 복제본으로 설정합니다. 참고로, session_replication_role 파라미터는 파라미터의 첫 페이지에 없습니다. 페이지 매김 컨트롤 또는 검색 필드를 사용하여 이 파라미터를 찾으세요.

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

소스 Amazon RDS 데이터베이스 생성

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

소스 Amazon RDS for MariaDB 데이터베이스를 생성하려면
  1. 에서 Amazon RDS 콘솔을 엽니다https://console.aws.amazon.com/rds/.

  2. 대시보드 페이지의 데이터베이스 섹션에서 데이터베이스 생성을 선택합니다. 페이지 상단의 MySQL 및 Postgre에 대한 새 Amazon RDS Multi-AZ 배포 시도 옵션SQL 섹션에서 데이터베이스 생성을 선택하지 마세요.

  3. 데이터베이스 생성 페이지에서 다음 옵션을 선택합니다.

    • 데이터베이스 생성 방법 선택: 표준 생성을 선택합니다.

    • 엔진 옵션: 엔진 유형에서 MariaDB를 선택합니다. 버전의에서 MariaDB 10.6.14를 선택한 상태로 둡니다.

    • 템플릿: 개발 및 테스트를 선택합니다.

    • 설정:

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

      • 보안 인증 정보 설정 섹션에서 다음을 입력합니다.

        • 마스터 사용자 이름: admin을 그대로 둡니다.

        • AWS Secrets Manager의 마스터 보안 인증 정보 관리를 선택하지 않은 상태로 둡니다.

        • 암호 자동 생성: 선택하지 않은 상태로 둡니다.

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

        • 암호 확인: changeit을 다시 입력합니다.

    • 인스턴스 구성:

      • DB 인스턴스 클래스: 표준 클래스가 선택된 상태로 둡니다.

      • DB 인스턴스 클래스에서 db.m5.large를 선택합니다.

    • 스토리지:

      • 스토리지 자동 조정 활성화 확인란의 선택을 취소합니다.

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

    • 가용성 및 내구성: 대기 인스턴스를 생성하지 않음을 선택한 상태로 둡니다.

    • 연결:

      • 컴퓨팅 리소스 나가기 EC2 컴퓨팅 리소스에 연결 안 함

      • 네트워크 유형: IPv4 선택한 상태로 둡니다.

      • 가상 프라이빗 클라우드: DMSVPC-vpc

      • 퍼블릭 액세스: AWS Schema Conversion Tool를 사용하려면 퍼블릭 액세스를 활성화해야 합니다.

      • 가용 영역: us-west-2a

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

    • 데이터베이스 인증: 암호 인증을 선택한 상태로 둡니다.

    • 모니터링에서 Performance Insights 켜기 확인란의 선택을 취소합니다. 추가 구성 섹션을 확장하고 향상된 모니터링 활성화 확인란의 선택을 취소합니다.

    • 추가 구성을 확장합니다.

      • 데이터베이스 옵션에서 초기 데이터베이스 이름에 dms_sample을 입력합니다.

      • DB 파라미터 그룹 에서 를 선택합니다dms-mariadb-parameters.

      • 옵션 그룹에서 default:mariadb-10-6을 선택한 상태로 둡니다.

      • 백업에서 다음을 수행합니다.

        • 자동 백업 활성화를 선택한 상태로 둡니다. 지속적 복제를 지원하려면 소스 데이터베이스에 자동 백업이 활성화되어 있어야 합니다.

        • 백업 보존 기간으로 1일을 선택합니다.

        • 백업 기간에서 기본 설정 없음을 선택된 상태로 둡니다.

        • 스냅샷에 태그 복사 확인란의 선택을 취소합니다.

        • 다른 AWS 리전에서 복제 활성화를 선택하지 않은 상태로 둡니다.

      • 암호화에서 암호화 활성화 확인란의 선택을 취소합니다.

      • 로그 내보내기 섹션은 그대로 둡니다.

      • 유지 관리에서 자동 마이너 버전 업그레이드 활성화 확인란의 선택을 취소하고 유지 관리 기간 설정을 기본 설정 없음으로 유지합니다.

      • 삭제 방지 활성화를 선택하지 않은 상태로 둡니다.

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

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

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

PostgreSQL 데이터베이스 RDS 대상을 생성하려면
  1. 이전 절차의 1 및 2단계를 반복합니다.

  2. 데이터베이스 생성 페이지에서 다음을 제외하고 동일한 옵션을 설정합니다.

    1. 엔진 옵션 에서 Postgre SQL를 선택합니다.

    2. 버전 에서 PostgreSQL 13.7-R1을 선택합니다.

    3. DB 인스턴스 식별자dms-postgresql을 입력합니다.

    4. 마스터 사용자 이름postgres을 선택된 상태로 둡니다.

    5. DB 파라미터 그룹 에서 를 선택합니다dms-postgresql-parameters.

    6. 자동 백업 활성화 확인란의 선택을 취소합니다.

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

Amazon EC2 클라이언트 생성

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

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

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

  • 이 자습서에서 사용하는 도구는 Amazon Linux 2023에서 작동하고 설치하기도 쉽다는 것을 확인했으므로 이 자습서에서는 이 도구를 권장합니다.

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

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

  2. 대시보드에서 인스턴스 시작을 선택합니다.

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

    1. 이름 및 태그 섹션에서 이름DMSClient를 입력합니다.

    2. 애플리케이션 및 OS 이미지(Amazon Machine Image) 섹션에서 설정을 그대로 유지합니다.

    3. 인스턴스 유형 섹션에서 t2.xlarge를 선택합니다.

    4. 키 페어(로그인) 섹션에서 새 키 페어 생성을 선택합니다.

    5. 키 페어 생성 페이지에서 다음을 입력합니다.

      • Key pair name: DMSKeyPair

      • 키 페어 유형: 로 둡니다RSA.

      • 프라이빗 키 파일 형식 : MacOS 또는 Linux에서 OpenSSH에 대해 pem을 선택하고 Windows에서 PuTTY에 대해 ppk를 선택합니다.

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

      참고

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

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

      • VPC - 필수 : DMSVPC-vpc 에 대해 기록한 IDVPC로 를 선택합니다VPC.

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

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

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

소스 데이터베이스 채우기

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

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

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

엔드포인트 가져오기

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

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

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

  3. dms-mariadb 데이터베이스를 선택하고 데이터베이스의 엔드포인트 값을 적어둡니다.

  4. dms-postgresql 데이터베이스에 대해 이전 단계를 반복합니다.

소스 데이터베이스 채우기

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

소스 데이터베이스를 채우려면
  1. 이전 단계에서 저장한 호스트 이름 및 퍼블릭 키를 사용하여 클라이언트 인스턴스에 연결합니다.

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

    참고

    Pu 를 사용하는 경우 연결 설정 페이지에서 TCP keepalive를 TTY활성화하여 연결이 비활성 상태에서 시간 초과되지 않도록 합니다.

  2. Git, MariaDB 및 Postgre 를 설치합니다SQL. 필요에 따라 설치를 확인합니다.

    $ sudo yum install git $ sudo dnf install mariadb105 $ sudo dnf install postgresql15
  3. 다음 명령을 실행하여 에서 데이터베이스 생성 스크립트를 다운로드합니다 GitHub.

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

  5. 다음 명령을 실행합니다. 와 같이 이전에 기록한 소스 RDS 인스턴스의 엔드포인트를 제공합니다dms-mariadb.cdv5fbeyiy4e.us-east-1.rds.amazonaws.com.

    mysql -h dms-mariadb.abcdefghij01.us-east-1.rds.amazonaws.com -P 3306 -u admin -p dms_sample < ~/aws-database-migration-samples/mysql/sampledb/v1/install-rds.sql
  6. 데이터베이스 생성 스크립트를 실행합니다. 이 스크립트가 스키마를 생성하고 데이터를 채우는 데 최대 45분이 걸립니다. 스크립트에 표시되는 오류 및 경고는 무시해도 됩니다.