Application Design Center에서 전역 Cloud Load Balancing 백엔드 서비스 구성

별도의 Cloud Load Balancing 프런트엔드 및 백엔드 구성요소를 구성하고 연결하여 애플리케이션에서 부하 분산기를 만듭니다. 별도의 구성요소를 사용하면 외부 및 내부 트래픽에 대해 별도의 제어를 적용하고 데이터에 대한 직접 액세스를 방지할 수 있습니다.

전역 Cloud Load Balancing 백엔드 구성요소를 사용하면 백엔드에 연결하는 데 사용되는 프로토콜, 세션 설정, 상태 점검, 제한 시간 등 부하 분산기 트래픽 분산 설정을 관리할 수 있습니다. 다음 백엔드를 구성할 수 있습니다.

  • 서버리스 NEG: 서버리스 Cloud Run 또는 Cloud Run Functions 애플리케이션의 목록(백엔드)입니다.

  • 관리형 인스턴스 그룹 (MIG): Compute Engine 인스턴스 그룹의 목록입니다.

자세한 내용은 백엔드 서비스 개요를 참조하세요.

이 문서에서는 App Design Center를 사용하여 전역 Cloud Load Balancing 백엔드를 만들 때 구성할 수 있는 연결 및 매개변수를 설명합니다. 구성 매개변수는 terraform-google-lb-http Terraform 모듈을 기반으로 합니다.

구성요소 연결

완전한 Cloud Load Balancing 구성요소를 만들려면 전역 Cloud Load Balancing 백엔드를 하나 이상의 전역 Cloud Load Balancing 프런트엔드에 연결해야 합니다. 연결된 Cloud Load Balancing 구성요소는 디자인 캔버스에 그룹으로 표시됩니다.

다음 표에는 전역 Cloud 부하 분산 백엔드에 연결할 수 있는 구성요소와 애플리케이션 및 생성된 Terraform 코드의 결과 업데이트가 나와 있습니다.

연결된 구성요소

애플리케이션 업데이트

배경 정보

Cloud Run

  • 부하 분산기는 수신 트래픽을 Cloud Run 서비스로 분산할 수 있습니다.
  • Cloud Run 서비스가 Cloud Load Balancing 서버리스 NEG 백엔드 구성에 백엔드 엔드포인트로 추가됩니다.
Cloud Run을 사용하여 전역 외부 애플리케이션 부하 분산기 설정

글로벌 Cloud Load Balancing 프런트엔드 (필수)

  • 수신 요청을 처리하는 Cloud Load Balancing 프런트엔드는 요청을 처리하는 Cloud Load Balancing 백엔드에 연결됩니다.
  • 백엔드 서비스 정보가 프런트엔드 URL 맵 입력에 추가됩니다.
URL 맵 개요

Compute Engine MIG

  • 부하 분산기는 수신 트래픽을 Compute Engine MIG에 분산할 수 있습니다.
  • Compute Engine MIG가 Cloud Load Balancing 백엔드 서비스 그룹 필드에 추가됩니다.
관리형 인스턴스 그룹 백엔드로 기본 애플리케이션 부하 분산기 설정

필수 구성 매개변수

템플릿에 전역 Cloud Load Balancing 백엔드 구성요소가 포함된 경우 배포하기 전에 다음 매개변수를 구성해야 합니다.

매개변수 이름

설명 및 제약 조건

배경 정보

이름

부하 분산기 백엔드 서비스의 이름입니다. name

프로젝트 ID

Cloud Load Balancing 백엔드 서비스를 배포할 프로젝트입니다.

구성요소 구성

선택적 구성 매개변수

다음 매개변수는 선택사항입니다. 고급 매개변수를 표시하려면 구성 영역에서 고급 필드 표시를 선택합니다.

기능

매개변수 이름

설명 및 제약 조건 정보

배경 정보

호스트 경로 매핑

