서버리스 네트워크 엔드포인트 그룹 개요

네트워크 엔드포인트 그룹(NEG)은 부하 분산기의 백엔드 엔드포인트 그룹을 지정합니다. 서버리스 NEGCloud Run, App Engine, Cloud Functions 또는 API 게이트웨이 서비스를 가리키는 백엔드입니다.

서버리스 NEG는 다음 중 하나를 나타낼 수 있습니다.

  • Cloud Run 서비스 또는 서비스 그룹
  • Cloud Functions 함수 또는 함수 그룹
  • App Engine 앱(스탠더드 또는 플렉스), 앱 내의 특정 서비스, 앱의 특정 버전, 서비스 그룹
  • 서비스 구현에 관계없이 모든 서비스에서 일관된 REST API를 통해 서비스에 액세스할 수 있는 API 게이트웨이. 이는 미리보기 버전에 있는 기능입니다.

지원되는 부하 분산기

다음 표에는 각 애플리케이션 부하 분산기에서 지원하는 서버리스 제품이 나열되어 있습니다. 서버리스 NEG는 프록시 네트워크 부하 분산기 및 패스 스루 네트워크 부하 분산기에서 지원되지 않습니다.

서버리스 플랫폼 애플리케이션 부하 분산기
리전
내부
리전 간
내부
Global
external
기본 리전
외부
Cloud Run
App Engine
Cloud Functions

사용 사례

서버리스 앱에 부하 분산기가 사용 설정된 경우 다음을 수행할 수 있습니다.

  • 다른 서비스와 공유되지 않는 전용 IPv4 IP 주소에서 제공되도록 서버리스 앱을 구성할 수 있습니다.
  • 단일 URL을 동일한 도메인에서 제공되는 여러 서버리스 함수 또는 서비스에 매핑할 수 있습니다. 이 문서에서 URL 마스크를 참조하세요.
  • 다른 Google Cloud 컴퓨팅 플랫폼과 URL 공간을 공유 수 있습니다. 여러 백엔드 서비스를 사용하면 단일 부하 분산기가 여러 백엔드 유형에 트래픽을 전송 가능합니다 부하 분산기는 요청 URL의 호스트 및 경로를 기반으로 올바른 백엔드 서비스를 선택합니다.
  • Compute Engine, Google Kubernetes Engine, Cloud Storage에 사용하는 것과 동일한 SSL 인증서와 비공개 키를 재사용할 수 있습니다. 동일한 인증서를 재사용하면 서버리스 앱에 대해 개별 인증서를 관리할 필요가 없습니다.

전역 외부 애플리케이션 부하 분산기 및 기본 애플리케이션 부하 분산기

전역 외부 애플리케이션 부하 분산기 또는 기본 애플리케이션 부하 분산기를 설정하면 서버리스 앱이 기존 클라우드 서비스와 통합할 수 있습니다. 다음을 수행하면 됩니다.

  • 외부 애플리케이션 부하 분산기를 통해 액세스하는 모든 서비스에 제공되는 에지 DDoS 방어 및 WAF 보안 제품인 Google Cloud Armor로 서비스를 보호할 수 있습니다. 이 기능은 특히 Cloud Run 및 App Engine에서 몇 가지 연관된 제한사항이 있습니다.
  • Cloud CDN을 사용하여 서비스에서 전송을 최적화하도록 사용 설정할 수 있습니다. Cloud CDN은 콘텐츠를 사용자에게 가깝게 캐시합니다. Cloud CDN은 캐시 무효화와 Cloud CDN으로 서명된 URL 등의 기능을 제공합니다.
  • Google의 에지 인프라를 사용하여 사용자와 더욱 가까운 HTTP(S) 연결을 종료하여 지연 시간을 줄일 수 있습니다.

서버리스 컴퓨팅 백엔드로 부하 분산기를 구성하는 방법은 다음 문서를 참조하세요.

