이 페이지에서는 PostgreSQL용 AlloyDB의 연결 옵션을 설명하고 워크로드, 네트워크 토폴로지, 보안 연결 요구사항에 가장 적합한 옵션을 선택하는 데 도움을 줍니다. 자세한 내용은 연결 개요를 참조하세요.
이 문서에서는 다음 내용을 알아봅니다.
- AlloyDB에서 사용할 네트워크 구성 유형
- 안전하게 연결하는 방법
- 연결 권장사항
- 워크로드 위치가 연결 요구사항에 미치는 영향
권장 연결 옵션
다음 표를 통해 워크로드에 권장되는 연결 옵션을 확인하세요.
- 직접 연결, 언어 커넥터, 인증 프록시 중 어떤 옵션이 비공개 IP(비공개 서비스 액세스 또는 Private Service Connect) 및 공개 IP에 권장되는지 확인합니다.
- 서버리스 가상 프라이빗 클라우드(VPC) 액세스 커넥터, 직접 VPC 이그레스와 같은 연결 요구사항을 확인합니다. 자세한 내용은 직접 VPC 이그레스와 VPC 커넥터 비교 | Cloud Run 문서를 참조하세요.
- 비공개 IP(비공개 서비스 액세스와 Private Service Connect 비교) 및 공개 IP에 대한 고려사항을 확인합니다.
워크로드 평가
연결 옵션을 선택하기 전에 워크로드를 평가하세요. AlloyDB는 다음 워크로드 환경에서의 연결을 지원합니다.
- Cloud Run, Cloud Shell, 비Google SaaS 제품
- Cloud Functions v2
- App Engine 가변형 환경 및 App Engine 표준 환경
- Google Kubernetes Engine 및 Compute Engine
- 온프레미스 설정
| 워크로드 환경 | 비공개 IP | 공개 IP | 설명 | ||
|---|---|---|---|---|---|
| 직접 | 커넥터 | 직접 | 커넥터 | ||
| 개발자 노트북 | ❌️ | ❌️ | ✅ | ✅ | 개발자 노트북에서는 공개 IP와 함께 인증 프록시를 사용하는 것이 좋습니다. 비공개 IP로의 연결도 가능하지만 추가 설정이 필요합니다. |
| Cloud Shell | ❌ | ❌ | ✅ | ✅ | Cloud Shell에서는 공개 IP와 함께 인증 프록시를 사용하는 것이 좋습니다. 비공개 IP로의 연결도 가능하지만 추가 설정이 필요합니다. |
| Cloud Run, Cloud Functions v2 | ✅ | ✅ | ✅ | ✅ | 서버리스 VPC 액세스 커넥터 또는 직접 VPC 이그레스가 필요합니다. |
| App Engine 표준, 가변형 | ✅ | ✅ | ✅ | ✅ | 서버리스 VPC 액세스 커넥터가 필요합니다. |
| GKE, Compute Engine | ✅ | ✅ | ✅ | ✅ | 비공개 IP를 사용하는 것이 좋습니다. 전환 VPC 피어링이 필요하지 않다면 비공개 서비스 액세스를 사용하세요. 그렇지 않다면 Private Service Connect를 사용하세요. |
| 온프레미스 | ✅ | ✅ | ✅ | ✅ | 비공개 IP를 사용하려면 온프레미스에서 타겟 인스턴스로의 네트워크 경로가 필요합니다. 공개 IP와 언어 커넥터 또는 인증 프록시를 사용하는 방식은 광범위한 네트워크 설정이 필요하지 않은 안전한 대안입니다. |
워크로드 기반 연결 권장사항
AlloyDB에 연결할 때는 워크로드 환경에 따라 다음을 고려하세요.
Cloud Shell
- Cloud Shell에서는 공개 IP와 함께 인증 프록시를 사용해 연결하세요. Cloud Shell은 VPC로의 연결을 지원하지 않습니다. 비공개 서비스 액세스 또는 Private Service Connect 인스턴스에도 연결할 수 없습니다. 또한 Cloud Shell은 승인된 네트워크에서 사용할 수 있는 안정적인 아웃바운드 IP 주소를 제공하지 않습니다. 인증 프록시 또는 언어 커넥터를 사용하지 않는 경우, 예를 들어
0.0.0.0/0처럼 모든 IP 주소 범위를 허용해야 합니다. 그러나 프로덕션 인스턴스에는 이 방식을 사용하지 않는 것이 좋습니다.
Cloud Run 및 Cloud Functions v2
- 비공개 IP를 사용하는 경우 직접과 언어 커넥터 또는 인증 프록시 모두 직접 VPC 이그레스를 사용해야 합니다.
- 공개 IP를 사용하는 경우 언어 커넥터 또는 인증 프록시를 사용해야 합니다.
또는 승인된 네트워크에서
0.0.0.0/0과 같이 모든 IP 주소 범위를 허용할 수도 있지만, 보안 위험 때문에 프로덕션 인스턴스에서는 권장되지 않습니다.
App Engine 표준 환경 및 App Engine 가변형 환경
- 비공개 IP 사용하는 경우 언어 커넥터 또는 인증 프록시 사용 여부와 관계없이 서버리스 VPC 액세스 커넥터를 사용해야 합니다.
- 공개 IP의 경우 언어 커넥터 또는 인증 프록시를 사용해야 합니다.
또는 승인된 네트워크에서
0.0.0.0/0처럼 모든 IP 주소 범위를 허용할 수도 있습니다. 하지만 보안 위험 때문에 프로덕션 인스턴스에는 이 방법을 사용하지 않는 것이 좋습니다.
GKE 및 Compute Engine
- 직접 연결과 언어 커넥터 또는 인증 프록시를 모두 사용하여 AlloyDB에 연결할 수 있습니다.
온프레미스
- 직접 연결과 언어 커넥터 또는 인증 프록시를 모두 사용하여 AlloyDB에 연결할 수 있습니다. 단, 언어 커넥터와 인증 프록시는 네트워크 경로를 만들지 않습니다. 워크로드와 AlloyDB 인스턴스 사이에 네트워크 경로가 존재하는지 확인하세요.
보안 연결 요구사항 평가
AlloyDB용 언어 커넥터와 인증 프록시는 IAM 통합 및 mTLS와 같은 향상된 보안 기능을 제공하지만, 이러한 기능을 사용하려면 추가 설정이 필요합니다. 직접 연결은 기본적으로 암호화되지만 클라이언트 인증서나 verify-ca 및 verify-full과 같은 상위 SSL 모드를 지원하지 않습니다. 공개 IP에서는 언어 커넥터 또는 인증 프록시 사용을 권장하며, 비공개 IP에서는 언어 커넥터 또는 인증 프록시를 사용할 수 없는 경우에만 직접 연결을 사용하세요.
| 암호화된 연결 | IAM 인증 | IAM 승인 | mTLS | |
|---|---|---|---|---|
| 직접 연결 | ✅ | ✅ | ❌ | ❌ |
| 언어 커넥터 또는 인증 프록시 | ✅ | ✅ | ✅ | ✅ |
보안 연결을 위한 권장사항
- 클러스터를 만들 때는 클러스터를 만들기 위해 비공개 IP 인터페이스를 지정해야 합니다. 공개 IP를 사용하려는 경우 비공개 IP 인터페이스로 Private Service Connect를 선택하는 것이 좋습니다.
- IAM 승인 및 인증, mTLS와 같은 보안 기능을 사용하려면 일부 설정이 필요하더라도 언어 커넥터 또는 인증 프록시를 사용하세요. 예를 들어 인증 프록시를 사이드카로 실행하거나 언어 커넥터를 사용하려는 경우 이 방법이 적합합니다. 언어 커넥터 또는 인증 프록시를 사용하는 경우 데이터베이스 연결 지연 시간이 다소 증가할 수 있습니다.
- 최적의 성능을 위해 그리고 언어 커넥터나 인증 프록시를 사용할 수 없는 경우에는 직접 연결을 사용하세요. 직접 연결은 기본적으로 암호화되며(
sslmode=require), 클라이언트 인증서 또는 상위 SSL 모드를 지원하지 않습니다. 언어 커넥터 또는 인증 프록시를 사용할 수 없는 경우에만 직접 연결을 사용하세요.
네트워크 토폴로지 평가
네트워크 토폴로지 측면에서는 AlloyDB 연결에 비공개 서비스 액세스를 사용하는 것이 좋습니다. 여러 VPC를 사용할 때는 전환 피어링 문제를 피하기 위해 Private Service Connect를 사용하세요. 비공개 IP 연결이 어려운 경우,Google Cloud SaaS 제품에서는 공개 IP가 적합한 선택입니다.
| 다중 VPC 연결 | 비Google SaaS 클라이언트 | 온프레미스 연결 지원 | 설명 | |
|---|---|---|---|---|
| 비공개 서비스 액세스 | ❌ | ❌ | ✅ | 전환 VPC 연결은 기본적으로 지원되지 않습니다. VPC 간 연결을 위해 socks5 프록시를 수동으로 실행할 수도 있지만, 방식이 복잡합니다. |
| Private Service Connect | ✅ | ❌ | ✅ | 여러 VPC에서 AlloyDB에 연결하려는 경우 가장 간단한 구성을 제공합니다. |
| 공개 IP | ✅ | ✅ | ✅ | 승인된 네트워크에서 소스 워크로드의 CIDR 범위를 식별할 필요가 없도록 하려면, 공개 IP는 언어 커넥터 또는 인증 프록시와 함께 사용하는 것이 가장 좋습니다. |
네트워크 토폴로지 기반 연결 권장사항
- 기본적으로 비공개 서비스 액세스를 사용하는 것이 좋습니다.
- 여러 VPC를 사용해야 하는 경우, 전환 피어링 문제를 피하기 위해 Private Service Connect를 사용하세요.
- Google Cloud SaaS 제품을 사용하는 경우, 비공개 IP 연결이 불가능할 때 특히, Google Cloud에서 호스팅되지 않는 Software-as-a-Service(SaaS) 제품과 통합하려면 공개 네트워크 토폴로지를 선택하세요. 비공개 IP는 기본적으로 사용 설정되어 있으므로 이러한 시나리오에서는 공개 IP를 명시적으로 구성해야 합니다.
- 가능한 경우 공개 IP를 사용할 때는 승인된 네트워크를 구성하지 않고도 보안 연결을 위해 언어 커넥터 또는 인증 프록시를 사용하세요.