Menyiapkan Load Balancer Aplikasi internal regional dengan backend eksternal

Panduan ini menunjukkan cara mengonfigurasi Load Balancer Aplikasi internal regional yang melakukan proxy permintaan ke backend eksternal. Backend eksternal adalah endpoint yang berada di luar Google Cloud.

Sebelum mengikuti panduan ini, pahami dokumentasi ringkasan Internet NEG, termasuk batasan-nya.

Diagram arsitektur berikut menunjukkan frontend Load Balancer Aplikasi internal regional dengan backend eksternal.

Load Balancer Aplikasi internal regional dengan backend eksternal.
Gambar 1. Load Balancer Aplikasi internal regional dengan backend eksternal (klik untuk memperbesar).

Izin

Untuk mengikuti panduan ini, Anda perlu membuat NEG internet dan membuat atau mengubah Load Balancer Aplikasi dalam project. Anda harus menjadi Pemilik atau Editor project (roles/owner atau roles/editor), atau Anda harus memiliki kedua peran Compute Engine IAM berikut.

Tugas Peran yang diperlukan
Membuat dan mengubah komponen load balancer Compute Network Admin
(roles/compute.networkAdmin)
Membuat dan mengubah NEG Compute Instance Admin
(roles/compute.instanceAdmin)

Menyiapkan lingkungan backend eksternal di luar Google Cloud

Untuk menyiapkan lingkungan backend eksternal, lihat bagian berikut.

Mengonfigurasi endpoint jaringan

Konfigurasikan endpoint jaringan untuk mengekspos backend eksternal Anda ke Google Cloud. Pastikan endpoint—baik kombinasi IP:Port maupun nama domain yang sepenuhnya memenuhi syarat (FQDN) dan port—dapat dijangkau melalui internet. Endpoint ini kemudian direferensikan dari NEG internet.

Untuk mengetahui persyaratan konfigurasi mendetail bagi endpoint NEG internet, lihat Ringkasan NEG internet.

Mengizinkan backend eksternal menerima traffic dari Google Cloud

Langkah ini dapat diselesaikan setelah Anda membuat subnet khusus proxy dan menyiapkan gateway Cloud NAT.

Agar permintaan dari Google Cloud dapat menjangkau backend eksternal, Anda harus melakukan langkah-langkah berikut:

  1. Konfigurasikan gateway Cloud NAT dengan alamat IP yang digunakan untuk traffic keluar dari Google Cloud. Gateway memetakan rentang subnet khusus proxy ke alamat IP eksternal. Untuk mengetahui langkah-langkahnya, lihat Menyiapkan gateway Cloud NAT.
  2. Pastikan lingkungan backend eksternal Anda dikonfigurasi untuk mengizinkan traffic dari Google Cloud menjangkau backend eksternal. Misalnya, jika menggunakan alamat IP yang dicadangkan sebelumnya untuk gateway NAT, Anda akan mengizinkan alamat IP tersebut di lingkungan eksternal. Anda mungkin perlu bekerja sama dengan admin jaringan atau keamanan lingkungan eksternal untuk menyiapkannya.

Menyiapkan lingkungan Google Cloud

Anda memerlukan jaringan VPC dengan dua subnet: satu untuk komponen load balancer dan satu lagi untuk subnet khusus proxy region. Kemudian, Anda akan membuat load balancer dengan backend NEG internet.

Membuat jaringan VPC dan subnet

Subnet ini digunakan untuk membuat komponen load balancer.

Cloud Console

  1. Di konsol Google Cloud, buka halaman jaringan VPC.
    Buka jaringan VPC
  2. Klik Create VPC network.
  3. Masukkan Nama: LB_NETWORK.
  4. Di bagian Subnets:
    • Setel Subnet creation mode ke Custom.
    • Di bagian New subnet, masukkan informasi berikut:
      • Nama: LB_SUBNET_NAME
      • Region: REGION
      • Rentang alamat IP: LB_SUBNET_RANGE
    • Klik Done.
  5. Klik Create.

