Mengonfigurasi layanan backend Cloud Load Balancing global di Application Design Center

Anda membuat load balancer di aplikasi dengan mengonfigurasi dan menghubungkan komponen frontend dan backend Cloud Load Balancing yang berbeda. Komponen terpisah ini membantu Anda menerapkan kontrol yang berbeda untuk traffic eksternal dan internal, serta mencegah akses langsung ke data.

Komponen backend Cloud Load Balancing global membantu Anda mengelola setelan distribusi traffic load balancer, termasuk protokol yang digunakan untuk terhubung ke backend, setelan sesi, health check, dan waktu tunggu. Anda dapat mengonfigurasi backend berikut:

  • NEG serverless: Daftar aplikasi Cloud Run atau Cloud Run Functions serverless sebagai backend.

  • Grup Instance Terkelola (MIG): Daftar grup instance Compute Engine sebagai backend.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan layanan backend.

Dokumen ini menjelaskan koneksi dan parameter yang dapat Anda konfigurasi saat menggunakan App Design Center untuk membuat backend Cloud Load Balancing global. Parameter konfigurasi didasarkan pada modul Terraform terraform-google-lb-http.

Koneksi komponen

Untuk membuat komponen Cloud Load Balancing yang lengkap, Anda harus menghubungkan backend Cloud Load Balancing global ke setidaknya satu frontend Cloud Load Balancing global. Komponen Cloud Load Balancing yang terhubung ditampilkan sebagai grup di kanvas desain.

Tabel berikut mencakup komponen yang dapat Anda hubungkan ke backend Cloud Load Balancing global, dan pembaruan yang dihasilkan pada aplikasi Anda dan kode Terraform yang dibuatnya.

Komponen terhubung

Update aplikasi

Informasi latar belakang

Cloud Run

  • Load balancer dapat mendistribusikan traffic masuk ke layanan Cloud Run.
  • Layanan Cloud Run ditambahkan sebagai endpoint backend dalam konfigurasi backend NEG serverless Cloud Load Balancing.
Menyiapkan Load Balancer Aplikasi eksternal global dengan Cloud Run

Frontend Global Cloud Load Balancing (wajib)

  • Frontend Cloud Load Balancing, yang menangani permintaan masuk, ditautkan ke backend Cloud Load Balancing, yang memproses permintaan.
  • Informasi layanan backend ditambahkan ke input peta URL frontend.
Ringkasan peta URL

MIG Compute Engine

  • Load balancer dapat mendistribusikan traffic masuk ke MIG Compute Engine.
  • MIG Compute Engine ditambahkan ke kolom grup layanan backend Cloud Load Balancing.
Menyiapkan Load Balancer Aplikasi klasik dengan backend grup instance terkelola

Parameter konfigurasi yang diperlukan

Jika template Anda menyertakan komponen backend Cloud Load Balancing global, Anda harus mengonfigurasi parameter berikut sebelum men-deploy.

Nama parameter

Deskripsi dan batasan

Informasi latar belakang

Nama

Nama untuk layanan backend load balancer. name

Project ID

Project tempat Anda ingin men-deploy layanan backend Cloud Load Balancing.

Mengonfigurasi komponen

Parameter konfigurasi opsional

Parameter berikut bersifat opsional. Untuk menampilkan parameter lanjutan, di area Konfigurasi, pilih Tampilkan kolom lanjutan.

Fitur

Nama parameter

Deskripsi dan informasi batasan

Informasi latar belakang

Pemetaan Jalur Host

Host Mengonfigurasi peta URL Menggunakan peta URL
Jalur Mengonfigurasi peta URL Menggunakan peta URL
Skema Load Balancing loadBalancingScheme Ringkasan layanan backend
Protokol protokol Protokol ke backend
Nama Port portName Port bernama
Deskripsi Deskripsi untuk layanan backend. description
Aktifkan CDN enableCDN Ringkasan Cloud CDN
Mode Kompresi compressionMode Kompresi tidak berfungsi
Header Permintaan Kustom customRequestHeaders[] Membuat header kustom di layanan backend
Header Respons Kustom customResponseHeaders[] Membuat header kustom di layanan backend
Waktu Tunggu Pengosongan Koneksi (Detik) connectionDraining.drainingTimeoutSec Mengaktifkan pengosongan koneksi
Afinitas Sesi sessionAffinity Afinitas sesi
TTL Cookie Afinitas dalam Detik affinityCookieTtlSec Afinitas berbasis cookie
Kebijakan LB Lokalitas localityLbPolicy Kebijakan lokalitas load balancing
Waktu Tunggu (Detik) timeoutSec Waktu tunggu layanan backend