외부 애플리케이션 부하 분산기를 API 게이트웨이와 통합하면 서버리스 백엔드가 Cloud Load Balancing에서 제공되는 모든 기능을 활용할 수 있습니다. 자세한 내용은 API 게이트웨이용 외부 애플리케이션 부하 분산기를 참조하세요. 트래픽을 API 게이트웨이로 라우팅하도록 외부 애플리케이션 부하 분산기를 구성하려면 API 게이트웨이용 외부 애플리케이션 부하 분산기 시작하기를 참조하세요. 이는 미리보기 버전에 있는 기능입니다.

리전 외부 애플리케이션 부하 분산기

리전 외부 애플리케이션 부하 분산기를 사용하면 (Cloud Run) 백엔드에 규제 또는 규정 준수 요구사항이 있는 워크로드를 실행할 수 있습니다. 예를 들어 애플리케이션의 네트워크 구성 및 트래픽 종료가 특정 리전에 있어야 하는 경우 필요한 관할권 제어를 준수하는 데 리전 외부 애플리케이션 부하 분산기를 사용하는 것이 좋습니다.

서버리스 컴퓨팅 백엔드를 사용하여 외부 애플리케이션 부하 분산기를 구성하는 방법은 Cloud Run을 사용하여 리전 외부 애플리케이션 부하 분산기 설정을 참조하세요.

리전 내부 애플리케이션 부하 분산기 및 리전 간 내부 애플리케이션 부하 분산기

내부 애플리케이션 부하 분산기가 Cloud Run 백엔드로 구성된 경우 다음을 수행할 수 있습니다.

  • Cloud Run 서비스에 대한 결함 주입, 헤더 재작성, 리디렉션, 트래픽 분할 등의 고급 트래픽 관리 기능을 사용 설정할 수 있습니다.
  • Compute Engine, GKE, 온프레미스에서 Cloud Run으로 원활하게 마이그레이션하고 웹 기반 트래픽 분할을 활용해서 다운타임 없이 Cloud Run으로 점진적으로 트래픽을 전환할 수 있습니다.
  • VPC Service Controls로 Cloud Run 서비스를 보호할 수 있습니다.
  • Cloud Run, Compute Engine, GKE에서 실행되는 서비스에 대해 정책을 적용하는 단일 내부 인그레스 포인트를 설정할 수 있습니다.

서버리스 컴퓨팅 백엔드를 사용하여 리전 내부 애플리케이션 부하 분산기를 구성하는 방법은 Cloud Run을 사용하여 리전 내부 애플리케이션 부하 분산기 설정을 참조하세요.

이 페이지의 나머지 부분에서는 애플리케이션 부하 분산기를 사용하여 서버리스 NEG를 사용하는 방법을 설명합니다. 다른 유형의 NEG에 대한 자세한 내용은 네트워크 엔드포인트 그룹 개요를 참조하세요.

엔드포인트 유형

서버리스 NEG에는 포트 또는 IP 주소와 같은 네트워크 엔드포인트가 없습니다. NEG와 동일한 리전에 있는 기존 Cloud Run, App Engine 또는 API 게이트웨이, Cloud Functions 서비스만 가리킬 수 있습니다.

서버리스 NEG를 만들 때 Cloud Run, App Engine, API 게이트웨이 또는 Cloud Functions 서비스의 정규화된 도메인 이름(FQDN)을 지정합니다. 엔드포인트는 SERVERLESS 유형입니다. 다른 엔드포인트 유형은 서버리스 NEG에서 지원되지 않습니다.

서버리스 NEG는 한 개를 초과하는 엔드포인트를 가질 수 없습니다. 엔드포인트는 서버리스 애플리케이션 또는 URL 마스크를 가리킵니다. 부하 분산기는 서버리스 컴퓨팅 애플리케이션의 프런트엔드로 작동하고 트래픽을 지정된 엔드포인트로 프록시합니다. 하지만 백엔드 서비스에 다른 리전의 여러 서버리스 NEG가 포함된 경우 부하 분산기가 요청 지연 시간을 최소화하기 위해 가장 가까운 리전의 NEG로 트래픽을 전송합니다.

네트워크 계층

