이 빠른 시작에서는 Database Migration Service를 사용하여 PostgreSQL용 AlloyDB로 데이터를 마이그레이션하는 방법을 보여줍니다. 이 빠른 시작에서 만든 리소스는 정리 단계까지 모든 단계를 적시에 완료한다고 가정할 때 1달러 (USD) 미만의 비용이 소요됩니다.
시작하기 전에
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Database Migration Service API.
- 사용자 계정에 데이터베이스 마이그레이션 관리자 역할이 할당되었는지 확인합니다.
요구사항
Database Migration Service는 다양한 소스 데이터베이스 옵션과 연결 방법을 제공합니다. 소스마다 더 효과적인 연결 방법이 있습니다. 이 빠른 시작에서는 네트워크를 구성하여 인바운드 방화벽 규칙을 추가할 수 있는 환경에서 독립형 PostgreSQL 데이터베이스를 사용하고 있다고 가정합니다. 소스 데이터베이스는 온프레미스 또는 클라우드 제공업체에 있어야 합니다. Google에서는 사용자 환경의 세부사항을 알 수 없기 때문에 네트워킹 구성과 관련해서 세부 단계를 제공할 수 없습니다.
이 빠른 시작에서는 소스 데이터베이스 엔진에 PostgreSQL, 대상 데이터베이스 엔진에 PostgreSQL용 AlloyDB, 네트워킹 방법으로 VPC 피어링을 선택합니다.
소스 연결 프로필 만들기
연결 프로필을 만들면 소스 데이터베이스에 관한 정보가 포함된 레코드가 생성됩니다. Database Migration Service는 연결 프로필의 정보를 사용하여 소스 데이터베이스의 데이터를 대상 AlloyDB 데이터베이스 인스턴스로 마이그레이션합니다.Google Cloud 콘솔에서 Database Migration Service 연결 프로필 페이지로 이동합니다.
프로필 만들기를 클릭합니다.
연결 프로필 만들기 페이지의 프로필 역할 목록에서 소스를 선택합니다.
데이터베이스 엔진 목록에서 소스 데이터베이스의 다음 분류 유형 중 하나를 선택합니다.
- 독립형 PostgreSQL 인스턴스 (PostgreSQL)
- 기존 PostgreSQL용 Cloud SQL 인스턴스 (PostgreSQL용 Cloud SQL)
- PostgreSQL용 Amazon RDS 인스턴스 (PostgreSQL용 Amazon RDS)
이 빠른 시작에서는 PostgreSQL을 선택합니다.
- 다음 정보를 제공합니다.
- 연결 프로필 이름 필드에 소스 데이터베이스의 연결 프로필 이름을 입력합니다(예:
My Connection Profile
). - 자동 생성된 연결 프로필 ID를 그대로 둡니다.
- 연결 정보를 입력합니다.
- 자체 호스팅 데이터베이스에서 복제하는 경우 호스트 이름 또는 IP 주소 (도메인 또는 IP)와 포트를 입력하여 호스트에 액세스합니다. 기본 PostgreSQL 포트는 5432입니다.
- Cloud SQL 데이터베이스에서 복제하는 경우 드롭다운 목록에서 Cloud SQL 인스턴스를 선택합니다.
- 사용자 이름과 비밀번호를 입력하여 소스 인스턴스에 인증을 수행합니다.
- 연결 프로필 이름 필드에 소스 데이터베이스의 연결 프로필 이름을 입력합니다(예:
페이지의 연결 프로필 리전 섹션에서 연결 프로필을 저장할 리전을 선택합니다.
- 만들기를 클릭합니다.
마이그레이션 작업 만들기
Database Migration Service는 마이그레이션 작업을 사용하여 소스 데이터베이스 인스턴스에서 대상 AlloyDB 데이터베이스 인스턴스로 데이터를 마이그레이션합니다.마이그레이션 작업을 만들면 다음이 포함됩니다.
- 작업 설정 정의
- 소스 데이터베이스에 대해 만든 연결 프로필 (소스 연결 프로필) 선택
- 대상 AlloyDB 데이터베이스 인스턴스의 설정 정의
- 소스 및 대상 데이터베이스 인스턴스 간의 연결 설정
- 마이그레이션 작업을 테스트하여 작업에 대해 제공한 연결 정보가 유효한지 확인합니다.
마이그레이션 작업의 설정 정의
Google Cloud 콘솔에서 Database Migration Service 마이그레이션 작업 페이지로 이동합니다.
이전 작업 만들기를 클릭합니다.
마이그레이션 작업 이름 필드에 마이그레이션 작업의 이름(예:
My Migration Job
)을 입력합니다.자동 생성된 이전 작업 ID를 그대로 둡니다.
소스 데이터베이스 엔진 드롭다운 목록을 열고 소스 데이터베이스의 분류 유형을 선택합니다. 이 빠른 시작에서는 PostgreSQL용 AlloyDB를 선택합니다.
대상 인스턴스를 만들 대상 리전을 선택합니다.
소스 데이터베이스에서 진행 중인 변경사항을 대상 AlloyDB 데이터베이스 인스턴스로 마이그레이션하려면 마이그레이션 작업 유형을 '연속'으로 설정합니다.
마이그레이션 작업에 맞게 환경을 준비해야 하는 방법이 자동으로 반영되도록 생성된 필수 기본 요건을 검토합니다. 이러한 기본 요건에는 소스 데이터베이스를 구성하는 방법과 대상 AlloyDB 데이터베이스 인스턴스에 연결하는 방법이 포함될 수 있습니다. 이 단계에서 이러한 기본 요건을 완료하는 것이 가장 좋지만, 마이그레이션 작업을 테스트하거나 시작하기 전 언제라도 이를 완료할 수 있습니다. 이러한 기본 요건에 대한 자세한 내용은 소스 구성을 참고하세요.
저장 후 계속을 클릭합니다.
소스 연결 프로필 정보 지정
소스 연결 프로필 선택 드롭다운 목록을 열고 내가 만든 연결 프로필을 선택합니다.
저장 후 계속을 클릭합니다.
대상 AlloyDB 클러스터 만들기
클러스터는 AlloyDB의 최상위 리소스입니다. 대상 클러스터를 만들려면 다음 안내를 따르세요.
- 클러스터 유형을 선택합니다. Database Migration Service는 현재 고가용성 AlloyDB 클러스터를 지원합니다. 읽기 풀 없이 리전의 두 개 이상의 영역에서 데이터를 제공할 수 있습니다.
- 계속을 클릭합니다.
- 클러스터를 구성합니다.
- 클러스터 ID 필드에 클러스터의 ID를 입력합니다.
- 비밀번호 필드에 기본
postgres
사용자의 비밀번호를 입력합니다. 데이터베이스에 로그인하려면 비밀번호가 필요합니다. - 네트워크 필드에서 네트워크 경로를 선택하여 마이그레이션 연결을 설정할 때 사용할 수 있는 리소스를 정의합니다. 클러스터는 비공개 IP 네트워크 경로로만 구성할 수 있습니다. VPC 피어링을 통해 소스 데이터베이스에 연결하려는 경우 소스가 있는 VPC를 선택합니다.
- 원하는 경우 할당된 IP 범위 이름을 선택하여 인스턴스에서 연결할 수 있는 IP 주소를 지정합니다.
- 계속을 클릭합니다.
- 기본 인스턴스를 구성합니다. 기본 인스턴스는 클러스터의 컴퓨팅 용량을 결정하고 읽기 및 쓰기 작업을 지원합니다.
- 인스턴스 ID 필드에 기본 인스턴스의 ID를 입력합니다.
- 머신 유형을 선택합니다.
- 선택사항: 인스턴스의 플래그를 설정합니다. 플래그를 사용하여 인스턴스를 맞춤설정할 수 있습니다. 지원되는 플래그에 관한 자세한 내용은 AlloyDB 문서를 참고하세요. 각 플래그에 대해 다음을 실행합니다.
- 플래그 추가를 클릭합니다.
- 새 데이터베이스 플래그 목록에서 플래그를 선택합니다.
- 플래그 값을 제공합니다.
- 완료를 클릭합니다.
- 저장 후 계속을 클릭합니다.
- 대상 만들기 및 계속을 클릭하여 선택사항을 확인합니다.
- 대상 인스턴스 생성이 완료될 때까지 기다립니다.
연결 설정
- 소스 데이터베이스와 대상 데이터베이스 간에 연결을 설정하는 데 사용할 네트워킹 방법을 선택합니다. 이 빠른 시작에서는 연결 방법 목록을 사용하여 VPC 피어링을 네트워킹 방법으로 선택합니다.
- 소스 데이터베이스의 VPC 네트워크를 검토합니다. 구성 및 계속을 클릭하여 연결 프로필 구성을 완료합니다.
마이그레이션 데이터베이스 구성
마이그레이션할 데이터베이스를 선택할 수 있습니다.
- 이전할 데이터베이스 목록에서 모든 데이터베이스를 선택합니다.
소스에 있는 모든 데이터베이스가 마이그레이션을 위해 선택됩니다.
- 저장 후 계속을 클릭합니다.
마이그레이션 작업 테스트 및 만들기
마이그레이션 작업에 선택한 설정을 검토합니다.
테스트 작업을 클릭하여 소스가 올바르게 구성되었고 소스 및 대상 인스턴스가 서로 통신할 수 있으며 마이그레이션 작업이 유효한지 확인합니다.
'테스트 통과' 상태가 표시되는지 확인합니다.
테스트에 실패하면 흐름의 적절한 부분에서 문제를 해결한 후 다시 테스트할 수 있습니다.
작업 만들기 및 시작을 클릭하여 마이그레이션 작업을 만들고 즉시 시작합니다.
후속 대화상자에서 시작을 클릭합니다.
마이그레이션 작업 페이지에서 마이그레이션 작업의 상태가 '시작 중'인지 확인합니다. 몇 분 후 상태가 '실행 중'으로 변경되는지 확인합니다.
마이그레이션 작업 확인
이 섹션에서는 Database Migration Service가 마이그레이션 작업을 사용하여 소스 데이터베이스 인스턴스에서 대상 AlloyDB 데이터베이스 인스턴스로 데이터를 마이그레이션했는지 확인합니다.
- Google Cloud 콘솔에서 AlloyDB 클러스터 페이지로 이동합니다.
- 마이그레이션 작업의 읽기 복제 항목을 클릭합니다.
- 페이지 오른쪽 상단에 표시되는 Cloud Shell 활성화 아이콘을 클릭합니다.
- Cloud Shell 프롬프트에서 Enter 키를 누릅니다.
- 선택사항: Cloud Shell 승인 대화상자가 표시되면 승인을 클릭합니다.
- 비밀번호 입력 프롬프트에서 대상 AlloyDB 인스턴스 정의 및 만들기에서 제공했거나 Database Migration Service에서 생성한 비밀번호를 입력합니다.
- postgres 프롬프트에서
\list
를 입력하여 데이터베이스를 나열하고 소스 데이터베이스 인스턴스가 표시되는지 확인합니다. - 이 데이터베이스 인스턴스와 연결된 테이블을 보려면 postgres 프롬프트에서
\connect SOURCE_DB_NAME
를 입력합니다. 프롬프트 이름이postgres
에서 SOURCE_DB_NAME으로 변경됩니다. - SOURCE_DB_NAME 프롬프트에서
\dt
를 입력하여 이 인스턴스의 테이블을 확인합니다. - SOURCE_DB_NAME 프롬프트에서 이 사용자에게 인스턴스의 테이블에 있는 데이터에 액세스할 수 있는 권한을 부여하려면
GRANT alloydbexternalsync to USER;
를 입력합니다. - SOURCE_DB_NAME 프롬프트에서
SELECT * from TABLE_NAME;
을 입력하여 소스 데이터베이스 인스턴스의 테이블에서 복제된 정보를 확인합니다. - 테이블에 올바른 정보가 표시되는지 확인합니다.
그러면 Database Migration Service에서 데이터를 이전했음을 확인할 수 있습니다.
마이그레이션 작업 승격
이제 마이그레이션 작업을 승격할 수 있습니다. 따라서 대상 AlloyDB 데이터베이스 인스턴스가 소스 데이터베이스 인스턴스를 기본 데이터베이스로 대체합니다.
마이그레이션 작업 페이지로 돌아갑니다.
승격할 마이그레이션 작업을 클릭합니다. 마이그레이션 작업 세부정보 페이지가 표시됩니다.
복제 지연이 0에 가까워질 때까지 기다립니다.
소스 데이터베이스에 대한 모든 쓰기를 중지합니다.
복제 지연 시간이 0이 될 때까지 기다립니다.
승격할 마이그레이션 작업을 클릭합니다. 이 작업의 상태는 '실행 중'이어야 합니다.
승격을 클릭하여 마이그레이션 작업을 승격합니다.
후속 대화상자에서 승격을 다시 클릭합니다.
마이그레이션 작업의 상태가 '승격 진행 중'인지 확인합니다. 몇 분 후에 상태가 '완료됨'으로 변경되는지 확인합니다.
새 AlloyDB 데이터베이스 인스턴스를 사용할 준비가 되었습니다.
삭제
이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.
- 마이그레이션 작업, 연결 프로필, AlloyDB 클러스터, 프로젝트가 필요하지 않은 경우 Google Cloud 콘솔을 사용하여 삭제합니다.
다음 단계
- 연결 프로필을 관리하는 방법을 자세히 알아보세요.
- 이전 작업 상태에 대해 자세히 알아보세요.
- 이전 작업 측정항목에 대해 자세히 알아보세요.