개요
Database Migration Service는 마이그레이션 작업을 사용하여 소스 데이터베이스 인스턴스에서 대상 AlloyDB 데이터베이스 인스턴스로 데이터를 마이그레이션합니다.마이그레이션 작업을 만들면 다음이 포함됩니다.
- 마이그레이션 작업의 설정 정의
- 소스 데이터베이스에 대해 만든 연결 프로필 (소스 연결 프로필)에 관한 정보 지정
- 대상 AlloyDB 데이터베이스 인스턴스의 설정을 정의하고 인스턴스 만들기
- 소스 및 대상 데이터베이스 인스턴스 간의 연결 설정
- 마이그레이션 작업을 테스트하여 작업에 대해 제공한 연결 정보가 유효한지 확인합니다.
Database Migration Service 마법사를 사용하면 마이그레이션 작업을 만들 수 있습니다. 마법사는 시작하기, 소스 정의, 대상 정의, 연결 방법 정의, 마이그레이션 데이터베이스 구성, 마이그레이션 작업 테스트 및 만들기의 6개 창으로 구성됩니다. 각 창을 채우는 방법에 관한 정보는 이 페이지의 여러 섹션을 참고하세요.
마이그레이션 작업의 설정 정의
- Google Cloud Console에서 이전 작업 페이지로 이동합니다.
- 페이지 상단에서 마이그레이션 작업 만들기를 클릭합니다.
마이그레이션 작업의 이름을 입력합니다.
이전 작업을 식별하는 데 도움이 되는 별칭을 선택합니다. 작업 이름에 민감한 정보나 개인 식별 정보를 포함하지 마세요.
자동 생성된 이전 작업 ID를 그대로 둡니다.
소스 데이터베이스 엔진을 선택합니다.
대상 엔진으로 PostgreSQL용 AlloyDB를 선택합니다.
이전할 대상 리전을 선택합니다. Database Migration Service 인스턴스가 생성되는 위치이며, Compute Engine 인스턴스, App Engine 앱, 기타 서비스와 같이 데이터가 필요한 서비스의 위치에 따라 선택해야 합니다. 대상 리전을 선택한 후에는 이 선택사항을 변경할 수 없습니다.
마이그레이션 작업 유형으로 연속 (스냅샷 + 진행 중인 변경사항)을 선택합니다.
마이그레이션 작업에 맞게 환경을 준비해야 하는 방법이 자동으로 반영되도록 생성된 필수 기본 요건을 검토합니다. 이러한 기본 요건에는 소스 데이터베이스를 구성하는 방법과 대상 AlloyDB 데이터베이스 인스턴스에 연결하는 방법이 포함될 수 있습니다. 이 단계에서 이러한 기본 요건을 완료하는 것이 가장 좋지만, 마이그레이션 작업을 테스트하거나 시작하기 전 언제라도 이를 완료할 수 있습니다. 이러한 기본 요건에 대한 자세한 내용은 소스 구성을 참고하세요.
저장 후 계속을 클릭합니다.
소스 연결 프로필 정보 지정
-
연결 프로필을 만들었다면 기존 연결 프로필 목록에서 선택합니다.
연결 프로필을 만들지 않았다면 드롭다운 목록 하단에서 연결 프로필 만들기를 클릭하여 프로필을 하나 만들고 소스 연결 프로필 만들기와 동일한 단계를 수행합니다.
AlloyDB 마이그레이션을 위해 지정된 연결 프로필을 만드는 것이 좋습니다.
- 데이터 덤프 구성 맞춤설정 섹션에서 데이터 덤프 구성 표시를 클릭합니다.
데이터 덤프 병렬 처리 속도는 소스 데이터베이스의 부하량과 관련이 있습니다. 다음 설정을 사용할 수 있습니다.
- 최적 (권장): 소스 데이터베이스의 최적 부하로 균형 잡힌 성능을 제공합니다.
- 최대: 가장 빠른 덤프 속도를 제공하지만 소스 데이터베이스의 부하가 증가할 수 있습니다.
- 최소: 소스 데이터베이스에서 가장 적은 양의 컴퓨팅 리소스를 사용하지만 덤프 처리량이 느릴 수 있습니다.
조정된 데이터 덤프 동시 로드 설정을 사용하려면 소스 데이터베이스에서
max_replication_slots
,max_wal_senders
,max_worker_processes
매개변수를 늘려야 합니다. 마이그레이션 작업 생성 완료 시 마이그레이션 작업 테스트를 실행하여 구성을 확인할 수 있습니다. - 저장 후 계속을 클릭합니다.
대상 AlloyDB 인스턴스 정의 및 만들기
이제 마이그레이션 작업의 새 대상 AlloyDB 클러스터를 만듭니다. 클러스터는 AlloyDB의 최상위 리소스입니다. 여기에는 이전 프로세스 중에 만든 데이터베이스에 대한 읽기/쓰기 액세스를 위한 단일 기본 인스턴스가 포함됩니다.
대상 클러스터를 만들려면 다음 안내를 따르세요.
- 클러스터 유형을 선택합니다. Database Migration Service는 현재 고가용성 AlloyDB 클러스터를 지원합니다. 읽기 풀 없이 리전의 두 개 이상의 영역에서 데이터를 제공할 수 있습니다.
- 계속을 클릭합니다.
- 클러스터를 구성합니다.
- 클러스터 ID 필드에 클러스터의 ID를 입력합니다.
- 비밀번호 필드에 기본
postgres
사용자의 비밀번호를 입력합니다. 데이터베이스에 로그인하려면 비밀번호가 필요합니다. - 네트워크 필드에서 다음을 실행합니다.
- 네트워크 경로를 선택하여 마이그레이션 연결을 설정할 때 사용할 수 있는 리소스를 정의합니다. 클러스터는 비공개 IP 네트워크 경로로만 구성할 수 있습니다. VPC 피어링으로 소스 데이터베이스에 연결하려는 경우 소스가 있는 VPC를 선택합니다.
- 네트워크가 비공개 서비스 액세스에 구성되어 있지 않으면 연결 설정을 클릭하고 연결 구성 마법사를 따릅니다.
- 선택한 VPC에 관리 서비스 네트워크가 구성된 적이 없는 경우 IP 범위를 선택하고 연결을 클릭하거나 자동으로 선택된 IP 범위를 사용하고 할당 및 연결을 클릭할 수 있습니다.
- 선택사항: 암호화 섹션에서 소스에서 대상으로 이전된 데이터의 암호화를 관리할지 지정합니다.
기본적으로 데이터는 Google Cloud에서 관리하는 키로 암호화됩니다.
암호화를 직접 관리하려면 고객 관리 암호화 키 (CMEK)를 사용하면 됩니다. 키는 AlloyDB 클러스터와 동일한 위치에 있어야 합니다. 예를 들어 us-west1에 있는 클러스터는 us-west1의 키만 사용할 수 있습니다.
- 고객 관리 암호화 키 (CMEK) 사용 라디오 버튼을 선택합니다.
- 고객 관리 키 선택 메뉴에서 CMEK를 선택합니다.
키가 표시되지 않으면 키 리소스 이름 입력을 클릭하여 사용하려는 키의 리소스 이름을 입력합니다. 예를 들어 키 리소스 이름 필드에
projects/my-project-name/locations/my-location/keyRings/my-keyring/cryptoKeys/my-key
을 입력한 다음 저장을 클릭할 수 있습니다. - 계속을 클릭합니다.
- 기본 인스턴스를 구성합니다. 기본 인스턴스는 클러스터의 컴퓨팅 용량을 결정하고 읽기 및 쓰기 작업을 지원합니다.
- 인스턴스 ID 필드에 기본 인스턴스의 ID를 입력합니다.
- 머신 유형을 선택합니다.
- IP 허용 목록 연결 방법을 사용할 계획이라면 아웃바운드 공개 IP 사용 설정 체크박스를 선택합니다.
- 선택사항: 인스턴스의 플래그를 설정합니다. 플래그를 사용하여 인스턴스를 맞춤설정할 수 있습니다. 지원되는 플래그에 관한 자세한 내용은 AlloyDB 문서를 참고하세요. 각 플래그에 대해 다음을 실행합니다.
- 플래그 추가를 클릭합니다.
- 새 데이터베이스 플래그 목록에서 플래그를 선택합니다.
- 플래그 값을 제공합니다.
- 완료를 클릭합니다.
- 저장 후 계속을 클릭합니다.
- 대상 만들기 및 계속을 클릭하여 선택사항을 확인합니다.
- 대상 인스턴스 생성이 완료될 때까지 기다립니다.
소스 및 대상 데이터베이스 인스턴스 간의 연결 설정
연결 방법 드롭다운 메뉴에서 네트워크 연결 방법을 선택합니다. 이 메서드는 새로 생성된 AlloyDB 인스턴스가 소스 데이터베이스에 연결되는 방식을 정의합니다. 현재 네트워크 연결 방법에는 IP 허용 목록, VPC 피어링, 역방향 SSH 터널, 클라우드 호스팅 VM을 통한 TCP 프록시가 있습니다.
- IP 허용 목록 네트워크 연결 방법을 선택하는 경우 대상 인스턴스의 발신 IP 주소를 지정해야 합니다. 기본 인스턴스와 보조 인스턴스의 발신 IP 주소를 모두 복사하여 소스 데이터베이스 서버 및
pg_hba.conf
파일의 네트워크 방화벽을 구성하는 데 사용합니다. 그러면 소스가 이러한 주소의 연결을 수락할 수 있습니다. 역방향 SSH 터널 네트워크 연결 방법을 선택한 경우 터널을 호스팅할 Compute Engine VM 인스턴스를 선택합니다.
인스턴스를 지정하면 소스 데이터베이스와 대상 데이터베이스 간의 터널을 설정하는 단계를 실행하는 스크립트가 제공됩니다. Google Cloud CLI에서 스크립트를 실행해야 합니다.
소스 데이터베이스와 Google Cloud에 모두 연결된 머신에서 명령어를 실행합니다.
- VPC 피어링 네트워크 연결 방법을 선택하는 경우 소스 데이터베이스가 있는 VPC 네트워크를 선택합니다. Cloud SQL 인스턴스가 이 네트워크에 연결되도록 업데이트됩니다.
클라우드 호스팅 VM 연결 방법을 통해 TCP 프록시를 선택하는 경우 TCP 프록시를 호스팅할 새 Compute Engine VM 인스턴스에 필요한 세부정보를 입력합니다.
세부정보를 지정하면 Google Cloud 콘솔에서 소스 데이터베이스와 대상 데이터베이스 간에 프록시를 설정하는 단계를 실행하는 스크립트를 제공합니다. 업데이트된 Google Cloud CLI가 있는 머신에서 스크립트를 실행해야 합니다.
스크립트를 실행하면 새로 생성된 VM의 비공개 IP가 출력됩니다. IP를 입력하고 구성 및 계속을 클릭합니다.
- 연결을 구성하는 방법을 자세히 알아보세요.
네트워크 연결 방법을 선택하고 방법에 관한 추가 정보를 제공한 후 구성하고 계속하기를 클릭합니다.
마이그레이션 데이터베이스 구성
마이그레이션할 데이터베이스를 선택할 수 있습니다.
- 이전할 데이터베이스 목록에서 다음 옵션 중 하나를 선택합니다.
- 모든 데이터베이스: 소스에 있는 모든 데이터베이스를 선택합니다.
- 특정 데이터베이스: 소스에 있는 모든 데이터베이스 중에서 특정 데이터베이스를 선택할 수 있습니다.
특정 데이터베이스를 마이그레이션하려면 표시되는 목록을 필터링하고 Database Migration Service가 대상으로 마이그레이션할 데이터베이스를 선택하면 됩니다.
목록이 표시되지 않고 데이터베이스 검색 오류가 표시되면 새로고침을 클릭합니다. 데이터베이스 검색에 실패하면 작업에서 모든 데이터베이스를 마이그레이션합니다. 마이그레이션 작업을 계속 만들고 나중에 연결 오류를 수정할 수 있습니다.
- 저장 후 계속을 클릭합니다.
마이그레이션 작업 테스트 및 만들기
마지막 단계에서 마이그레이션 작업 설정, 소스, 대상, 연결 방법의 요약을 검토한 후 마이그레이션 작업 설정의 유효성을 테스트합니다. 문제가 발생하면 이전 작업의 설정을 수정할 수 있습니다. 일부 설정은 수정할 수 없습니다.TEST JOB을 클릭하여 다음을 확인합니다.
- 기본 요건에 따라 소스 데이터베이스가 올바르게 구성되었습니다.
- 소스 인스턴스와 대상 인스턴스는 서로 통신할 수 있습니다.
- 대상에서 필요한 비공개 IP 주소 업데이트가 완료됩니다.
마이그레이션 작업이 유효하고 소스 및 대상 버전이 호환됩니다.
테스트에 실패하면 흐름의 적절한 부분에서 문제를 해결한 후 다시 테스트할 수 있습니다.
테스트에 실패하더라도 마이그레이션 작업을 만들 수 있지만 작업이 시작된 후 실행 중 특정 시점에 실패할 수 있습니다.
작업 만들기 및 시작을 클릭하여 마이그레이션 작업을 만들고 즉시 시작하거나 작업 만들기를 클릭하여 마이그레이션 작업을 만들고 즉시 시작하지 않습니다.
작업이 생성 시점에 시작되지 않은 경우 시작을 클릭하여 마이그레이션 작업 페이지에서 시작할 수 있습니다.
마이그레이션 작업이 시작된 시점에 관계없이 조직은 대상 인스턴스의 존재에 대해 요금이 청구됩니다.
마이그레이션 작업이 마이그레이션 작업 목록에 추가되며 직접 볼 수 있습니다.