개요
Database Migration Service에서 마이그레이션을 만들려면 소스 인스턴스와 AlloyDB 대상 인스턴스 간에 연결을 설정해야 합니다. 지원되는 다양한 방법이 있습니다. 특정 워크로드에 가장 적합한 방법을 선택하세요.| 네트워킹 방법 | 설명 | 장점 | 단점 |
|---|---|---|---|
| IP 허용 목록 |
이 방법은 Cloud SQL 인스턴스의 아웃바운드 IP에서 연결을 수락하도록 소스 데이터베이스 서버를 구성하는 방식으로 작동합니다. 이 방법을 선택하면 Database Migration Service에서 마이그레이션 생성 중에 설정 프로세스를 안내합니다. |
|
|
| 클라우드 호스팅 VM을 통한 프록시 - 역방향 SSH 터널 |
보안 역방향 SSH 터널을 통해 대상에서 소스로 연결을 설정합니다. Platform 프로젝트의 배스천 호스트 VM과 소스에 연결할 수 있는 머신(예: 네트워크의 노트북)이 필요합니다. Google Cloud Database Migration Service는 마이그레이션 생성 시 필요한 정보를 수집하고 모든 설정을 위한 스크립트를 자동 생성합니다. |
|
|
| 클라우드 호스팅 VM을 통한 프록시 - TCP |
클라우드 호스팅 VM을 통해 TCP 프록시를 사용하여 대상에서 소스로 연결을 설정합니다. Database Migration Service는 마이그레이션 생성 시 필요한 정보를 수집하고 모든 설정을 위한 스크립트를 자동 생성합니다. 소스가 이전 네트워크 아키텍처에 있는 AlloyDB 마이그레이션에 적합합니다. |
|
|
| VPC 피어링 |
이 방법은 VPC를 구성하여 서로 통신하는 방식으로 작동합니다. |
|
|
| Private Service Connect 인터페이스 |
Private Service Connect 인터페이스를 사용하면 대상 데이터베이스가 피어링 할당량을 소모하지 않고 소스 데이터베이스의 비공개 IP에 대한 연결을 시작할 수 있습니다. 대신 이 연결 방법 은 VPC에서 만드는 네트워크 연결을 활용합니다. |
|
PostgreSQL용 AlloyDB의 비공개 서비스 액세스 및 Private Service Connect에 대한 자세한 내용은 PostgreSQL용 AlloyDB 문서의 비공개 IP 개요 를 참조하세요. |
연결 제한사항
PostgreSQL에서 AlloyDB로의 연결에는 다음과 같은 제한사항이 있습니다.
- AlloyDB는 비공개 서비스 액세스를 사용하여 비공개 연결을 지원합니다. 클러스터에 공개 IP 주소를 할당하는 것은 지원되지 않습니다.
- 클러스터가 생성된 후에는 AlloyDB 클러스터가 피어링되는 VPC를 변경할 수 없습니다.
- AlloyDB는 내부적으로 VPC 피어링을 사용하는 비공개 서비스 액세스를 사용하므로 전환 피어링은 지원되지 않습니다. AlloyDB 클러스터는 피어링되는 동일한 VPC의 내부 IP 주소에만 연결할 수 있습니다. 다른 VPC에 연결하려면 중간 프록시를 사용해야 합니다. 자세한 내용은 다음 섹션을 참조하세요.
일반적인 연결 시나리오 및 솔루션
이전 프로듀서 네트워크 아키텍처의 Cloud SQL 인스턴스에서 마이그레이션
이전 프로듀서 네트워크 아키텍처의 PostgreSQL용 Cloud SQL 인스턴스에서 마이그레이션하려면 중간 프록시를 사용하여 연결을 설정해야 합니다. 소스 Cloud SQL 인스턴스와 AlloyDB 대상 간에 직접 연결을 설정할 수 없기 때문입니다. Database Migration Service에서 제공하는 자동 생성 스크립트로 TCP 프록시 VM을 설정하는 것이 좋지만 자체 프록시 솔루션을 설정할 수도 있습니다. TCP 프록시 연결 방법을 참조하세요.
동일한 Google Cloud 프로젝트의 소스에서 마이그레이션하지만 다른 VPC에 있음
클러스터가 생성된 후에는 AlloyDB 클러스터가 있는 VPC를 변경할 수 없으므로 다음과 같은 옵션이 있습니다.
권장되는 옵션은 소스 인스턴스의 VPC를 대상 인스턴스의 VPC와 일치하도록 변경하는 것입니다. 예를 들어 Cloud SQL 인스턴스를 AlloyDB로 마이그레이션하려면 AlloyDB VPC와 일치하도록 Cloud SQL VPC를 업데이트합니다.
소스 인스턴스의 VPC를 대상 인스턴스의 VPC와 일치하도록 변경할 수 없는 경우 중간 가상 머신 (VM)을 프록시로 사용합니다. TCP 프록시 연결 방법을 사용하는 것이 좋지만 자체 프록시 솔루션을 설정할 수도 있습니다. Database Migration Service가콘솔에서 스크립트를 생성한 후 TCP 프록시 인스턴스를 만드는 명령어에 다른 네트워크 인터페이스를 추가하고 소스 인스턴스의 VPC와 일치하도록 구성합니다. Google Cloud 이렇게 하면 프록시가 소스 및 대상 VPC에 모두 연결됩니다.
다른 네트워크 인터페이스를 추가하려면 스크립트에 표시되는
gcloud compute instances create-with-container명령어에--network-interface network=SOURCE_NETWORK_NAME을 추가합니다.프록시를 만드는 명령어의 예는 다음과 같습니다.
gcloud compute instances create-with-container … \ --network-interface subnet=DESTINATION-SUBNET-NAME \ --network-interface network=SOURCE-NETWORK-NAME
다음을 바꿉니다.
- DESTINATION-SUBNET-NAME: 대상 서브넷의 이름입니다.
- SOURCE-NETWORK-NAME: 소스 네트워크의 이름입니다.
자세한 내용은 여러 네트워크 인터페이스가 있는 VM 인스턴스 만들기를 참조하세요.
공개 인터넷을 통한 마이그레이션
이 방법은 기존 VPN 또는 Interconnect 연결이 없는 온프레미스 인스턴스 또는 다른 클라우드 제공업체에서 마이그레이션할 때 권장됩니다. to Google Cloud. 이 방법을 사용하려면 아웃바운드 공개 IP 주소를 사용하도록 대상 AlloyDB 클러스터를 구성해야 합니다.
다른 프로젝트의 소스에서 마이그레이션 Google Cloud
다른 프로젝트의 소스에서 마이그레이션하려면 인터넷을 통해 마이그레이션하거나 내부 연결을 위해 공유 VPC를 사용해야 합니다. Google Cloud Google Cloud 다음 옵션 중 하나를 선택합니다.
프록시 없이 공유 VPC를 사용합니다. AlloyDB 클러스터를 공유 VPC에 두려면 클러스터를 만들 때 소스가 있는 VPC를 선택하면 됩니다. 이렇게 하면 소스와 대상이 직접 연결됩니다.
프록시가 있는 공유 VPC를 사용합니다. AlloyDB 클러스터를 공유 VPC에 두지 않으려면 중간 프록시를 사용해야 합니다. 자체 프록시 솔루션을 설정할 수도 있지만 TCP 프록시 연결 방법을 사용하는 것이 좋습니다. 이 가이드라인에 따라 공유 VPC에 추가 네트워크 인터페이스가 있는 TCP 프록시를 만드세요.
대상이 소스 네트워크에 연결하지 못하도록 하면서 마이그레이션
이 방법은 인바운드 Google Cloud 트래픽에 네트워크의 방화벽을 여는 것이 우려되는 온프레미스 네트워크에서 마이그레이션할 때 권장됩니다. 이 시나리오에서는 Compute Engine 인스턴스를 중간 프록시로 사용하여 역방향 프록시를 설정할 수 있습니다. 역방향 SSH 연결 방법을 사용하는 것이 좋습니다.