MongoDB 호환성을 갖춘 Firestore에서 비공개 Google 액세스 구성

이 페이지에서는 MongoDB 호환성을 갖춘 Firestore에서 비공개 Google 액세스를 사용 설정하고 구성하는 방법을 설명합니다.

MongoDB 호환성을 갖춘 Firestore의 비공개 Google 액세스 정보

기본적으로 Compute Engine VM에 네트워크 인터페이스에 할당된 외부 IP 주소가 없으면 패킷을 다른 내부 IP 주소 대상으로만 전송할 수 있습니다. VM의 네트워크 인터페이스에서 사용하는 서브넷에서 비공개 Google 액세스를 사용 설정하여 이러한 VM이 MongoDB 호환성을 갖춘 Firestore 서비스에서 사용하는 외부 IP 주소 집합에 연결하도록 허용할 수 있습니다.

관련 서비스 및 프로토콜

  • 이 가이드의 안내는 MongoDB 호환성을 갖춘 Firestore에만 적용됩니다.

  • MongoDB 호환성을 갖춘 Firestore에서 사용하는 기본 도메인과 VIP 도메인 및 해당 IP 범위는 TcpProxy MongoDB 프로토콜만 지원합니다. 다른 모든 프로토콜은 지원되지 않습니다.

네트워크 요구사항

VM 인터페이스는 다음 조건이 모두 충족되면 비공개 Google 액세스를 사용하여 Google API 및 서비스의 외부 IP 주소로 패킷을 전송할 수 있습니다.

  • VM 인터페이스는 비공개 Google 액세스가 사용 설정된 서브넷에 연결됩니다.

  • VM 인터페이스에 할당된 외부 IP 주소가 없습니다.

  • VM에서 전송된 패킷의 소스 IP 주소가 다음 IP 주소 중 하나와 일치합니다.

    • VM 인터페이스의 기본 내부 IPv4 주소
    • 별칭 IP 범위의 내부 IPv4 주소

네트워크 인터페이스에 할당된 외부 IPv4 주소가 있는 VM은 Google API 및 서비스에 연결하기 위해 비공개 Google 액세스가 필요하지 않습니다. 하지만 VPC 네트워크는 Google API 및 서비스에 액세스하기 위한 요구사항을 충족해야 합니다.

IAM 권한

프로젝트 소유자, 편집자, 네트워크 관리자 역할을 갖는 IAM 주 구성원은 서브넷을 만들거나 업데이트하고 IP 주소를 할당할 수 있습니다.

역할에 대한 자세한 내용은 IAM 역할 문서를 참고하세요.

로깅

Cloud Logging은 서브넷에서 비공개 Google 액세스가 사용 설정된 VM 인스턴스의 모든 API 요청을 캡처합니다. 로그 항목은 API 인스턴스의 소스를 호출 인스턴스의 내부 IP 주소로 식별합니다.

일일 사용량 및 월간 롤업 보고서를 Cloud Storage 버킷으로 전송하도록 구성할 수 있습니다. 자세한 내용은 사용량 보고서 보기 페이지를 참고하세요.

구성 요약

다음 표에서는 MongoDB 호환성을 갖춘 Firestore에서 비공개 Google 액세스를 구성할 수 있는 여러 방법을 요약해서 보여줍니다. 자세한 안내 정보는 네트워크 구성을 참고하세요.

도메인 옵션 IP 범위 DNS 구성 라우팅 구성 방화벽 구성

기본 도메인 (firestore.goog)

restricted.firestore.goog의 DNS 레코드를 구성하지 않은 경우 기본 도메인이 사용됩니다.

136.124.0.0/23 공개 IP 주소를 통해 MongoDB 호환성을 갖춘 Firestore 서비스에 액세스하므로 특별한 DNS 구성이 필요하지 않습니다.

VPC 네트워크가 MongoDB 호환성을 갖춘 Firestore 서비스에서 사용되는 IP 주소 범위로 트래픽을 라우팅할 수 있는지 확인합니다.

  • 기본 구성: 다음 홉이 default-internet-gateway이고 대상 범위가 0.0.0.0/0인 기본 경로가 있는지 확인합니다. 경로가 누락되었으면 해당 경로를 만듭니다.
  • 맞춤 구성: 136.124.0.0/23 IP 주소 범위로 연결되는 경로를 만듭니다.

방화벽 규칙에 따라 136.124.0.0/23 IP 주소 범위에 대한 이그레스가 허용되는지 확인합니다.

기본값을 선택하면 트래픽을 차단하는 상위 우선순위 규칙이 없는 경우 이그레스 방화벽 규칙이 이 트래픽을 허용합니다.

restricted.firestore.goog

restricted.firestore.goog을 사용하여, Google Cloud내에서만 라우팅할 수 있는 IP 주소 집합을 사용해 MongoDB 호환성을 갖춘 Firestore 서비스에 액세스합니다. VPC 서비스 제어 시나리오에서 사용할 수 있습니다.

199.36.153.2/31 199.36.153.2/31 IP 주소 범위로 요청을 전송하도록 DNS 레코드를 구성합니다. VPC 네트워크에 199.36.153.2/31 IP 주소 범위로 연결되는 경로가 있는지 확인합니다. 방화벽 규칙에 따라 199.36.153.2/31 IP 주소 범위에 대한 이그레스가 허용되는지 확인합니다.

네트워크 구성

이 섹션에서는 비공개 Google 액세스를 사용하여 MongoDB 호환성을 갖춘 Firestore에 액세스하도록 네트워크를 구성하는 방법을 설명합니다.

DNS 구성