gcloud

  1. Buat jaringan VPC kustom menggunakan perintah gcloud compute networks create:

    gcloud compute networks create LB_NETWORK \
      --subnet-mode=custom
    
  2. Buat subnet di jaringan LB_NETWORK.

    gcloud compute networks subnets create LB_SUBNET_NAME \
      --network=LB_NETWORK \
      --range=LB_SUBNET_RANGE \
      --region=REGION
    

Mengonfigurasi subnet khusus proxy

Subnet khusus proxy ini digunakan oleh semua load balancer berbasis Envoy regional di region REGION.

Konsol

  1. Di konsol Google Cloud, buka halaman jaringan VPC.
    Buka jaringan VPC
  2. Pilih Jaringan dari daftar.
  3. Klik Tambahkan subnet.
  4. Masukkan Nama: PROXY_ONLY_SUBNET_NAME.
  5. Pilih Region: REGION.
  6. Tetapkan Tujuan ke Proxy yang Dikelola Berdasarkan Wilayah.
  7. Masukkan rentang alamat IP: PROXY_ONLY_SUBNET_RANGE.
  8. Klik Tambahkan.

gcloud

Buat subnet khusus proxy dengan perintah gcloud compute networks subnets create.

gcloud compute networks subnets create PROXY_ONLY_SUBNET_NAME \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=REGION \
  --network=LB_NETWORK \
  --range=PROXY_ONLY_SUBNET_RANGE

Menyiapkan gateway Cloud NAT

Sebelum mengonfigurasi gateway Cloud NAT, pastikan Anda telah meninjau batasan dan pertimbangan harga terkait. Untuk mengetahui detailnya, lihat NEG Regional: Menggunakan gateway Cloud NAT.

Perintah berikut menjelaskan cara menyiapkan gateway Cloud NAT. Gateway Cloud NAT dapat dikonfigurasi untuk menggunakan alamat IP eksternal NAT otomatis, dengan alokasi berdasarkan permintaan, atau untuk menggunakan kumpulan alamat IP eksternal yang direservasi secara manual. Gateway memetakan rentang subnet khusus proxy ke alamat IP eksternal.

Menyiapkan alamat IP yang dialokasikan NAT otomatis

Saat membuat gateway Cloud NAT dengan alokasi alamat IP NAT otomatis, Anda dapat menentukan Network Service Tiers (Paket Premium atau Paket Standar) tempat gateway Cloud NAT mengalokasikan alamat IP.

Konsol

  1. Di Konsol Google Cloud, buka halaman Cloud NAT.

    Buka Cloud NAT

  2. Klik Get started atau Create Cloud NAT gateway.

  3. Masukkan nama gateway LB_NAT_CONFIG.

  4. Untuk Jenis NAT, pilih Publik.

  5. Dalam daftar Jaringan, pilih LB_NETWORK.

  6. Dalam daftar Region, pilih REGION.

  7. Buat Cloud Router di region tersebut.

  8. Untuk Source endpoint type, pilih Managed proxy load balancers.

  9. Dalam daftar Source, pilih Custom.

    • Untuk Subnets, pilih PROXY_ONLY_SUBNET_NAME.
  10. Dalam daftar Cloud NAT IP addresses, pilih Automatic (recommended).

  11. Untuk Network service tier, pilih Premium atau Standard.

  12. Klik Create.

gcloud

Gunakan alamat IP yang dialokasikan secara dinamis jika lingkungan backend eksternal Anda tidak mengharuskan Anda membuat daftar yang diizinkan untuk alamat IP Google Cloud tertentu yang dapat mengirim traffic ke backend eksternal.

  1. Membuat cloud router

    gcloud beta compute routers create ROUTER_NAME \
      --network=LB_NETWORK \
      --region=REGION
  2. Siapkan gateway Cloud NAT.

    gcloud beta compute routers nats create LB_NAT_CONFIG \
      --router=ROUTER_NAME \
      --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
      --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \
      --auto-allocate-nat-external-ips \
      --region=REGION
    