전역 외부 애플리케이션 부하 분산기의 경우 표준 또는 프리미엄 네트워크 서비스 등급을 사용하는 부하 분산기에서 서버리스 NEG를 사용할 수 있습니다. 프리미엄 등급은 여러 리전에 서버리스 NEG를 설정하려는 경우에만 필요합니다.

리전 외부 애플리케이션 부하 분산기는 항상 표준 등급입니다.

리전 간 내부 애플리케이션 부하 분산기와 리전 내부 애플리케이션 부하 분산기는 항상 프리미엄 등급입니다.

부하 분산 구성요소

서버리스 NEG 백엔드를 사용하는 부하 분산기는 백엔드 서비스에 대해서만 특별한 구성이 필요합니다. 프런트엔드 구성은 다른 프록시 기반 Google Cloud 부하 분산기와 동일합니다. 또한 내부 애플리케이션 부하 분산기에는 Envoy 프록시를 대신 실행하는 프록시 전용 서브넷이 필요합니다.

다음은 샘플 서버리스 NEG 배포를 보여주는 다이어그램입니다.

전역 외부

이 다이어그램은 서버리스 NEG가 전역 외부 애플리케이션 부하 분산기 아키텍처에 어떻게 부합하는지 보여줍니다.

서버리스 앱에 대한 전역 외부 애플리케이션 부하 분산기
서버리스 앱의 전역 외부 애플리케이션 부하 분산기(확대하려면 클릭)

리전 외부

이 다이어그램은 서버리스 NEG가 리전 외부 애플리케이션 부하 분산기 아키텍처에 어떻게 부합하는지 보여줍니다.

서버리스 앱에 대한 리전 외부 애플리케이션 부하 분산기
서버리스 앱의 리전 외부 애플리케이션 부하 분산기(확대하려면 클릭)

리전 내부

이 다이어그램은 서버리스 NEG가 리전 내부 애플리케이션 부하 분산기 모델에 어떻게 부합하는지 보여줍니다.

서버리스 앱에 대한 리전 내부 애플리케이션 부하 분산
서버리스 앱의 리전별 내부 애플리케이션 부하 분산기(확대하려면 클릭)

리전 간

이 다이어그램은 서버리스 NEG가 리전 간 내부 애플리케이션 부하 분산기 모델에 어떻게 부합하는지 보여줍니다.

Cloud Run 배포를 사용하는 리전 간 내부 애플리케이션 부하 분산기
Cloud Run 배포를 사용하는 리전 간 내부 애플리케이션 부하 분산기(확대하려면 클릭)

프런트엔드 구성요소

서버리스 NEG 백엔드를 사용하는 부하 분산에는 특별한 프런트엔드 구성이 필요하지 않습니다. 전달 규칙은 IP 주소, 포트, 프로토콜별로 트래픽을 대상 프록시로 라우팅하는 데 사용됩니다. 그런 다음 대상 프록시는 클라이언트의 연결을 종료합니다.

URL 맵은 HTTP(S) 애플리케이션 부하 분산기에서 적절한 백엔드 서비스로의 URL 기반 요청 라우팅을 설정하는 데 사용됩니다.

이러한 각 구성요소에 대한 자세한 내용은 특정 부하 분산기 개요의 아키텍처 섹션을 참조하세요.

백엔드 서비스

백엔드 서비스는 부하 분산기에 구성 정보를 제공합니다. 부하 분산기는 백엔드 서비스의 정보를 사용하여 수신 트래픽을 하나 이상의 연결된 백엔드로 보냅니다. 서버리스 NEG는 특정 부하 분산기의 백엔드로 사용될 수 있습니다.

부하 분산기 유형에 따라 다음 제한사항이 적용됩니다.

  • 전역 외부 애플리케이션 부하 분산기에서 사용하는 전역 백엔드 서비스에는 여러 서버리스 NEG가 연결될 수 있지만 리전당 하나의 서버리스 NEG만 연결됩니다.
  • 리전 내부 애플리케이션 부하 분산기 및 리전 외부 애플리케이션 부하 분산기에서 사용하는 리전 백엔드 서비스에는 서버리스 NEG가 하나만 연결될 수 있습니다.
  • 리전 간 내부 애플리케이션 부하 분산기에서 사용하는 전역 백엔드 서비스에는 Cloud Run 서비스만 연결될 수 있습니다.