호스트 URL 맵 구성 URL 맵 사용
경로 URL 맵 구성 URL 맵 사용
부하 분산 스키마 loadBalancingScheme 백엔드 서비스 개요
프로토콜 protocol 백엔드 프로토콜
포트 이름 portName 이름이 지정된 포트
설명 백엔드 서비스에 대한 설명입니다. description
CDN 사용 설정 enableCDN Cloud CDN 개요
압축 모드 compressionMode 압축이 작동하지 않음
맞춤 요청 헤더 customRequestHeaders[] 백엔드 서비스에서 커스텀 헤더 만들기
맞춤 응답 헤더 customResponseHeaders[] 백엔드 서비스에서 커스텀 헤더 만들기
연결 드레이닝 제한 시간(초) connectionDraining.drainingTimeoutSec 연결 드레이닝 사용 설정
세션 어피니티 sessionAffinity 세션 어피니티
어피니티 쿠키 TTL(초) affinityCookieTtlSec 생성된 쿠키 어피니티
지역 LB 정책 localityLbPolicy 부하 분산 지역 정책
제한 시간(초) timeoutSec 백엔드 서비스 제한 시간

로그 구성

사용 설정 logConfig.enable 로깅
샘플링 레이트 logConfig.sampleRate 로깅

그룹스

그룹 backends[].group 백엔드
설명 백엔드 그룹에 대한 설명입니다. backends[].description
분산 모드 backends[].balancingMode 분산 모드 및 대상 용량 설정
용량 확장 처리 backends[].capcityScaler 용량 확장 처리
최대 연결 수 backends[].maxConnections 연결 분산 모드
인스턴스당 최대 연결 수 backends[].maxConnectionsPerInstance 연결 분산 모드
엔드포인트당 최대 연결 수 backends[].maxConnectionsPerEndpoint 연결 분산 모드
최대 비율 backends[].maxRate Rate 분산 모드
인스턴스당 최대 요금 backends[].maxRatePerInstance Rate 분산 모드
엔드포인트당 최대 속도 backends[].maxRatePerEndpoint Rate 분산 모드
최대 사용률 backends[].maxUtilization 사용률 분산 모드

서버리스 NEG 백엔드

리전 region 서버리스 네트워크 엔드포인트 그룹 개요
유형 서버리스 백엔드의 유형입니다. 가능한 값은 cloud-run, cloud-function 또는 app-engine입니다. 지원되는 부하 분산기
서비스 이름 appEngine.service 서버리스 네트워크 엔드포인트 그룹 개요
서비스 버전 appEngine.version 서버리스 네트워크 엔드포인트 그룹 개요

IAP 구성

사용 설정 iap.enabled IAP(Identity-Aware Proxy) 개요
OAuth2 클라이언트 ID iap.oauth2ClientId OAuth 클라이언트를 공유하는 방법
OAuth2 클라이언트 보안 비밀번호 iap.oauth2ClientSecret OAuth 클라이언트를 공유하는 방법

CDN 정책

캐시 모드 cdnPolicy.cacheMode 캐싱 개요
서명된 URL 캐시 최대 기간(초) cdnPolicy.signedUrlCacheMaxAgeSec 최대 캐시 시간 맞춤설정
기본 TTL cdnPolicy.defaultTtl TTL 설정 및 재정의 변경
최대 TTL cdnPolicy.maxTtl TTL 설정 및 재정의 변경
클라이언트 TTL cdnPolicy.clientTtl TTL 설정 및 재정의 변경
음성 캐싱 cdnPolicy.negativeCaching 음성 캐싱 사용
오래된 경우에도 제공 cdnPolicy.serveWhileStale 오래된 콘텐츠 제공
요청 헤더에서 캐시 우회 cdnPolicy.bypassCacheOnRequestHeaders[] 캐시 우회

음성 캐싱 정책

코드 cdnPolicy.negativeCachingPolicy[].code 음성 캐싱 사용
TTL cdnPolicy.negativeCachingPolicy[].ttl 음성 캐싱 사용

캐시 키 정책