Ganti kode berikut:

  • LB_NAT_CONFIG: nama konfigurasi NAT Anda.

  • ROUTER_NAME: nama Cloud Router Anda.

  • REGION: region NAT yang akan dibuat. Jika tidak ditentukan, Anda mungkin diminta untuk memilih region (khusus mode interaktif).

  • PROXY_ONLY_SUBNET_NAME: nama subnet khusus proxy Anda.

Menyiapkan alamat IP yang dialokasikan secara manual

Gunakan alamat IP yang dialokasikan secara manual hanya jika lingkungan backend eksternal Anda mengharuskan Anda menggunakan daftar yang diizinkan untuk alamat IP Google Cloud tertentu. Jika lingkungan backend eksternal tidak memerlukan daftar yang diizinkan, gunakan alokasi dinamis seperti yang ditunjukkan sebelumnya.

Saat membuat gateway Cloud NAT, Anda dapat memilih untuk menetapkan alamat IP NAT secara manual dari Paket Premium atau Paket Standar atau keduanya, dengan tunduk pada kondisi tertentu.

Konsol

  1. Di Konsol Google Cloud, buka halaman Cloud NAT.

    Buka Cloud NAT

  2. Klik Get started atau Create Cloud NAT gateway.

  3. Masukkan nama gateway LB_NAT_CONFIG.

  4. Dalam daftar Jaringan, pilih LB_NETWORK.

  5. Dalam daftar Region, pilih REGION.

  6. Pilih atau buat Cloud Router di region.

  7. Untuk Source endpoint type, pilih Managed proxy load balancers.

  8. Dalam daftar Source, pilih Custom.

    • Di Subnet, pilih PROXY_ONLY_SUBNET_NAME.
  9. Dalam daftar Cloud NAT IP addresses, pilih Manual.

  10. Untuk Network service tier, pilih Premium atau Standard.

  11. Pilih atau buat alamat IP eksternal statis yang dicadangkan untuk digunakan NAT.

  12. Jika Anda ingin menentukan alamat IP tambahan, klik Tambahkan alamat IP, lalu pilih atau buat alamat IP eksternal statis yang dicadangkan tambahan.

  13. Klik Create.

gcloud

  1. Buat alamat IP. Karena gateway melakukan terjemahan NAT satu per satu, Anda harus memastikan bahwa kumpulan alamat IP yang dicadangkan cukup besar untuk menangani jumlah traffic yang Anda harapkan. Alamat IP NAT yang dialokasikan tidak memadai dapat menyebabkan hilangnya traffic.

    gcloud compute addresses create IP_ADDRESS_NAME_1 IP_ADDRESS_NAME_2 [IP_ADDRESS_NAME_3 ...] \
      --region=REGION
    
  2. Membuat cloud router

    gcloud compute routers create ROUTER_NAME \
      --network=LB_NETWORK \
      --region=REGION
  3. Siapkan gateway Cloud NAT.

    gcloud beta compute routers nats create LB_NAT_CONFIG \
      --router=ROUTER_NAME \
      --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \
      --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \
      --nat-external-ip-pool=IP_ADDRESS_NAME_1,IP_ADDRESS_NAME_2,[IP_ADDRESS_NAME_3 ...] \
      --region=REGION
    

    Ganti kode berikut:

  • LB_NAT_CONFIG: nama konfigurasi NAT Anda.

  • ROUTER_NAME: nama Cloud Router Anda.

  • PROXY_ONLY_SUBNET_NAME: nama subnet khusus proxy Anda.

  • REGION: region NAT yang akan dibuat. Jika tidak ditentukan, Anda mungkin diminta untuk memilih region (khusus mode interaktif).

Untuk mengetahui informasi selengkapnya, lihat Menentukan rentang subnet untuk NAT dalam dokumentasi Cloud NAT.

Pastikan Anda menggunakan daftar yang diizinkan untuk rentang alamat IP NAT di lingkungan backend eksternal, sehingga backend eksternal dapat menerima traffic dari Google Cloud.

Mencadangkan alamat IP load balancer

Cadangkan alamat IP internal untuk load balancer.