각 서버리스 NEG는 다음 중 하나에 연결될 수 있습니다.

  • 단일 함수 또는 서비스의 FQDN
  • 동일한 도메인에서 사용되는 여러 함수 또는 서비스에 연결되는 URL 마스크

URL 마스크는 사용자 요청을 올바른 서비스에 매핑하는 방법을 서버리스 NEG 백엔드에 알려주는 URL 스키마 템플릿입니다. URL 마스크는 서버리스 애플리케이션에 커스텀 도메인을 사용하고 있고 동일한 도메인에서 제공되는 여러 서비스가 있는 경우에 유용합니다. 각 함수 또는 서비스에 대해 개별 서버리스 NEG를 만드는 대신 커스텀 도메인에 대해 일반 URL 마스크를 사용하여 NEG를 만들 수 있습니다. 자세한 내용과 예시는 URL 마스크를 참조하세요.

서버리스 NEG를 백엔드로 추가할 때의 추가적인 제한사항은 제한사항을 참조하세요.

서버리스 NEG의 이상점 감지

이상점 감지는 서버리스 NEG가 연결된 전역 백엔드 서비스에서 사용 설정할 수 있는 선택적 구성입니다. 이상점 감지 분석은 기본 애플리케이션 부하 분산기가 아닌 리전 간 내부 애플리케이션 부하 분산기, 전역 외부 애플리케이션 부하 분산기에만 사용할 수 있습니다. 이상점 감지 분석은 HTTP 응답 패턴을 기반으로 비정상 서버리스 NEG를 식별하고 새 요청 대부분을 비정상 서비스에서 정상 서비스로 라우팅하여 오류율을 줄입니다. 이상점 감지 알고리즘의 작동 방식을 알아보고 제한사항을 이해하려면 다음 예시를 참조하세요.

두 개의 서버리스 NEG가 연결된 백엔드 서비스가 있다고 가정해 보겠습니다. 즉, 하나는 REGION_A 리전, 다른 하나는 REGION_B 리전입니다. REGION_A 리전에서 전역 외부 애플리케이션 부하 분산기의 백엔드 역할을 하는 서버리스 NEG가 응답하지 않으면 이상점 감지가 서버리스 NEG를 비정상으로 식별합니다. 이상점 감지 분석에 따라 새 요청 중 일부는 REGION_B 리전의 서버리스 NEG로 전송됩니다.

발생한 서버 오류 유형에 따라 다음 이상점 감지 방법 중 하나를 사용하여 이상점 감지를 사용 설정할 수 있습니다.

  • 연속 5xx 오류 5xx 시리즈 HTTP 상태 코드가 오류로 간주됩니다.
  • 연속 게이트웨이 오류 502, 503, 504 HTTP 상태 코드만 오류로 간주됩니다.

이상점 감지를 사용 설정하더라도 일부 요청이 비정상 서비스로 전송되어 클라이언트에 5XX 오류가 반환될 수 있습니다. 이는 이상점 감지 알고리즘(부하 분산 풀에서 엔드포인트를 제거하여 풀로 다시 반환)의 결과가 부하 분산기의 각 프록시 인스턴스에 의해 독립적으로 실행되기 때문입니다. 대부분의 경우 두 개 이상의 프록시 인스턴스가 백엔드 서비스에서 수신한 트래픽을 처리합니다. 따라서 비정상 엔드포인트가 일부 프록시에서만 감지되고 제거될 수 있으며 이러한 작업이 수행되는 동안 다른 프록시는 동일한 비정상 엔드포인트로 요청을 계속 전송할 수 있습니다.