Konfigurasi log

Aktifkan logConfig.enable Logging
Frekuensi Sampling logConfig.sampleRate Logging

Grup

Grup backends[].group Backend
Deskripsi Deskripsi untuk grup backend. backends[].description
Mode Penyeimbangan backends[].balancingMode Setelan mode penyeimbangan dan kapasitas target
Pengubah Skala Kapasitas backends[].capcityScaler Pengubah skala kapasitas
Koneksi Maksimum backends[].maxConnections Mode penyeimbangan koneksi
Koneksi Maksimum Per Instance backends[].maxConnectionsPerInstance Mode penyeimbangan koneksi
Koneksi Maksimum Per Endpoint backends[].maxConnectionsPerEndpoint Mode penyeimbangan koneksi
Frekuensi Maksimum backends[].maxRate Mode penyeimbangan rasio
Tarif Maks. Per Instance backends[].maxRatePerInstance Mode penyeimbangan rasio
Frekuensi Maksimum Per Endpoint backends[].maxRatePerEndpoint Mode penyeimbangan rasio
Penggunaan Maksimum backends[].maxUtilization Mode penyeimbangan pemanfaatan

Backend NEG serverless

Wilayah region Ringkasan grup endpoint jaringan tanpa server
Jenis Jenis backend serverless. Nilai yang mungkin mencakup cloud-run, cloud-function, atau app-engine. Load balancer yang didukung
Nama Layanan appEngine.service Ringkasan grup endpoint jaringan tanpa server
Versi Layanan appEngine.version Ringkasan grup endpoint jaringan tanpa server

Konfigurasi IAP

Aktifkan iap.enabled Ringkasan Identity-Aware Proxy
Client ID OAuth2 iap.oauth2ClientId Cara membagikan klien OAuth
Rahasia Klien OAuth2 iap.oauth2ClientSecret Cara membagikan klien OAuth

Kebijakan CDN

Mode Cache cdnPolicy.cacheMode Ringkasan penyimpanan dalam cache
Usia Maksimum Cache URL yang Ditandatangani dalam Detik cdnPolicy.signedUrlCacheMaxAgeSec Menyesuaikan waktu cache maksimum
TTL Default cdnPolicy.defaultTtl Mengubah setelan dan penggantian TTL
TTL Maks cdnPolicy.maxTtl Mengubah setelan dan penggantian TTL
TTL Klien cdnPolicy.clientTtl Mengubah setelan dan penggantian TTL
Caching Negatif cdnPolicy.negativeCaching Menggunakan caching negatif
Menayangkan Meskipun Tidak Relevan cdnPolicy.serveWhileStale Menyajikan konten usang
Mengabaikan Cache di Header Permintaan cdnPolicy.bypassCacheOnRequestHeaders[] Melewati cache

Kebijakan Caching Negatif

Kode cdnPolicy.negativeCachingPolicy[].code Menggunakan caching negatif
TTL cdnPolicy.negativeCachingPolicy[].ttl Menggunakan caching negatif

Kebijakan Kunci Cache

Sertakan Host cdnPolicy.cacheKeyPolicy.includeHost Kunci cache
Sertakan Protokol cdnPolicy.cacheKeyPolicy.includeProtocol Kunci cache
Sertakan String Kueri cdnPolicy.cacheKeyPolicy.includeQueryString Daftar penyertaan string kueri
Daftar String Kueri yang Tidak Diizinkan cdnPolicy.cacheKeyPolicy.queryStringBlacklist[] Daftar pengecualian string kueri
Daftar yang Diizinkan String Kueri cdnPolicy.cacheKeyPolicy.queryStringWhitelist[] Daftar penyertaan string kueri
Sertakan Header HTTP cdnPolicy.cacheKeyPolicy.includeHttpHeaders[] Setelan kunci cache cookie HTTP dan header HTTP
Menyertakan Cookie Bernama cdnPolicy.cacheKeyPolicy.includeNamedCookies[] Mencakup cookie bernama