Konsol

Anda dapat mencadangkan alamat IP internal mandiri menggunakan konsol Google Cloud.

  1. Buka halaman VPC networks.

    Buka jaringan VPC

  2. Klik jaringan yang digunakan untuk mengonfigurasi konektivitas campuran di antara lingkungan.
  3. Klik Static internal IP addresses, lalu klik Reserve static address.
  4. Masukkan Nama: LB_IP_ADDRESS.
  5. Untuk Subnet, pilih LB_SUBNET_NAME.
  6. Jika Anda ingin menentukan alamat IP yang akan dicadangkan, di bagian Static IP address, pilih Let me choose, lalu isi Custom IP address. Jika tidak, sistem akan otomatis menetapkan alamat IP di subnet untuk Anda.
  7. Jika Anda ingin menggunakan alamat IP ini dengan beberapa aturan penerusan, di bagian Purpose, pilih Shared.
  8. Klik Pesan untuk menyelesaikan proses.

gcloud

  1. Menggunakan gcloud CLI, jalankan perintah compute addresses create:

    gcloud compute addresses create LB_IP_ADDRESS \
      --region=REGION \
      --subnet=LB_SUBNET_NAME
    
  2. Gunakan perintah compute addresses describe untuk melihat alamat IP yang dialokasikan:

    gcloud compute addresses describe LB_IP_ADDRESS \
      --region=REGION
    

Menyiapkan NEG internet

Anda dapat membuat NEG internet menggunakan endpoint INTERNET_FQDN_PORT atau endpoint INTERNET_IP_PORT.

Konsol

Membuat NEG dengan endpoint INTERNET_FQDN_PORT

  1. Di Konsol Google Cloud, buka halaman Network endpoint group.

    Buka Network endpoint group

  2. Klik Create network endpoint group.

  3. Tentukan INTERNET_NEG_NAME untuk NEG Internet Anda. Untuk informasi selengkapnya, lihat Konvensi penamaan resource.

  4. Di daftar Network endpoint group type, pilih Network endpoint group (Internet), lalu lakukan hal berikut:

    • Dalam daftar Cakupan, pilih Regional.
    • Opsional: Dalam daftar Region, ubah REGION untuk NEG ini.
    • Dalam daftar Jaringan, pilih LB_NETWORK.
    • Di kotak Default port, masukkan DEFAULT_PORT_NUMBER.
    • Dalam daftar Tambahkan endpoint melalui, pilih Nama dan port yang sepenuhnya memenuhi syarat.
  5. Pilih Create.

Menambahkan endpoint INTERNET_FQDN_PORT ke NEG

  1. Di Konsol Google Cloud, buka halaman Network endpoint group.

    Buka Network endpoint group

  2. Klik INTERNET_NEG_NAME.
  3. Masukkan Nama domain yang sepenuhnya memenuhi syarat seperti myorg.example.com. Anda harus menentukan objek FQDN dalam sintaksis FQDN standar.

  4. Opsional: Untuk Jenis port, pilih Kustom. Jika Jenis port adalah Default, port default NEG akan digunakan.

  5. Di kotak Nomor port, masukkan PORT_NUMBER_1.
  6. Pilih Create.

Membuat NEG dengan endpoint INTERNET_IP_PORT

  1. Di Konsol Google Cloud, buka halaman Network endpoint group.

    Buka Network endpoint group

  2. Klik Create network endpoint group.

  3. Tentukan nama INTERNET_NEG_NAME untuk NEG Internet Anda. Untuk informasi selengkapnya, lihat Konvensi penamaan resource.

  4. Di daftar Network endpoint group type, pilih Network endpoint group (Internet), lalu lakukan hal berikut:

    • Dalam daftar Cakupan, pilih Regional.
    • Opsional: Dalam daftar Region, ubah REGION untuk NEG ini.
    • Dalam daftar Jaringan, pilih LB_NETWORK.
    • Di kotak Default port, masukkan DEFAULT_PORT_NUMBER.
    • Dalam daftar Tambahkan endpoint melalui, pilih IP dan port.
  5. Pilih Create.