오류율을 더 줄이기 위해 보다 적극적인 이상점 감지 매개변수를 구성할 수 있습니다. 제거 기준(outlierDetection.baseEjectionTime)에 더 높은 값을 구성하는 것이 좋습니다. 테스트 결과, 지속 QPS가 100을 초과하는 outlierDetection.baseEjectionTime을 180초로 설정하면 관측된 오류율이 5% 미만인 것으로 확인되었습니다. 이상점 감지 API에 대한 자세한 내용은 전역 백엔드 서비스 API 문서outlierDetection을 참조하세요.

백엔드 서비스에 서버리스 NEG가 연결된 경우 다음 outlierDetection 필드는 지원되지 않습니다.

  • outlierDetection.enforcingSuccessRate
  • outlierDetection.successRateMinimumHosts
  • outlierDetection.successRateRequestVolume
  • outlierDetection.successRateStdevFactor

이상점 감지를 구성하는 방법은 서버리스 백엔드로 전역 외부 애플리케이션 부하 분산기 설정: 이상점 감지 사용 설정을 참조하세요.

URL 마스크

서버리스 NEG 백엔드는 단일 Cloud Run(또는 App Engine이나 해당하는 경우 Cloud Functions) 서비스 또는 여러 서비스를 가리키는 URL 마스크를 가리킬 수 있습니다. URL 마스크는 URL 스키마의 템플릿입니다. 서버리스 NEG는 이 템플릿을 사용하여 요청을 적합한 서비스에 매핑합니다.

URL 마스크는 서버리스 애플리케이션이 여러 Cloud Run, Cloud Functions 또는 App Engine 서비스로 구성된 경우 서버리스 NEG를 더 쉽게 구성할 수 있는 선택적 기능입니다. 내부 애플리케이션 부하 분산기에 사용된 서버리스 NEG는 Cloud Run 서비스를 가리키는 URL 마스크만 사용할 수 있습니다.

URL 마스크는 서버리스 앱이 Google Cloud에서 제공하는 기본 주소가 아닌 커스텀 도메인에 매핑된 경우에 유용합니다. example.com과 같은 커스텀 도메인을 사용하면 동일한 도메인의 여러 하위 도메인 또는 경로에 여러 서비스를 배포할 수 있습니다. 이 경우 각 서비스에 대해 개별 서버리스 NEG 백엔드를 만드는 대신 커스텀 도메인의 일반 URL 마스크(예: example.com/<service>)를 사용하여 단일 서버리스 NEG를 만들 수 있습니다. 이 NEG는 요청의 URL에서 서비스 이름을 추출합니다.

다음 이미지는 URL 마스크를 사용하여 사용자 요청을 다른 서비스에 매핑하는 단일 백엔드 서비스와 서버리스 NEG가 있는 외부 애플리케이션 부하 분산기를 보여줍니다.

서버리스 앱에 트래픽 분산
URL 마스크를 사용하여 트래픽을 다른 서비스로 분산(확대하려면 클릭)

URL 마스크는 애플리케이션의 서비스가 예측 가능한 URL 스키마를 사용할 때 가장 잘 작동합니다. URL 맵 대신 URL 마스크를 사용하면 loginsearch 서비스에 별도의 서버리스 NEG를 만들 필요가 없다는 장점이 있습니다. 또한 애플리케이션에 새 서비스를 추가할 때마다 부하 분산기 구성을 수정할 필요가 없습니다.

제한사항

  • 서버리스 NEG는 IP 주소 또는 포트와 같은 네트워크 엔드포인트를 가질 수 없습니다.
  • 서버리스 NEG는 해당 NEG가 생성된 리전과 동일한 리전에 있는 서버리스 애플리케이션만을 가리킬 수 있습니다.
  • 서버리스 NEG 백엔드를 사용하는 부하 분산기의 경우 서버리스 NEG가 가리키는 지원 Cloud Run, App Engine, API 게이트웨이 또는 Cloud Functions 서비스와 동일한 프로젝트에서 만들어야 합니다. 서버리스 NEG와 동일한 프로젝트에 없는 서비스를 연결하면 요청이 실패할 수 있습니다.
  • 서버리스 NEG로 구성된 부하 분산기는 기본 서버리스 앱 또는 서비스가 예상대로 작동하는지 여부를 감지할 수 없습니다. 즉, 서비스가 오류를 반환하더라도 부하 분산기가 계속 트래픽을 전달합니다. 외부 HTTP(S) 부하 분산기로 사용자 트래픽을 라우팅하기 전에 새로운 버전의 서비스를 철저히 테스트해야 합니다.