호스트 포함 cdnPolicy.cacheKeyPolicy.includeHost 캐시 키
프로토콜 포함 cdnPolicy.cacheKeyPolicy.includeProtocol 캐시 키
쿼리 문자열 포함 cdnPolicy.cacheKeyPolicy.includeQueryString 쿼리 문자열 포함 목록
쿼리 문자열 블랙리스트 cdnPolicy.cacheKeyPolicy.queryStringBlacklist[] 쿼리 문자열 제외 목록
쿼리 문자열 허용 목록 cdnPolicy.cacheKeyPolicy.queryStringWhitelist[] 쿼리 문자열 포함 목록
HTTP 헤더 포함 cdnPolicy.cacheKeyPolicy.includeHttpHeaders[] HTTP 헤더 및 HTTP 쿠키 캐시 키 설정
이름이 지정된 쿠키 포함 cdnPolicy.cacheKeyPolicy.includeNamedCookies[] 이름이 지정된 쿠키 포함

이상치 감지

기본 제거 시간(초) outlierDetection.baseEjectionTime.seconds 서버리스 NEG의 이상점 감지
기본 제거 시간(나노) outlierDetection.baseEjectionTime.nanos 서버리스 NEG의 이상점 감지
연속 오류 outlierDetection.consecutiveErrors 서버리스 NEG의 이상점 감지
연속 게이트웨이 실패 outlierDetection.consecutiveGatewayFailure 서버리스 NEG의 이상점 감지
연속 오류 시행 outlierDetection.enforcingConsecutiveErrors 서버리스 NEG의 이상점 감지
연속 게이트웨이 시행 실패 outlierDetection.enforcingConsecutiveGatewayFailure 서버리스 NEG의 이상점 감지
성공률 도달 시 시행 outlierDetection.enforcingSuccessRate 서버리스 NEG의 이상점 감지
Interval Seconds(간격(초)) outlierDetection.interval.seconds 서버리스 NEG의 이상점 감지
Interval Nanos outlierDetection.interval.nanos 서버리스 NEG의 이상점 감지
최대 제거 비율 outlierDetection.maxEjectionPercent 서버리스 NEG의 이상점 감지
성공률 최소 호스트 outlierDetection.successRateMinimumHosts 서버리스 NEG의 이상점 감지
성공률 요청량 outlierDetection.successRateRequestVolume 서버리스 NEG의 이상점 감지
성공률 표준 편차 요인 outlierDetection.successRateStdevFactor 서버리스 NEG의 이상점 감지

상태 확인

호스트 http2HealthCheck.host HTTP, HTTPS, HTTP/2 상태 점검을 위한 추가 플래그
요청 경로 http2HealthCheck.requestPath HTTP, HTTPS, HTTP/2의 성공 기준
요청 sslHealthCheck.request SSL 및 TCP의 성공 기준
응답 sslHealthCheck.response HTTP, HTTPS, HTTP/2 상태 점검을 위한 추가 플래그
포트 http2HealthCheck.port 상태 점검 카테고리, 프로토콜, 포트
포트 이름 http2HealthCheck.portName 이름이 지정된 포트
프록시 헤더 http2HealthCheck.proxyHeader 헤더
포트 사양 http2HealthCheck.portSpecification 포트 지정 플래그
프로토콜 type 상태 점검 카테고리, 프로토콜, 포트
확인 간격(초) checkIntervalSec 프로브
제한 시간(초) timeoutSec 프로브
정상 기준 healthyThreshold 상태
비정상 기준 unhealthyThreshold 상태
로깅 logConfig.enable 상태 점검 로깅 정보
에지 보안 정책 edge_security_policy 에지 보안 정책
보안 정책 security_policy 보안 정책 개요
방화벽 네트워크 네트워크 방화벽 규칙 구성
방화벽 프로젝트 방화벽 규칙을 만들 프로젝트의 이름입니다. 방화벽 규칙 구성
대상 태그 targetTags[] 트래픽을 부하 분산기로 전송할 수 있는 클라이언트 제한
타겟 서비스 계정 targetServiceAccounts[] 서비스 계정별 소스 및 대상 필터링

다음 단계

백엔드 구성요소를 프런트엔드 구성요소에 연결해야 합니다. 프런트엔드 구성요소를 구성하려면 Application Design Center에서 전역 Cloud Load Balancing 프런트엔드 구성을 참고하세요.