Menambahkan endpoint INTERNET_IP_PORT ke NEG

  1. Di Konsol Google Cloud, buka halaman Network endpoint group.

    Buka Network endpoint group

  2. Klik INTERNET_NEG_NAME.
  3. Di kolom IP address, masukkan IP_ADDRESS_1.
  4. Opsional: Di daftar Port type, pilih Custom. Jika Jenis port adalah Default, port default NEG akan digunakan.

  5. Di kolom Nomor port, masukkan PORT_NUMBER_1.
  6. Pilih Create.

gcloud

Untuk membuat NEG dengan endpoint INTERNET_FQDN_PORT:

  1. Buat resource NEG.

    gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \
        --network-endpoint-type=INTERNET_FQDN_PORT \
        --default-port=DEFAULT_PORT_NUMBER \
        --network=LB_NETWORK \
        --region=REGION
    
  2. Tambahkan endpoint ke NEG. Jika port tidak ditentukan, port default NEG akan digunakan.

    gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \
        --add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_1,port=PORT_NUMBER_1" \
        [--add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_2,port=PORT_NUMBER_2" \]
        --region=REGION
    

    Ganti kode berikut:

    • FULLY_QUALIFIED_DOMAIN_NAME: nama domain yang sepenuhnya memenuhi syarat untuk endpoint
    • PORT_NUMBER: nomor port untuk endpoint

    Anda dapat menambahkan hingga 256 endpoint per NEG.

Jika domain Anda dapat di-resolve melalui internet, tidak ada konfigurasi lain yang diperlukan untuk menyiapkan DNS. Namun, jika menggunakan FQDN pribadi, Anda harus mengonfigurasi Cloud DNS untuk memfasilitasi resolusi DNS. Nama tersebut harus dihosting di Cloud DNS atau dapat di-resolve melalui penerusan DNS dari Cloud DNS ke DNS lokal.

Mulai dengan membuat zona Cloud DNS untuk menghosting data DNS di project Anda. Kemudian, tambahkan data DNS ke dalamnya. Lihat dokumentasi Cloud DNS untuk mengetahui langkah-langkah konfigurasi tertentu.

Untuk membuat NEG dengan endpoint INTERNET_IP_PORT:

  1. Buat resource NEG.

    gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \
        --network-endpoint-type=INTERNET_IP_PORT \
        --default-port=DEFAULT_PORT_NUMBER \
        --network=LB_NETWORK \
        --region=REGION
    
  2. Tambahkan endpoint ke NEG. Jika port tidak ditentukan, port default NEG akan digunakan.

    gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \
        --add-endpoint="ip=IP_ADDRESS_1,port=PORT_NUMBER_1" \
        [--add-endpoint="ip=IP_ADDRESS_2,port=PORT_NUMBER_2" \]
        --region=REGION
    

    Ganti kode berikut:

    • IP_ADDRESS: alamat IP untuk endpoint
    • PORT_NUMBER: nomor port untuk endpoint

    Anda dapat mengulangi langkah ini untuk menambahkan hingga 256 endpoint per NEG.

Membuat load balancer

Konsol

Memulai konfigurasi

  1. Di konsol Google Cloud, buka halaman Load balancing.

    Buka Load balancing

  2. Klik Create load balancer.
  3. Untuk Type of load balancer, pilih Application Load Balancer (HTTP/HTTPS), lalu klik Next.
  4. Untuk Public facing or internal, pilih Internal, lalu klik Next.
  5. Untuk Cross-region atau single region deployment, pilih Best for regional workloads, lalu klik Next.
  6. Klik Konfigurasikan.

Konfigurasi dasar

  1. Masukkan Nama load balancer.
  2. Untuk Region, pilih REGION.
  3. Untuk Network, pilih LB_NETWORK.

Mereservasi subnet khusus proxy