다른 Google API와 달리 MongoDB 호환성을 갖춘 Firestore API는 비공개 Google 액세스에 다른 도메인 이름과 IP 주소를 사용합니다.

  • restricted.firestore.goog를 사용하면 MongoDB 호환성을 갖춘 Firestore API에 대한 API 액세스가 가능합니다.

    • IP 주소: 199.36.153.2199.36.153.3

    • MongoDB 호환성을 갖춘 Firestore는 VPC 서비스 제어를 준수하므로 VPC 서비스 제어 시나리오에서 이 도메인을 사용할 수 있습니다.

MongoDB 호환성을 갖춘 Firestore의 DNS 영역 및 레코드를 만들려면 다음 단계를 따르세요.

  1. firestore.goog의 비공개 DNS 영역을 만듭니다.

    이 경우에는 Cloud DNS 비공개 영역 만들기를 참조하세요.

  2. firestore.goog 영역에서 다음 레코드를 만듭니다.

    1. 다음 IP 주소를 가리키는 restricted.firestore.googA 레코드: 199.36.153.2199.36.153.3

    2. restricted.firestore.goog를 가리키는 *.firestore.googCNAME 레코드

    Cloud DNS에서 이러한 레코드를 만들려면 레코드 추가를 참고하세요.

라우팅 구성

VPC 네트워크에는 다음 홉이 기본 인터넷 게이트웨이인 적절한 경로가 있어야 합니다. Google Cloud 는 다른 VM 인스턴스 또는 커스텀 다음 홉을 통해 Google API 및 서비스로 트래픽을 라우팅하지 않습니다. 기본 인터넷 게이트웨이로 불리지만 VPC 네트워크의 VM에서 Google API 및 서비스로 전송된 패킷은 Google 네트워크에 그대로 머무릅니다.

  • 기본 도메인 옵션을 선택하면 VM 인스턴스가 다음 공개 IP 주소 범위(136.124.0.0/23)를 사용하여 MongoDB 호환성을 갖춘 Firestore 서비스에 연결됩니다 . 이러한 IP 주소는 공개적으로 라우팅할 수 있지만 VPC 네트워크의 VM에서 해당 주소로 이동하는 경로는 Google의 네트워크 내에 그대로 남게 됩니다.

  • Google은 restricted.firestore.goog 도메인에서 사용하는 IP 주소에 대한 경로를 인터넷에 게시하지 않습니다. 따라서 이 도메인은 VPC 네트워크 또는 VPC 네트워크에 연결된 온프레미스 시스템의 VM에서만 액세스할 수 있습니다.

VPC 네트워크에 다음 홉이 기본 인터넷 게이트웨이인 기본 경로가 있으면 커스텀 경로를 만들지 않고도 해당 경로를 사용하여 MongoDB 호환 Firestore 서비스에 액세스할 수 있습니다. 자세한 내용은 기본 경로를 사용한 라우팅을 참고하세요.

기본 경로 (대상 0.0.0.0/0 또는 ::0/0)를 다음 홉이 기본 인터넷 게이트웨이가 아닌 커스텀 경로로 바꿨으면 대신 커스텀 라우팅을 사용하여 MongoDB 호환성을 갖춘 Firestore 서비스에 대한 라우팅 요구사항을 충족할 수 있습니다.

기본 경로를 사용한 라우팅

각 VPC 네트워크에는 생성 시 IPv4 기본 경로(0.0.0.0/0)가 포함됩니다.

기본 경로는 다음 대상의 IP 주소 경로를 제공합니다.

  • 기본 도메인 (firestore.goog): 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

특정 네트워크에서 기본 경로의 구성을 확인하는 방법에 관한 Google Cloud 콘솔 및 Google Cloud CLI 안내는 비공개 Google 액세스 구성을 참고하세요.

커스텀 경로를 사용한 라우팅

기본 경로 대신 커스텀 정적 경로를 사용할 수 있습니다. 이때 각 경로에는 보다 구체적인 대상이 있으며 각각 기본 인터넷 게이트웨이 다음 홉을 사용합니다. 경로의 대상 IP 주소는 선택한 도메인에 따라 다릅니다.

  • 기본 도메인 (firestore.goog): 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

특정 네트워크에서 커스텀 경로의 구성을 확인하는 방법에 관한 Google Cloud 콘솔 및 Google Cloud CLI 안내는 비공개 Google 액세스 구성을 참고하세요.

방화벽 구성

VPC 네트워크 방화벽은 VM에서 MongoDB 호환성을 갖춘 Firestore 서비스에서 사용되는 IP 주소로의 액세스를 허용하도록 구성해야 합니다. 묵시적인 allow egress 규칙은 이러한 요구사항을 충족합니다.

일부 방화벽 구성에서는 특정 이그레스 허용 규칙을 만들어야 합니다. 예를 들어 모든 대상 (IPv4의 경우 0.0.0.0)에 대한 트래픽을 차단하는 이그레스 거부 규칙을 만들었다고 가정해 보겠습니다. 이 경우 선택한 도메인에서 사용되는 각 IP 주소 범위에 대해서 이그레스 거부 규칙보다 우선순위가 높은 이그레스 허용 방화벽 규칙을 하나씩 만들어야 합니다.

  • 기본 도메인 (firestore.goog: 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

방화벽 규칙을 만들려면 방화벽 규칙 만들기를 참고하세요. 각 이그레스 허용 규칙의 대상을 정의할 때 방화벽 규칙이 적용되는 VM을 제한할 수 있습니다.

비공개 Google 액세스 구성

비공개 Google 액세스를 사용 설정하려면 VPC 네트워크의 네트워크 요구사항을 충족해야 합니다. Google Cloud 콘솔 및 Google Cloud CLI 안내의 경우 비공개 Google 액세스 사용 설정에 설명된 단계를 따르세요.

다음 단계