백엔드 서비스 제한사항

서버리스 NEG 백엔드가 있는 백엔드 서비스에는 다음 제한사항이 적용됩니다.

  • 전역 외부 애플리케이션 부하 분산기에서 사용하는 전역 백엔드 서비스에는 리전당 서버리스 NEG가 하나만 있을 수 있습니다. 단일 백엔드 서비스에서 여러 서버리스 NEG를 결합하려면 모든 NEG가 서로 다른 리전에서 기능적으로 동일한 배포를 나타내야 합니다. 예를 들어 NEG는 서로 다른 리전에 배포된 동일한 Cloud Run, App Engine 또는 Cloud Functions 서비스를 가리킬 수 있습니다.
  • 리전 간 내부 애플리케이션 부하 분산기에서 사용하는 전역 백엔드 서비스에는 Cloud Run 서비스가 하나만 연결될 수 있습니다.
  • 리전 백엔드 서비스는 서버리스 NEG가 하나만 연결될 수 있습니다.
  • 공유 VPC 배포에서 프로젝트 간 서비스 참조는 서버리스 NEG가 포함된 구성에서 지원됩니다. 이 기능을 사용하려면 부하 분산기의 백엔드 구성요소(백엔드 서비스 및 서버리스 NEG)와 다른 프로젝트에서 부하 분산기의 프런트엔드 구성요소(IP 주소, 전달 규칙, 대상 프록시, URL 맵)를 만듭니다. 백엔드 서비스, 연결된 서버리스 NEG, 지원 서버리스 서비스(Cloud Run, App Engine, API 게이트웨이 또는 Cloud Functions)는 항상 동일한 프로젝트에 만들어야 합니다.
  • 백엔드 서비스 제한 시간 설정은 서버리스 NEG 백엔드가 있는 백엔드 서비스에는 적용되지 않습니다. 백엔드 서비스의 resource.timeoutSec 속성을 수정하려고 하면 Timeout sec is not supported for a backend service with Serverless network endpoint groups 오류가 발생합니다.
    서버리스 NEG 백엔드가 있는 백엔드 서비스의 경우 기본 제한 시간은 60분입니다. 이 제한 시간은 구성할 수 없습니다. 애플리케이션에 장기 실행 연결이 필요한 경우 실패 시 요청을 재시도하도록 클라이언트를 구성합니다.
  • 백엔드 서비스에 결합된 모든 서버리스 NEG도 동일한 유형의 백엔드를 사용해야 합니다. 즉, Cloud Run 서버리스 NEG는 다른 Cloud Run 서버리스 NEG와만 결합될 수 있으며 App Engine 서버리스 NEG는 App Engine 서버리스 NEG와만 결합될 수 있습니다.
  • 동일한 백엔드 서비스에서 서버리스 NEG를 다른 유형의 NEG와 혼합할 수 없습니다. 예를 들어 동일한 백엔드 서비스에서 GKE 클러스터와 Cloud Run 서비스로 라우팅할 수 없습니다.
  • 서버리스 NEG로 라우팅되는 백엔드 서비스를 설정할 때 특정 필드가 제한됩니다.
    • 분산 모드를 지정할 수 없습니다. 즉, RATE, UTILIZATION, CONNECTION 값은 부하 분산기의 트래픽 분산에 영향을 주지 않습니다.
    • 서버리스 백엔드에는 상태 점검이 지원되지 않습니다. 따라서 서버리스 NEG 백엔드가 포함된 백엔드 서비스는 상태 점검으로 구성할 수 없습니다. 그러나 원하는 경우 이상점 감지를 사용 설정하여 비정상 서버리스 서비스를 식별하고 새 요청을 정상적인 서버리스 서비스로 라우팅할 수 있습니다.
  • gcloud compute backend-services edit 명령어를 사용하여 서버리스 NEG 백엔드가 포함된 백엔드 서비스를 수정할 수 없습니다. 이 문제를 해결하려면 gcloud compute backend-services update 명령어를 대신 사용하세요.