Untuk memesan subnet khusus proxy:

  1. Klik Reserve subnet.
  2. Untuk Name, masukkan PROXY_ONLY_SUBNET_NAME.
  3. Untuk Rentang alamat IP, masukkan PROXY_ONLY_SUBNET_RANGE.
  4. Klik Tambahkan.

Konfigurasi frontend

  1. Klik Frontend configuration.
  2. Masukkan Nama.
  3. Untuk Subnetwork, pilih LB_SUBNET_NAME.
  4. Untuk membuat load balancer HTTPS, Anda harus memiliki sertifikat SSL. Sebaiknya gunakan sertifikat yang dikelola Google.

    Properti Nilai (ketik nilai atau pilih opsi yang ditentukan)
    Protokol HTTPS
    IP version IPv4
    Alamat IP Pilih alamat IP yang dicadangkan sebelumnya: LB_IP_ADDRESS.
    Port 443
    Sertifikat

    Pilih sertifikat SSL yang ada atau buat sertifikat baru.

    Untuk membuat load balancer HTTPS, Anda harus memiliki resource sertifikat SSL untuk digunakan di proxy HTTPS.

    Jika ingin menguji proses ini tanpa menyiapkan resource sertifikat SSL (atau domain seperti yang diperlukan oleh sertifikat yang dikelola Google), Anda dapat menyiapkan load balancer HTTP.

    Untuk membuat load balancer HTTP, pastikan opsi berikut dikonfigurasi dengan nilai ini:

    Properti Nilai (ketik nilai atau pilih opsi yang ditentukan)
    Protokol HTTP
    IP version IPv4
    Alamat IP Pilih alamat IP yang dicadangkan sebelumnya: LB_IP_ADDRESS.
    Port 80
  5. Klik Done.

Konfigurasi backend

  1. Klik Backend configuration.
  2. Klik Backend services and backend buckets.
  3. Klik Create a backend service.
  4. Masukkan nama.
  5. Untuk Backend type, pilih Internet network endpoint group.
  6. Untuk Protocol, pilih protokol yang ingin Anda gunakan dari load balancer ke NEG internet.
  7. Untuk Backends, di jendela New backend, pilih Regional internet network endpoint group yang dibuat di langkah sebelumnya.
  8. Klik Done.
  9. Konfigurasi health check:
    1. Untuk Health check, pilih Create a health check.
    2. Tetapkan nama health check ke HTTP_HEALTH_CHECK_NAME.
    3. Untuk Protocol, pilih HTTP.
    4. Tetapkan Port ke 80.
  10. Klik Create.

Tinjau dan selesaikan

  1. Klik Review and finalize.
  2. Jika semuanya sudah benar, klik Buat.