Deteksi Outlier

Detik Waktu Ejeksi Dasar outlierDetection.baseEjectionTime.seconds Deteksi outlier untuk NEG serverless
Waktu Ejeksi Dasar dalam Nanos outlierDetection.baseEjectionTime.nanos Deteksi outlier untuk NEG serverless
Error Berturut-turut outlierDetection.consecutiveErrors Deteksi outlier untuk NEG serverless
Kegagalan Gateway Berturut-turut outlierDetection.consecutiveGatewayFailure Deteksi outlier untuk NEG serverless
Menerapkan Error Berturut-turut outlierDetection.enforcingConsecutiveErrors Deteksi outlier untuk NEG serverless
Memberlakukan Kegagalan Gateway Berturut-turut outlierDetection.enforcingConsecutiveGatewayFailure Deteksi outlier untuk NEG serverless
Menerapkan Tingkat Keberhasilan outlierDetection.enforcingSuccessRate Deteksi outlier untuk NEG serverless
Detik Interval outlierDetection.interval.seconds Deteksi outlier untuk NEG serverless
Interval Nanos outlierDetection.interval.nanos Deteksi outlier untuk NEG serverless
Persen Ejeksi Maks. outlierDetection.maxEjectionPercent Deteksi outlier untuk NEG serverless
Host Minimum Tingkat Keberhasilan outlierDetection.successRateMinimumHosts Deteksi outlier untuk NEG serverless
Volume Permintaan Tingkat Keberhasilan outlierDetection.successRateRequestVolume Deteksi outlier untuk NEG serverless
Faktor Stdev Tingkat Keberhasilan outlierDetection.successRateStdevFactor Deteksi outlier untuk NEG serverless

Pemeriksaan Kesehatan

Host http2HealthCheck.host Flag tambahan untuk pemeriksaan kondisi HTTP, HTTPS, dan HTTP/2
Jalur Permintaan http2HealthCheck.requestPath Kriteria keberhasilan untuk HTTP, HTTPS, dan HTTP/2
Permintaan sslHealthCheck.request Kriteria keberhasilan untuk SSL dan TCP
Respons sslHealthCheck.response Flag tambahan untuk pemeriksaan kondisi HTTP, HTTPS, dan HTTP/2
Port http2HealthCheck.port Kategori, protokol, dan port health check
Nama Port http2HealthCheck.portName Port bernama
Header Proxy http2HealthCheck.proxyHeader Header
Spesifikasi Port http2HealthCheck.portSpecification Flag spesifikasi port
Protokol jenis Kategori, protokol, dan port health check
Interval Pemeriksaan Detik checkIntervalSec Probe
Waktu Tunggu (Detik) timeoutSec Probe
Ambang Batas Responsif healthyThreshold Status kesehatan
Batas Tidak Responsif unhealthyThreshold Status kesehatan
Logging logConfig.enable Informasi logging health check
Kebijakan Keamanan Edge edge_security_policy Kebijakan keamanan edge
Kebijakan Keamanan security_policy Ringkasan kebijakan keamanan
Jaringan Firewall jaringan Mengonfigurasi aturan firewall
Project Firewall Nama project tempat aturan firewall akan dibuat. Mengonfigurasi aturan firewall
Tag Target targetTags[] Membatasi klien yang dapat mengirim traffic ke load balancer
Akun Layanan Target targetServiceAccounts[] Pemfilteran sumber dan target berdasarkan akun layanan

Langkah berikutnya

Anda harus menghubungkan komponen backend ke komponen frontend. Untuk mengonfigurasi komponen yang menghadap ke luar, lihat Mengonfigurasi frontend Cloud Load Balancing global di Application Design Center.