부하 분산기 유형과 서버리스 백엔드에 따라 추가 제한사항이 적용됩니다.

리전 내부 애플리케이션 부하 분산기 및 리전 외부 애플리케이션 부하 분산기 제한사항

  • 리전 내부 애플리케이션 부하 분산기 또는 리전 외부 애플리케이션 부하 분산기에 사용된 서버리스 NEG는 Cloud Run 서비스만 가리킬 수 있습니다.
  • 서버리스 NEG를 사용하는 프로젝트의 경우 초당 쿼리 수(QPS) 한도는 리전 외부 애플리케이션 부하 분산기 또는 리전 내부 애플리케이션 부하 분산기로 구성된 서버리스 NEG로 전송되는 트래픽의 프로젝트당 5,000QPS입니다. 이 한도는 프로젝트의 모든 리전 외부 애플리케이션 부하 분산기 및 리전 내부 애플리케이션 부하 분산기에서 집계됩니다. 이는 부하 분산기별 한도가 아닙니다.

리전 간 내부 애플리케이션 부하 분산기 제한사항

  • 리전 간 내부 애플리케이션 부하 분산기에 사용되는 서버리스 NEG는 Cloud Run 서비스만 가리킬 수 있습니다.

전역 외부 애플리케이션 부하 분산기 제한사항

이 섹션에는 전역 외부 애플리케이션 부하 분산기에서 서버리스 NEG를 구성할 때 발생하는 제한사항이 나와 있습니다.

App Engine의 제한사항

  • App Engine 가변형 환경 백엔드가 있는 전역 외부 애플리케이션 부하 분산기는 프로젝트 간 서비스 참조 사용을 지원하지 않습니다. App Engine 표준 환경이 지원됩니다.

Cloud Run의 제한사항

  • 서버리스 NEG가 있는 외부 애플리케이션 부하 분산기는 Knative serving을 지원하지 않습니다.
  • 외부 애플리케이션 부하 분산기는 Cloud Run 서비스에 대한 인증된 요청을 지원하지 않습니다.

Cloud Functions의 제한사항

  • IAP는 Cloud Functions에서 작동하지 않습니다.

App Engine의 제한사항

  • App Engine에서는 멀티 리전 부하 분산이 지원되지 않습니다. 이는 App Engine에 프로젝트당 1개의 리전이 필요하기 때문입니다.
  • 요청 경로에는 하나의 IAP 정책만 허용됩니다. 예를 들어 백엔드 서비스에서 IAP 정책을 이미 설정한 경우 App Engine 앱에서 다른 IAP 정책을 설정하면 안 됩니다.
  • 앱이 부하 분산기(및 사용하는 경우 VPC)에서 전송되는 요청만 수신하도록 인그레스 제어를 사용하는 것이 좋습니다. 그렇지 않으면 사용자가 앱의 App Engine URL을 사용하여 부하 분산기를 통해 전달되는 부하 분산기, Google Cloud Armor 보안 정책, SSL 인증서, 비공개 키를 우회할 수 있습니다.

API 게이트웨이의 제한사항

자세한 내용은 서버리스 NEG 및 API 게이트웨이에 대한 제한사항을 참조하세요.

트래픽 관리 기능의 제한사항

  • 부하 분산 지역 정책, 세션 어피니티, 이상점 감지와 같은 고급 트래픽 관리 기능은 서버리스 NEG 백엔드에서 지원되지 않습니다.
  • 서버리스 NEG 백엔드가 포함된 백엔드 서비스에서 세션 어피니티를 지정하는 것은 작동하지 않습니다. Cloud Run 문제를 해결하려면 특정 세션 어피니티 기능을 사용합니다.

가격 책정

서버리스 NEG가 있는 부하 분산기의 가격 책정 정보를 보려면 모든 네트워킹 가격 책정: Cloud Load Balancing을 참조하세요.

다음 단계