gcloud

  1. Opsional: Buat health check. Prob kesehatan untuk backend eksternal menggunakan health check Envoy terdistribusi dan kemudian diterjemahkan NAT.
    gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \
        --region=REGION \
        --use-serving-port
    
  2. Buat layanan backend:
    gcloud compute backend-services create BACKEND_SERVICE \
        --load-balancing-scheme=INTERNAL_MANAGED \
        --protocol=HTTP \
        --health-checks=HTTP_HEALTH_CHECK_NAME \
        --health-checks-region=REGION \
        --region=REGION
    
  3. Tambahkan NEG internet ke layanan backend:
    gcloud compute backend-services add-backend BACKEND_SERVICE \
        --network-endpoint-group=INTERNET_NEG_NAME \
        --network-endpoint-group-region=REGION \
        --region=REGION
    
  4. Buat peta URL untuk mengarahkan permintaan masuk ke layanan backend:
    gcloud compute url-maps create URL_MAP_NAME \
        --default-service=BACKEND_SERVICE \
        --region=REGION
    
  5. Opsional: Lakukan langkah ini jika Anda menggunakan HTTPS antara klien dan load balancer. Langkah ini tidak diperlukan untuk load balancer HTTP.

    Anda dapat membuat sertifikat Compute Engine atau Certificate Manager. Gunakan salah satu metode berikut untuk membuat sertifikat menggunakan Pengelola Sertifikat:

    • Sertifikat yang dikelola sendiri secara regional. Untuk informasi tentang cara membuat dan menggunakan sertifikat yang dikelola sendiri secara regional, lihat men-deploy sertifikat yang dikelola sendiri secara regional. Peta sertifikat tidak didukung.

    • Sertifikat regional yang dikelola Google. Peta sertifikat tidak didukung.

      Jenis sertifikat regional yang dikelola Google berikut didukung oleh Pengelola Sertifikat:

    • Setelah membuat sertifikat, lampirkan sertifikat langsung ke proxy target.

      Untuk membuat resource sertifikat SSL yang dikelola sendiri di Compute Engine:
      gcloud compute ssl-certificates create SSL_CERTIFICATE_NAME \
          --certificate CRT_FILE_PATH \
          --private-key KEY_FILE_PATH
      
    • Buat proxy HTTP(S) target untuk merutekan permintaan ke peta URL Anda.

      Untuk load balancer HTTP, buat proxy target HTTP:

      gcloud compute target-http-proxies create TARGET_HTTP_PROXY_NAME \
          --url-map=URL_MAP_NAME \
          --region=REGION
      

      Untuk load balancer HTTPS, buat proxy target HTTPS. Proxy ini merupakan bagian dari load balancer yang menyimpan sertifikat SSL untuk Load Balancing HTTPS, sehingga Anda juga memuat sertifikat pada langkah ini.

      gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \
          --ssl-certificates=SSL_CERTIFICATE_NAME \
          --url-map=URL_MAP_NAME \
          --region=REGION
      
    • Buat aturan penerusan untuk mengarahkan permintaan masuk ke proxy.

      Untuk load balancer HTTP:

      gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \
          --load-balancing-scheme=INTERNAL_MANAGED \
          --network-tier=PREMIUM \
          --network=LB_NETWORK \
          --subnet=LB_SUBNET_NAME \
          --address=LB_IP_ADDRESS \
          --target-http-proxy=TARGET_HTTP_PROXY_NAME \
          --target-http-proxy-region=REGION \
          --region=REGION \
          --ports=80
      

      Untuk load balancer HTTPS:

      gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
          --load-balancing-scheme=INTERNAL_MANAGED \
          --network-tier=PREMIUM \
          --network=LB_NETWORK \
          --subnet=LB_SUBNET_NAME \
          --address=LB_IP_ADDRESS \
          --target-https-proxy=TARGET_HTTPS_PROXY_NAME \
          --target-http-proxy-region=REGION \
          --region=REGION \
          --ports=443
      

Menghubungkan domain ke load balancer

Setelah load balancer dibuat, catat alamat IP yang terkait dengan load balancer, misalnya, 30.90.80.100. Untuk mengarahkan domain ke load balancer, buat data A menggunakan layanan pendaftaran domain. Jika Anda menambahkan beberapa domain ke sertifikat SSL, Anda harus menambahkan data A untuk setiap domain, yang semuanya mengarah ke alamat IP load balancer. Misalnya, untuk membuat data A bagi www.example.com dan example.com, gunakan string berikut:

NAME                  TYPE     DATA
www                   A        30.90.80.100
@                     A        30.90.80.100

Jika Anda menggunakan Cloud DNS sebagai penyedia DNS, lihat Menambahkan, mengubah, dan menghapus data.

Menguji load balancer

Setelah mengonfigurasi load balancer, Anda dapat mulai mengirimkan traffic ke alamat IP load balancer.

Membuat VM klien

Contoh ini membuat VM klien (vm-client) di region yang sama dengan load balancer. Klien digunakan untuk memvalidasi konfigurasi load balancer dan menunjukkan perilaku yang diharapkan.

gcloud

VM klien dapat berada di zona mana pun dalam REGION yang sama dengan load balancer, dan dapat menggunakan subnet apa pun di jaringan VPC yang sama.

gcloud compute instances create vm-client \
    --image-family=debian-10 \
    --image-project=debian-cloud \
    --tags=allow-ssh \
    --network=LB_NETWORK \
    --subnet=LB_SUBNET_NAME \
    --zone=ZONE

Mengirim traffic ke load balancer

Mungkin perlu waktu beberapa menit hingga konfigurasi load balancer diterapkan setelah Anda men-deploy-nya untuk pertama kalinya.

  • Hubungkan ke instance klien menggunakan SSH.

    gcloud compute ssh vm-client \
      --zone=ZONE
    
  • Pastikan load balancer terhubung ke aplikasi yang Anda jalankan di backend eksternal seperti yang diharapkan.

    Untuk pengujian HTTP, jalankan:

    curl IP_ADDRESS
    

    Untuk pengujian HTTPS, jalankan:

    curl -k -s 'https://TEST_DOMAIN_URL:443' --connect-to TEST_DOMAIN_URL:443:IP_ADDRESS:443
    

    Ganti TEST_DOMAIN_URL dengan domain yang terkait dengan aplikasi Anda. Contoh, test.example.com.

    Flag -k menyebabkan curl melewati validasi sertifikat.

Konfigurasi tambahan

Bagian ini memperluas contoh konfigurasi untuk memberikan opsi konfigurasi alternatif dan tambahan. Semua tugas bersifat opsional. Anda dapat melakukannya dalam urutan apa pun.

Untuk mengaktifkan lebih banyak kemampuan untuk Load Balancer Aplikasi internal regional, seperti akses global (jika klien Anda berada di region lain), lihat Menyiapkan Load Balancer Aplikasi internal dengan backend grup instance VM: Konfigurasi tambahan.

Menggunakan header kustom untuk mengautentikasi permintaan

Untuk mengautentikasi permintaan yang dikirim ke backend eksternal, Anda dapat menetapkan header kustom untuk menunjukkan bahwa permintaan berasal dari load balancer Google Cloud. Anda juga harus mengonfigurasi backend eksternal untuk mengharapkan header kustom ini pada traffic yang berasal dari Google Cloud.

Untuk mempelajari cara menyiapkan header kustom, lihat Menyiapkan pengelolaan traffic lanjutan.

Untuk metode autentikasi lainnya, lihat Melakukan autentikasi permintaan ke backend eksternal.

Memperbarui waktu tunggu keepalive HTTP klien

Load balancer yang dibuat pada langkah sebelumnya telah dikonfigurasi dengan nilai default untuk waktu tunggu keepalive HTTP klien.

Untuk memperbarui waktu tunggu keepalive HTTP klien, gunakan petunjuk berikut.

Konsol

  1. Di konsol Google Cloud, buka halaman Load balancing.

    Buka Load balancing.

  2. Klik nama load balancer yang ingin diubah.
  3. Klik Edit.
  4. Klik Frontend configuration.
  5. Luaskan Fitur lanjutan. Untuk Timeout keepalive HTTP, masukkan nilai waktu tunggu.
  6. Klik Perbarui.
  7. Untuk meninjau perubahan, klik Tinjau dan selesaikan, lalu klik Perbarui.

gcloud

Untuk load balancer HTTP, perbarui proxy HTTP target menggunakan perintah gcloud compute target-http-proxies update.

      gcloud compute target-http-proxies update TARGET_HTTP_PROXY_NAME \
         --http-keep-alive-timeout-sec=HTTP_KEEP_ALIVE_TIMEOUT_SEC \
         --region=REGION
      

Untuk load balancer HTTPS, perbarui proxy HTTPS target menggunakan perintah gcloud compute target-https-proxies update.

      gcloud compute target-https-proxies update TARGET_HTTP_PROXY_NAME \
         --http-keep-alive-timeout-sec=HTTP_KEEP_ALIVE_TIMEOUT_SEC \
         --region REGION
      

Ganti kode berikut:

  • TARGET_HTTP_PROXY_NAME: nama proxy HTTP target.
  • TARGET_HTTPS_PROXY_NAME: nama proxy HTTPS target.
  • HTTP_KEEP_ALIVE_TIMEOUT_SEC: nilai waktu tunggu keepalive HTTP dari 5 hingga 600 detik.

Langkah selanjutnya