Panduan ini menggunakan contoh untuk mengajarkan dasar-dasar Load Balancer Jaringan passthrough internal Google Cloud. Sebelum mengikuti panduan ini, pahami hal-hal berikut:
- Konsep Load Balancer Jaringan passthrough internal
- Cara kerja Load Balancer Jaringan passthrough internal
- Ringkasan aturan firewall
- Konsep health check
Jika ingin mengikuti panduan langkah demi langkah untuk tugas ini langsung di Konsol Google Cloud, klik Pandu saya:
Izin
Untuk mengikuti panduan ini, Anda perlu membuat instance dan mengubah jaringan dalam project. Anda harus menjadi pemilik atau editor project, atau Anda harus memiliki semua peran IAM Compute Engine berikut:
Tugas | Peran yang Diperlukan |
---|---|
Membuat komponen jaringan, subnet, dan load balancer | Admin Jaringan |
Menambahkan dan menghapus aturan firewall | Security Admin |
Membuat instance | Compute Instance Admin |
Untuk informasi selengkapnya, lihat panduan berikut:
Menyiapkan load balancer dengan subnet satu stack
Panduan ini menunjukkan cara mengonfigurasi dan menguji Load Balancer Jaringan passthrough internal. Langkah-langkah di bagian ini menjelaskan cara mengonfigurasi hal berikut:
- Contoh yang menggunakan jaringan VPC mode kustom bernama
lb-network
. - Subnet single-stack (
stack-type
ditetapkan keIPv4
), yang diperlukan untuk traffic IPv4. Saat membuat subnet stack tunggal di jaringan VPC mode kustom, Anda memilih rentang subnet IPv4 untuk subnet. - Aturan firewall yang mengizinkan koneksi masuk ke VM backend.
- Grup instance backend, yang terletak di region dan subnet berikut untuk contoh ini:
- Region:
us-west1
- Subnet:
lb-subnet
, dengan rentang alamat IPv4 utama10.1.2.0/24
.
- Region:
- Empat VM backend: dua VM dalam grup instance tidak terkelola di zona
us-west1-a
dan dua VM dalam grup instance tidak terkelola di zonaus-west1-c
. Untuk menunjukkan akses global, contoh ini membuat VM klien pengujian kedua di region dan subnet yang berbeda:- Region:
europe-west1
- Subnet:
europe-subnet
, dengan rentang alamat IP utama10.3.4.0/24
- Region:
- Satu VM klien untuk menguji koneksi.
- Komponen Load Balancer Jaringan passthrough internal berikut:
- Health check untuk layanan backend.
- Layanan backend internal di region
us-west1
untuk mengelola distribusi koneksi ke dua grup instance zona. - Aturan penerusan internal dan alamat IP internal untuk frontend load balancer.
Arsitektur untuk contoh ini terlihat seperti ini:
Mengonfigurasi jaringan, region, dan subnet
Untuk membuat contoh jaringan dan subnet, ikuti langkah-langkah berikut.
Konsol
Di Konsol Google Cloud, buka halaman jaringan VPC.
Klik Create VPC network.
Untuk Name, masukkan
lb-network
.Di bagian Subnets, lakukan hal berikut:
- Setel Subnet creation mode ke Custom.
- Di bagian New subnet, masukkan informasi berikut:
- Nama:
lb-subnet
- Region:
us-west1
- Jenis stack IP: IPv4 (single-stack)
- Rentang alamat IP:
10.1.2.0/24
- Nama:
- Klik Done.
- Klik Tambahkan subnet, lalu masukkan informasi berikut:
- Nama:
europe-subnet
- Region:
europe-west1
- Jenis stack IP: IPv4 (single-stack)
- Rentang alamat IP:
10.3.4.0/24
- Nama:
- Klik Done.
Klik Create.
gcloud
Buat jaringan VPC kustom:
gcloud compute networks create lb-network --subnet-mode=custom
Di jaringan
lb-network
, buat subnet untuk backend di regionus-west1
:gcloud compute networks subnets create lb-subnet \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-west1
Di jaringan
lb-network
, buat subnet lain untuk menguji akses global di regioneurope-west1
:gcloud compute networks subnets create europe-subnet \ --network=lb-network \ --range=10.3.4.0/24 \ --region=europe-west1
API
Buat permintaan POST
ke metode networks.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks { "routingConfig": { "routingMode": "REGIONAL" }, "name": "lb-network", "autoCreateSubnetworks": false }
Buat dua permintaan POST
ke metode subnetworks.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks { "name": "lb-subnet", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "ipCidrRange": "10.1.2.0/24", "privateIpGoogleAccess": false }
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/europe-west1/subnetworks { "name": "europe-subnet", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "ipCidrRange": "10.3.4.0/24", "privateIpGoogleAccess": false }
Mengonfigurasi aturan firewall
Contoh ini menggunakan aturan firewall berikut:
fw-allow-lb-access
: Aturan ingress, yang berlaku untuk semua target di jaringan VPC, yang mengizinkan traffic dari sumber dalam rentang10.1.2.0/24
dan10.3.4.0/24
. Aturan ini mengizinkan traffic masuk dari klien mana pun yang terletak di salah satu dari dua subnet. Kemudian, Anda dapat mengonfigurasi dan menguji akses global.fw-allow-ssh
: Aturan ingress, yang berlaku untuk instance yang di-load balanced, yang memungkinkan konektivitas SSH yang masuk pada TCP port 22 dari alamat mana pun. Anda dapat memilih rentang IP sumber yang lebih ketat untuk aturan ini; misalnya, Anda dapat menentukan hanya rentang IP sistem tempat Anda akan memulai sesi SSH. Contoh ini menggunakan tag targetallow-ssh
untuk mengidentifikasi VM tempat tag tersebut harus diterapkan.fw-allow-health-check
: Aturan ingress, yang berlaku untuk instance yang di-load balance, yang mengizinkan traffic dari sistem health check Google Cloud (130.211.0.0/22
dan35.191.0.0/16
). Contoh ini menggunakan tag targetallow-health-check
untuk mengidentifikasi instance tempat tag tersebut harus diterapkan.
Tanpa aturan firewall ini, aturan tolak ingress default akan memblokir traffic masuk ke instance backend.
Konsol
Di Konsol Google Cloud, buka halaman Firewall policies.
Untuk mengizinkan traffic subnet, klik Buat aturan firewall dan masukkan informasi berikut:
- Nama:
fw-allow-lb-access
- Jaringan:
lb-network
- Prioritas:
1000
- Direction of traffic: ingress
- Tindakan jika ada kecocokan: izinkan
- Targets: All instances in the network
- Filter sumber: Rentang IPv4
- Rentang IPv4 sumber:
10.1.2.0/24
- Protocols and ports: Allow all
- Nama:
Klik Create.
Untuk mengizinkan koneksi SSH yang masuk, klik Create firewall rule lagi dan masukkan informasi berikut:
- Nama:
fw-allow-ssh
- Jaringan:
lb-network
- Prioritas:
1000
- Direction of traffic: ingress
- Tindakan terhadap kecocokan: izinkan
- Targets: Tag target yang ditentukan
- Tag target:
allow-ssh
- Filter sumber: Rentang IPv4
- Rentang IPv4 sumber:
0.0.0.0/0
- Protocols and ports: Pilih Specified protocols and ports,
pilih kotak centang TCP, lalu masukkan
22
di Ports.
- Nama:
Klik Create.
Untuk mengizinkan health check Google Cloud, klik Create firewall rule untuk ketiga kalinya dan masukkan informasi berikut:
- Nama:
fw-allow-health-check
- Jaringan:
lb-network
- Prioritas:
1000
- Direction of traffic: ingress
- Tindakan terhadap kecocokan: izinkan
- Targets: Tag target yang ditentukan
- Tag target:
allow-health-check
- Filter sumber: Rentang IPv4
- Rentang IPv4 sumber:
130.211.0.0/22
dan35.191.0.0/16
- Protocols and ports: Allow all
- Nama:
Klik Create.
gcloud
Buat aturan firewall
fw-allow-lb-access
untuk mengizinkan komunikasi dari dalam subnet:gcloud compute firewall-rules create fw-allow-lb-access \ --network=lb-network \ --action=allow \ --direction=ingress \ --source-ranges=10.1.2.0/24,10.3.4.0/24 \ --rules=tcp,udp,icmp
Buat aturan firewall
fw-allow-ssh
untuk mengizinkan konektivitas SSH ke VM dengan tag jaringanallow-ssh
. Saat Anda menghapussource-ranges
, Google Cloud akan menafsirkan aturan sebagai sumber apa pun.gcloud compute firewall-rules create fw-allow-ssh \ --network=lb-network \ --action=allow \ --direction=ingress \ --target-tags=allow-ssh \ --rules=tcp:22
Buat aturan
fw-allow-health-check
untuk mengizinkan health check Google Cloud.gcloud compute firewall-rules create fw-allow-health-check \ --network=lb-network \ --action=allow \ --direction=ingress \ --target-tags=allow-health-check \ --source-ranges=130.211.0.0/22,35.191.0.0/16 \ --rules=tcp,udp,icmp
API
Buat aturan firewall fw-allow-lb-access
dengan membuat permintaan POST
ke
metode firewalls.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls { "name": "fw-allow-lb-access", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "priority": 1000, "sourceRanges": [ "10.1.2.0/24", "10.3.4.0/24" ], "allowed": [ { "IPProtocol": "tcp" }, { "IPProtocol": "udp" }, { "IPProtocol": "icmp" } ], "direction": "INGRESS", "logConfig": { "enable": false }, "disabled": false }
Buat aturan firewall fw-allow-ssh
dengan membuat permintaan POST
ke
metode firewalls.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls { "name": "fw-allow-ssh", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "priority": 1000, "sourceRanges": [ "0.0.0.0/0" ], "targetTags": [ "allow-ssh" ], "allowed": [ { "IPProtocol": "tcp", "ports": [ "22" ] } ], "direction": "INGRESS", "logConfig": { "enable": false }, "disabled": false }
Buat aturan firewall fw-allow-health-check
dengan membuat permintaan POST
ke
metode firewalls.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls { "name": "fw-allow-health-check", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "priority": 1000, "sourceRanges": [ "130.211.0.0/22", "35.191.0.0/16" ], "targetTags": [ "allow-health-check" ], "allowed": [ { "IPProtocol": "tcp" }, { "IPProtocol": "udp" }, { "IPProtocol": "icmp" } ], "direction": "INGRESS", "logConfig": { "enable": false }, "disabled": false }
Membuat VM backend dan grup instance
Contoh ini menggunakan dua grup instance tidak terkelola yang masing-masing memiliki dua VM backend (server). Untuk mendemonstrasikan sifat regional Load Balancer Jaringan passthrough internal, kedua grup instance ditempatkan di zona terpisah, us-west1-a
dan us-west1-c
.
- Grup instance
ig-a
berisi dua VM berikut:vm-a1
vm-a2
- Grup instance
ig-c
berisi dua VM berikut:vm-c1
vm-c2
Traffic ke keempat VM backend di-load balancing.
Untuk mendukung contoh ini dan opsi konfigurasi tambahan, setiap VM menjalankan server web Apache yang memproses port TCP berikut: 80, 8008, 8080, 8088, 443, dan 8443.
Setiap VM diberi alamat IP internal di lb-subnet
dan alamat IP eksternal (publik) sementara. Anda dapat menghapus alamat IP eksternal
nanti.
Alamat IP eksternal untuk VM backend tidak diperlukan; tetapi, alamat IP tersebut berguna untuk contoh ini karena mengizinkan VM backend mendownload Apache dari internet, dan dapat terhubung menggunakan SSH.
Secara default, Apache dikonfigurasi untuk mengikat ke alamat IP apa pun. Load Balancer Jaringan passthrough internal mengirimkan paket dengan mempertahankan IP tujuan. Pastikan software server yang berjalan di VM backend Anda memproses alamat IP aturan penerusan internal load balancer. Jika Anda mengonfigurasi beberapa aturan penerusan internal, pastikan software Anda memproses alamat IP internal yang terkait dengan setiap aturan. Alamat IP tujuan paket yang dikirim ke VM backend oleh Load Balancer Jaringan passthrough internal adalah alamat IP internal aturan penerusan.
Untuk memudahkan petunjuk, VM backend ini menjalankan Debian Debian GNU/Linux 10.
Konsol
Membuat VM backend
Di konsol Google Cloud, buka halaman Instance VM.
Ulangi langkah 3 hingga 8 untuk setiap VM, menggunakan kombinasi nama dan zona berikut.
- Nama:
vm-a1
, zona:us-west1-a
- Nama:
vm-a2
, zona:us-west1-a
- Nama:
vm-c1
, zona:us-west1-c
- Nama:
vm-c2
, zona:us-west1-c
- Nama:
Klik Create instance.
Tetapkan Name seperti yang ditunjukkan pada langkah 2.
Untuk Region, pilih
us-west1
, dan pilih Zone seperti yang ditunjukkan pada langkah 2.Di bagian Boot disk, pastikan Debian GNU/Linux 12 (bookworm) dipilih untuk opsi boot disk. Jika perlu, klik Ganti untuk mengubah gambar.
Klik Advanced options.
Klik Networking dan konfigurasikan kolom berikut:
- Untuk Network tags, masukkan
allow-ssh
danallow-health-check
. - Untuk Network interfaces, pilih dari daftar berikut:
- Jaringan:
lb-network
- Subnet:
lb-subnet
- Jenis stack IP: IPv4 (single-stack)
- Primary internal IPv4 address: Ephemeral (automatic)
- External IPv4 address: Ephemeral
- Jaringan:
- Untuk Network tags, masukkan
Klik Management, lalu di kolom Startup script, masukkan skrip berikut. Konten skrip identik untuk keempat VM.
#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completed
Klik Create.
Membuat grup instance
Di konsol Google Cloud, buka halaman Instance groups.
Ulangi langkah-langkah berikut untuk membuat dua grup instance tidak terkelola dengan masing-masing VM di dalamnya, menggunakan kombinasi ini.
- Nama grup instance:
ig-a
, zona:us-west1-a
, VM:vm-a1
danvm-a2
- Nama grup instance:
ig-c
, zona:us-west1-c
, VM:vm-c1
danvm-c2
- Nama grup instance:
Klik Create instance group.
Klik New unmanaged instance group.
Tetapkan Name seperti yang ditunjukkan pada langkah 2.
Di bagian Location, pilih
us-west1
untuk Region, lalu pilih Zone seperti yang ditunjukkan pada langkah 2.Untuk Network, pilih
lb-network
.Untuk Subnetwork, pilih
lb-subnet
.Di bagian VM instances, tambahkan VM seperti yang ditunjukkan pada langkah 2.
Klik Create.
gcloud
Buat empat VM dengan menjalankan perintah berikut empat kali, menggunakan empat kombinasi ini untuk
[VM-NAME]
dan[ZONE]
. Konten skrip sama untuk keempat VM.VM-NAME
:vm-a1
,ZONE
:us-west1-a
VM-NAME
:vm-a2
,ZONE
:us-west1-a
VM-NAME
:vm-c1
,ZONE
:us-west1-c
VM-NAME
:vm-c2
,ZONE
:us-west1-c
gcloud compute instances create VM-NAME \ --zone=ZONE \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=allow-ssh,allow-health-check \ --subnet=lb-subnet \ --metadata=startup-script='#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completed'
Buat dua grup instance tidak terkelola di setiap zona:
gcloud compute instance-groups unmanaged create ig-a \ --zone=us-west1-a gcloud compute instance-groups unmanaged create ig-c \ --zone=us-west1-c
Tambahkan VM ke grup instance yang sesuai:
gcloud compute instance-groups unmanaged add-instances ig-a \ --zone=us-west1-a \ --instances=vm-a1,vm-a2 gcloud compute instance-groups unmanaged add-instances ig-c \ --zone=us-west1-c \ --instances=vm-c1,vm-c2
API
Untuk empat VM, gunakan nama dan zona VM berikut:
VM-NAME
:vm-a1
,ZONE
:us-west1-a
VM-NAME
:vm-a2
,ZONE
:us-west1-a
VM-NAME
:vm-c1
,ZONE
:us-west1-c
VM-NAME
:vm-c2
,ZONE
:us-west1-c
Anda bisa mendapatkan DEBIAN_IMAGE_NAME
saat ini dengan menjalankan perintah
gcloud
berikut:
gcloud compute images list \ --filter="family=debian-12"
Buat empat VM backend dengan membuat empat permintaan POST
ke
metode instances.insert
:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM-NAME", "tags": { "items": [ "allow-health-check", "allow-ssh" ] }, "machineType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/[ZONE]/machineTypes/e2-standard-2", "canIpForward": false, "networkInterfaces": [ { "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "accessConfigs": [ { "type": "ONE_TO_ONE_NAT", "name": "external-nat", "networkTier": "PREMIUM" } ] } ], "disks": [ { "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "autoDelete": true, "deviceName": "VM-NAME", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/debian-image-name", "diskType": "projects/PROJECT_ID/zones/zone/diskTypes/pd-standard", "diskSizeGb": "10" } } ], "metadata": { "items": [ { "key": "startup-script", "value": "#! /bin/bash\napt-get update\napt-get install apache2 -y\na2ensite default-ssl\na2enmod ssl\nfile_ports=\"/etc/apache2/ports.conf\"\nfile_http_site=\"/etc/apache2/sites-available/000-default.conf\"\nfile_https_site=\"/etc/apache2/sites-available/default-ssl.conf\"\nhttp_listen_prts=\"Listen 80\\nListen 8008\\nListen 8080\\nListen 8088\"\nhttp_vh_prts=\"*:80 *:8008 *:8080 *:8088\"\nhttps_listen_prts=\"Listen 443\\nListen 8443\"\nhttps_vh_prts=\"*:443 *:8443\"\nvm_hostname=\"$(curl -H \"Metadata-Flavor:Google\" \\\nhttp://metadata.google.internal/computeMetadata/v1/instance/name)\"\necho \"Page served from: $vm_hostname\" | \\\ntee /var/www/html/index.html\nprt_conf=\"$(cat \"$file_ports\")\"\nprt_conf_2=\"$(echo \"$prt_conf\" | sed \"s|Listen 80|${http_listen_prts}|\")\"\nprt_conf=\"$(echo \"$prt_conf_2\" | sed \"s|Listen 443|${https_listen_prts}|\")\"\necho \"$prt_conf\" | tee \"$file_ports\"\nhttp_site_conf=\"$(cat \"$file_http_site\")\"\nhttp_site_conf_2=\"$(echo \"$http_site_conf\" | sed \"s|*:80|${http_vh_prts}|\")\"\necho \"$http_site_conf_2\" | tee \"$file_http_site\"\nhttps_site_conf=\"$(cat \"$file_https_site\")\"\nhttps_site_conf_2=\"$(echo \"$https_site_conf\" | sed \"s|_default_:443|${https_vh_prts}|\")\"\necho \"$https_site_conf_2\" | tee \"$file_https_site\"\nsystemctl restart apache2" } ] }, "scheduling": { "preemptible": false }, "deletionProtection": false }
Buat dua grup instance dengan membuat permintaan POST
ke metode instanceGroups.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instanceGroups { "name": "ig-a", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet" }
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instanceGroups { "name": "ig-c", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet" }
Tambahkan instance ke setiap grup instance dengan membuat permintaan POST
ke
metode instanceGroups.addInstances
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instanceGroups/ig-a/addInstances { "instances": [ { "instance": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances/vm-a1", "instance": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances/vm-a2" } ] }
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instanceGroups/ig-c/addInstances { "instances": [ { "instance": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instances/vm-c1", "instance": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instances/vm-c2" } ] }
Mengonfigurasi komponen load balancer
Langkah-langkah ini mengonfigurasi semua komponen Load Balancer Jaringan passthrough internal, dimulai dengan health check dan layanan backend, lalu komponen frontend:
Health check: Dalam contoh ini, Anda menggunakan health check HTTP yang memeriksa respons
200
(OK) HTTP. Untuk mengetahui informasi selengkapnya, lihat bagian health check dalam ringkasan Load Balancer Jaringan passthrough internal.Layanan backend: Karena Anda perlu meneruskan traffic HTTP melalui load balancer internal, Anda harus menggunakan TCP, bukan UDP.
Aturan penerusan: Contoh ini membuat satu aturan penerusan internal.
Alamat IP internal: Dalam contoh ini, Anda menentukan alamat IP internal,
10.1.2.99
, saat membuat aturan penerusan.
Konsol
Memulai konfigurasi
Di konsol Google Cloud, buka halaman Load balancing.
- Klik Create load balancer.
- Untuk Type of load balancer, pilih Network Load Balancer (TCP/UDP/SSL), lalu klik Next.
- Untuk Proxy or passthrough, pilih Passthrough load balancer, lalu klik Next.
- Untuk Public facing or internal, pilih Internal, lalu klik Next.
- Klik Konfigurasikan.
Konfigurasi dasar
Di halaman Membuat Load Balancer Jaringan passthrough internal, masukkan informasi berikut:
- Nama load balancer:
be-ilb
- Region:
us-west1
- Jaringan:
lb-network
Mengonfigurasi backend
- Klik Backend configuration.
- Untuk hanya menangani traffic IPv4, di bagian New Backend pada Backends, pilih IP stack type sebagai IPv4 (single-stack).
- Di Instance group, pilih grup instance
ig-c
, lalu klik Done. - Klik Add a backend, lalu ulangi langkah untuk menambahkan
ig-a
. Dari daftar Health check, pilih Create a health check, masukkan informasi berikut, lalu klik Save.
- Nama:
hc-http-80
- Protocol:
HTTP
- Port:
80
- Protokol proxy:
NONE
- Jalur permintaan:
/
Perhatikan bahwa saat Anda menggunakan konsol Google Cloud untuk membuat load balancer, health check bersifat global. Jika Anda ingin membuat health check regional, gunakan
gcloud
atau API.- Nama:
Pastikan ada tanda centang biru di samping Backend configuration sebelum melanjutkan.
Mengonfigurasi frontend
- Klik Frontend configuration.
- Di bagian New Frontend IP and port, lakukan hal berikut:
- Untuk Name, masukkan
fr-ilb
. - Untuk Subnetwork, pilih
lb-subnet
. - Di bagian Internal IP purpose, dalam daftar IP address,
pilih Create IP address, masukkan informasi berikut, lalu
klik Reserve.
- Nama:
ip-ilb
- Versi IP: IPv4
- Static IP address: Let me choose
- Alamat IP kustom:
10.1.2.99
- Nama:
- Untuk Ports, pilih Multiple, lalu di Port numbers, masukkan
80
,8008
,8080
, dan8088
. - Pastikan ada tanda centang biru di samping Frontend configuration sebelum melanjutkan.
- Untuk Name, masukkan
Meninjau konfigurasi
- Klik Review and finalize.
- Tinjau setelan konfigurasi load balancer Anda.
- Opsional: Klik Equivalent code untuk melihat permintaan REST API yang akan digunakan untuk membuat load balancer.
- Klik Create.
gcloud
Buat health check HTTP regional baru untuk menguji konektivitas HTTP ke VM di port 80.
gcloud compute health-checks create http hc-http-80 \ --region=us-west1 \ --port=80
Buat layanan backend untuk traffic HTTP:
gcloud compute backend-services create be-ilb \ --load-balancing-scheme=internal \ --protocol=tcp \ --region=us-west1 \ --health-checks=hc-http-80 \ --health-checks-region=us-west1
Tambahkan dua grup instance ke layanan backend:
gcloud compute backend-services add-backend be-ilb \ --region=us-west1 \ --instance-group=ig-a \ --instance-group-zone=us-west1-a gcloud compute backend-services add-backend be-ilb \ --region=us-west1 \ --instance-group=ig-c \ --instance-group-zone=us-west1-c
Buat aturan penerusan untuk layanan backend. Saat Anda membuat aturan penerusan, tentukan
10.1.2.99
untuk alamat IP internal di subnet.gcloud compute forwarding-rules create fr-ilb \ --region=us-west1 \ --load-balancing-scheme=internal \ --network=lb-network \ --subnet=lb-subnet \ --address=10.1.2.99 \ --ip-protocol=TCP \ --ports=80,8008,8080,8088 \ --backend-service=be-ilb \ --backend-service-region=us-west1
API
Buat health check dengan membuat permintaan POST
ke metode regionHealthChecks.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/regionHealthChecks { "name": "hc-http-80", "type": "HTTP", "httpHealthCheck": { "port": 80 } }
Buat layanan backend regional dengan membuat permintaan POST
ke
metode regionBackendServices.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices { "name": "be-ilb", "backends": [ { "group": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instanceGroups/ig-a", "balancingMode": "CONNECTION" }, { "group": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instanceGroups/ig-c", "balancingMode": "CONNECTION" } ], "healthChecks": [ "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/healthChecks/hc-http-80" ], "loadBalancingScheme": "INTERNAL", "connectionDraining": { "drainingTimeoutSec": 0 } }
Buat aturan penerusan dengan membuat permintaan POST
ke metode forwardingRules.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules { "name": "fr-ilb", "IPAddress": "10.1.2.99", "IPProtocol": "TCP", "ports": [ "80", "8008", "8080", "8088" ], "loadBalancingScheme": "INTERNAL", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "backendService": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb", "networkTier": "PREMIUM" }
Menguji load balancer
Pengujian ini menunjukkan cara memvalidasi konfigurasi load balancer dan mempelajari perilaku yang diharapkan.
Membuat VM klien
Contoh ini membuat VM klien (vm-client
) di region yang sama dengan VM backend (server). Klien digunakan untuk memvalidasi konfigurasi load balancer
dan menunjukkan perilaku yang diharapkan seperti yang dijelaskan di
bagian pengujian.
Konsol
Di konsol Google Cloud, buka halaman Instance VM.
Klik Create instance.
Untuk Name, masukkan
vm-client
.Untuk Region, pilih
us-west1
.Untuk Zone, pilih
us-west1-a
.Klik Advanced options.
Klik Networking dan konfigurasikan kolom berikut:
- Untuk Network tags, masukkan
allow-ssh
. - Untuk Network interfaces, pilih dari daftar berikut:
- Jaringan:
lb-network
- Subnet:
lb-subnet
- Jaringan:
- Untuk Network tags, masukkan
Klik Create.
gcloud
VM klien dapat berada di zona mana pun di region yang sama dengan load balancer, dan dapat menggunakan subnet mana pun di region tersebut. Dalam contoh ini,
klien berada di zona us-west1-a
, dan menggunakan subnet
yang sama dengan VM backend.
gcloud compute instances create vm-client \ --zone=us-west1-a \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=allow-ssh \ --subnet=lb-subnet
API
Buat permintaan POST
ke metode instances.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances { "name": "vm-client", "tags": { "items": [ "allow-ssh" ] }, "machineType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/machineTypes/e2-standard-2", "canIpForward": false, "networkInterfaces": [ { "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "accessConfigs": [ { "type": "ONE_TO_ONE_NAT", "name": "external-nat", "networkTier": "PREMIUM" } ] } ], "disks": [ { "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "autoDelete": true, "deviceName": "vm-client", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/debian-image-name", "diskType": "projects/PROJECT_ID/zones/us-west1-a/diskTypes/pd-standard", "diskSizeGb": "10" } } ], "scheduling": { "preemptible": false }, "deletionProtection": false }
Menguji koneksi dari VM klien
Pengujian ini menghubungi load balancer dari VM klien terpisah; yaitu, bukan dari VM backend load balancer. Perilaku yang diharapkan adalah traffic didistribusikan di antara empat VM backend karena tidak ada afinitas sesi yang telah dikonfigurasi.
Hubungkan ke instance VM klien.
gcloud compute ssh vm-client --zone=us-west1-a
Buat permintaan web ke load balancer menggunakan
curl
untuk menghubungi alamat IP-nya. Ulangi permintaan sehingga Anda dapat melihat bahwa respons berasal dari VM backend yang berbeda. Nama VM yang menghasilkan respons ditampilkan dalam teks dalam respons HTML, berdasarkan konten/var/www/html/index.html
di setiap VM backend. Misalnya, respons yang diharapkan akan terlihat sepertiPage served from: vm-a1
danPage served from: vm-a2
.curl http://10.1.2.99
Aturan penerusan dikonfigurasi untuk menayangkan port
80
,8008
,8080
, dan8088
. Untuk mengirim traffic ke port lain tersebut, tambahkan titik dua (:
) dan nomor port setelah alamat IP, seperti ini:curl http://10.1.2.99:8008
Jika menambahkan label layanan ke aturan penerusan internal, Anda dapat menggunakan DNS internal untuk menghubungi load balancer menggunakan nama layanannya.
curl http://web-test.fr-ilb.il4.us-west1.lb.PROJECT_ID.internal
Melakukan ping ke alamat IP load balancer
Pengujian ini menunjukkan perilaku yang diharapkan: Anda tidak dapat melakukan ping ke alamat IP load balancer. Hal ini karena Load Balancer Jaringan passthrough internal diterapkan dalam pemrograman jaringan virtual — bukan perangkat terpisah.
Hubungkan ke instance VM klien.
gcloud compute ssh vm-client --zone=us-west1-a
Coba ping alamat IP load balancer. Perhatikan bahwa Anda tidak mendapatkan respons dan waktu tunggu perintah
ping
habis setelah 10 detik dalam contoh ini.timeout 10 ping 10.1.2.99
Mengirim permintaan dari VM yang di-load balanced
Pengujian ini menunjukkan bahwa saat VM backend mengirim paket ke alamat IP aturan penerusan load balancer-nya, permintaan tersebut akan dialihkan kembali ke dirinya sendiri. Hal ini berlaku terlepas dari status health check VM backend.
Load Balancer Jaringan passthrough internal diterapkan menggunakan konfigurasi VM dan pemrograman jaringan virtual di OS tamu. Di VM Linux, Lingkungan tamu membuat rute untuk alamat IP load balancer di tabel perutean lokal sistem operasi.
Karena rute lokal ini berada dalam VM itu sendiri (bukan rute di jaringan VPC), paket yang dikirim ke alamat IP load balancer tidak diproses oleh jaringan VPC. Sebagai gantinya, paket yang dikirim ke alamat IP load balancer tetap berada dalam sistem operasi VM.
Hubungkan ke VM backend, seperti
vm-a1
:gcloud compute ssh vm-a1 --zone=us-west1-a
Buat permintaan web ke load balancer (menurut alamat IP atau nama layanan) menggunakan
curl
. Respons berasal dari VM backend yang sama dengan yang membuat permintaan. Permintaan berulang dijawab dengan cara yang sama. Respons yang diharapkan saat pengujian darivm-a1
selaluPage served from: vm-a1
.curl http://10.1.2.99
Periksa tabel perutean lokal, cari tujuan yang cocok dengan alamat IP load balancer itu sendiri,
10.1.2.99
. Rute ini adalah bagian yang diperlukan dari Load Balancer Jaringan passthrough internal, tetapi juga menunjukkan alasan permintaan dari VM di balik load balancer selalu direspons oleh VM yang sama.ip route show table local | grep 10.1.2.99
Saat VM backend untuk Load Balancer Jaringan passthrough internal mengirim paket ke alamat IP aturan penerusan load balancer, paket selalu dirutekan kembali ke VM yang membuat permintaan. Hal ini karena Load Balancer Jaringan passthrough internal adalah load balancer pass-through dan diimplementasikan dengan membuat rute lokal untuk alamat IP load balancer dalam OS tamu VM, seperti yang ditunjukkan di bagian ini. Jika Anda memiliki kasus penggunaan saat backend dengan load balancing perlu mengirim traffic TCP ke alamat IP load balancer, dan Anda perlu mendistribusikan traffic seolah-olah berasal dari backend tanpa load balancing, pertimbangkan untuk menggunakan Load Balancer Jaringan proxy internal regional.
Untuk mengetahui informasi selengkapnya, lihat Load Balancer Jaringan passthrough internal sebagai next hop.
Menyiapkan load balancer dengan subnet stack ganda
Panduan ini menunjukkan cara mengonfigurasi dan menguji Load Balancer Jaringan passthrough internal. Langkah-langkah di bagian ini menjelaskan cara mengonfigurasi hal berikut:
- Contoh di halaman ini menggunakan jaringan VPC mode kustom bernama
lb-network-dual-stack
. Traffic IPv6 memerlukan subnet mode kustom. - Subnet dual-stack (
stack-type
ditetapkan keIPv4_IPv6
), yang diperlukan untuk traffic IPv6. Saat membuat subnet stack ganda di jaringan VPC mode kustom, Anda memilih jenis akses IPv6 untuk subnet. Untuk contoh ini, kita menetapkan parameteripv6-access-type
subnet keINTERNAL
. Artinya, VM baru di subnet ini dapat diberi alamat IPv4 internal dan alamat IPv6 internal. Untuk mengetahui petunjuknya, lihat dokumentasi VPC tentang Menambahkan subnet stack ganda. - Aturan firewall yang mengizinkan koneksi masuk ke VM backend.
- Grup instance backend, yang terletak di region dan subnet berikut untuk contoh ini:
- Region:
us-west1
- Subnet:
lb-subnet
, dengan rentang alamat IPv4 utama10.1.2.0/24
. Meskipun Anda memilih rentang alamat IPv4 yang akan dikonfigurasi di subnet, rentang alamat IPv6 ditetapkan secara otomatis. Google menyediakan blok CIDR IPv6 berukuran tetap (/64
).
- Region:
- Empat VM dual-stack backend: dua VM dalam grup instance yang tidak dikelola di zona
us-west1-a
dan dua VM dalam grup instance yang tidak dikelola di zonaus-west1-c
. Untuk menunjukkan akses global, contoh ini membuat VM klien pengujian kedua di region dan subnet yang berbeda:- Region:
europe-west1
- Subnet:
europe-subnet
, dengan rentang alamat IP utama10.3.4.0/24
- Region:
- Satu VM klien untuk menguji koneksi.
- Komponen Load Balancer Jaringan passthrough internal berikut:
- Health check untuk layanan backend.
- Layanan backend internal di region
us-west1
untuk mengelola distribusi koneksi ke dua grup instance zona. - Dua aturan penerusan internal untuk frontend load balancer.
Diagram berikut menunjukkan arsitektur untuk contoh ini:
Mengonfigurasi jaringan, region, dan subnet
Contoh Load Balancer Jaringan passthrough internal yang dijelaskan di halaman ini dibuat di
jaringan VPC mode kustom bernama
lb-network-dual-stack
.
Untuk mengonfigurasi subnet dengan rentang IPv6 internal, aktifkan rentang IPv6 internal ULA jaringan VPC. Rentang subnet IPv6 internal dialokasikan dari rentang ini.
Konsol
Di Konsol Google Cloud, buka halaman jaringan VPC.
Klik Create VPC network.
Untuk Name, masukkan
lb-network-dual-stack
.Jika Anda ingin mengonfigurasi rentang alamat IPv6 internal pada subnet di jaringan ini, selesaikan langkah-langkah berikut:
- Untuk VPC network ULA internal IPv6 range, pilih Enabled.
- Untuk Allocate internal IPv6 range, pilih Automatically atau Manually.
Untuk Mode pembuatan subnet, klik Kustom.
Di bagian New subnet tentukan parameter konfigurasi berikut untuk subnet:
- Nama:
lb-subnet
- Region:
us-west1
- IP stack type: IPv4 and IPv6 (dual-stack)
- Rentang IPv4:
10.1.2.0/24
. - Jenis akses IPv6: Internal
- Nama:
Klik Done.
Klik Tambahkan subnet, lalu masukkan informasi berikut:
- Nama:
europe-subnet
- Region:
europe-west1
- Jenis stack IP: IPv4 (single-stack)
- Rentang alamat IP:
10.3.4.0/24
- Nama:
Klik Done.
Klik Create.
gcloud
Untuk membuat jaringan VPC mode kustom baru, jalankan perintah
gcloud compute networks create
.Untuk mengonfigurasi rentang IPv6 internal pada subnet apa pun di jaringan ini, gunakan flag
--enable-ula-internal-ipv6
. Opsi ini menetapkan awalan ULA/48
dari dalam rentangfd20::/20
yang digunakan oleh Google Cloud untuk rentang subnet IPv6 internal. Jika Anda ingin memilih rentang IPv6/48
yang ditetapkan, gunakan flag--internal-ipv6-range
untuk menentukan rentang.gcloud compute networks create lb-network-dual-stack \ --subnet-mode=custom \ --enable-ula-internal-ipv6 \ --internal-ipv6-range=ULA_IPV6_RANGE \ --bgp-routing-mode=regional
Ganti
ULA_IPV6_RANGE
dengan awalan/48
dari dalam rentangfd20::/20
yang digunakan oleh Google untuk rentang subnet IPv6 internal. Jika Anda tidak menggunakan flag--internal-ipv6-range
, Google akan memilih awalan/48
untuk jaringan tersebut, sepertifd20:bc7:9a1c::/48
.Dalam jaringan
NETWORK
, buat subnet untuk backend di regionus-west1
dan subnet lain untuk menguji akses global di regioneurope-west1
.Untuk membuat subnet, jalankan perintah
gcloud compute networks subnets create
.gcloud compute networks subnets create lb-subnet \ --network=lb-network-dual-stack \ --range=10.1.2.0/24 \ --region=us-west1 \ --stack-type=IPV4_IPV6 \ --ipv6-access-type=INTERNAL
gcloud compute networks subnets create europe-subnet \ --network=lb-network-dual-stack \ --range=10.3.4.0/24 \ --region=europe-west1 \ --stack-type=IPV4_IPV6 \ --ipv6-access-type=INTERNAL
API
Buat jaringan VPC mode kustom baru.
Untuk mengonfigurasi rentang IPv6 internal pada subnet apa pun di jaringan ini, tetapkan enableUlaInternalIpv6
ke benar. Opsi ini menetapkan rentang /48
dari dalam rentang fd20::/20
yang digunakan oleh Google untuk rentang subnet IPv6 internal. Jika Anda ingin memilih rentang IPv6 /48
yang ditetapkan, gunakan juga kolom internalIpv6Range
untuk menentukan rentang.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks { "autoCreateSubnetworks": false, "name": "lb-network-dual-stack", "mtu": MTU, "enableUlaInternalIpv6": true, "internalIpv6Range": "ULA_IPV6_RANGE", "routingConfig": { "routingMode": "DYNAMIC_ROUTING_MODE" } }
Ganti kode berikut:
PROJECT_ID
: ID project tempat jaringan VPC dibuat.MTU
: unit transmisi maksimum jaringan. MTU dapat berupa1460
(default) atau1500
. Tinjau ringkasan unit transmisi maksimum sebelum menetapkan MTU ke1500
.ULA_IPV6_RANGE
: awalan/48
dari dalam rentangfd20::/20
yang digunakan oleh Google untuk rentang subnet IPv6 internal. Jika Anda tidak memberikan nilai untukinternalIpv6Range
, Google akan memilih awalan/48
untuk jaringan tersebut.DYNAMIC_ROUTING_MODE
:global
atauregional
untuk mengontrol perilaku iklan rute Cloud Router di jaringan. Untuk informasi selengkapnya, lihat mode pemilihan rute dinamis.Untuk mengetahui informasi selengkapnya, lihat metode
networks.insert
.
Buat dua permintaan POST
ke metode subnetworks.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks { "ipCidrRange": "10.1.2.0/24", "network": "lb-network-dual-stack", "name": "lb-subnet" "stackType": IPV4_IPV6, "ipv6AccessType": Internal }
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks { "ipCidrRange": "10.3.4.0/24", "network": "lb-network-dual-stack", "name": "europe-subnet" "stackType": IPV4_IPV6, "ipv6AccessType": Internal }
Mengonfigurasi aturan firewall
Contoh ini menggunakan aturan firewall berikut:
fw-allow-lb-access
: Aturan ingress, yang berlaku untuk semua target di jaringan VPC, yang mengizinkan traffic dari sumber dalam rentang10.1.2.0/24
dan10.3.4.0/24
. Aturan ini mengizinkan traffic masuk dari klien mana pun yang terletak di salah satu dari dua subnet. Kemudian, Anda dapat mengonfigurasi dan menguji akses global.fw-allow-lb-access-ipv6
: Aturan ingress, yang berlaku untuk semua target di jaringan VPC, yang mengizinkan traffic dari sumber dalam rentang IPv6 yang dikonfigurasi di subnet. Aturan ini mengizinkan traffic IPv6 masuk dari klien mana pun yang berada di salah satu dari dua subnet. Kemudian, Anda dapat mengonfigurasi dan menguji akses global.fw-allow-ssh
: Aturan ingress, yang berlaku untuk instance yang di-load balanced, yang memungkinkan konektivitas SSH yang masuk pada TCP port 22 dari alamat mana pun. Anda dapat memilih rentang IP sumber yang lebih ketat untuk aturan ini; misalnya, Anda dapat menentukan hanya rentang IP sistem tempat Anda memulai sesi SSH. Contoh ini menggunakan tag targetallow-ssh
untuk mengidentifikasi VM tempat tag tersebut harus diterapkan.fw-allow-health-check
: Aturan ingress, yang berlaku untuk instance yang di-load balance, yang mengizinkan traffic dari sistem health check Google Cloud (130.211.0.0/22
dan35.191.0.0/16
). Contoh ini menggunakan tag targetallow-health-check
untuk mengidentifikasi instance tempat tag tersebut harus diterapkan.fw-allow-health-check-ipv6
: Aturan ingress, yang berlaku untuk instance yang di-load balance, yang mengizinkan traffic dari sistem health check Google Cloud (2600:2d00:1:b029::/64
). Contoh ini menggunakan tag targetallow-health-check-ipv6
untuk mengidentifikasi instance tempat tag tersebut harus diterapkan.
Tanpa aturan firewall ini, aturan tolak ingress default akan memblokir traffic masuk ke instance backend.
Konsol
Di Konsol Google Cloud, buka halaman Firewall policies.
Untuk membuat aturan yang mengizinkan traffic subnet, klik Create firewall rule dan masukkan informasi berikut:
- Nama:
fw-allow-lb-access
- Jaringan:
lb-network-dual-stack
- Prioritas:
1000
- Direction of traffic: ingress
- Tindakan jika ada kecocokan: izinkan
- Targets: All instances in the network
- Filter sumber: Rentang IPv4
- Rentang IPv4 sumber:
10.1.2.0/24
dan10.3.4.0/24
- Protocols and ports: Allow all
- Nama:
Klik Create.
Untuk mengizinkan traffic subnet IPv6, klik Create firewall rule lagi dan masukkan informasi berikut:
- Nama:
fw-allow-lb-access-ipv6
- Jaringan:
lb-network-dual-stack
- Prioritas:
1000
- Direction of traffic: ingress
- Tindakan jika ada kecocokan: izinkan
- Targets: All instances in the network
- Filter sumber: Rentang IPv6
- Rentang IPv6 sumber: IPV6_ADDRESS ditetapkan di
lb-subnet
- Protocols and ports: Allow all
- Nama:
Klik Create.
Untuk mengizinkan koneksi SSH yang masuk, klik Create firewall rule lagi dan masukkan informasi berikut:
- Nama:
fw-allow-ssh
- Jaringan:
lb-network-dual-stack
- Prioritas:
1000
- Direction of traffic: ingress
- Tindakan terhadap kecocokan: izinkan
- Targets: Tag target yang ditentukan
- Tag target:
allow-ssh
- Filter sumber: Rentang IPv4
- Rentang IPv4 sumber:
0.0.0.0/0
- Protocols and ports: Pilih Specified protocols and ports,
pilih kotak centang TCP, lalu masukkan
22
di Ports.
- Nama:
Klik Create.
Untuk mengizinkan health check IPv6 Google Cloud, klik Create firewall rule lagi dan masukkan informasi berikut:
- Nama:
fw-allow-health-check-ipv6
- Jaringan:
lb-network-dual-stack
- Prioritas:
1000
- Direction of traffic: ingress
- Tindakan terhadap kecocokan: izinkan
- Targets: Tag target yang ditentukan
- Tag target:
allow-health-check-ipv6
- Filter sumber: Rentang IPv6
- Rentang IPv6 sumber:
2600:2d00:1:b029::/64
- Protocols and ports: Allow all
- Nama:
Klik Create.
Untuk mengizinkan health check Google Cloud, klik Create firewall rule lagi dan masukkan informasi berikut:
- Nama:
fw-allow-health-check
- Jaringan:
lb-network-dual-stack
- Prioritas:
1000
- Direction of traffic: ingress
- Tindakan terhadap kecocokan: izinkan
- Targets: Tag target yang ditentukan
- Tag target:
allow-health-check
- Filter sumber: Rentang IPv4
- Rentang IPv4 sumber:
130.211.0.0/22
dan35.191.0.0/16
- Protocols and ports: Allow all
- Nama:
Klik Create.
gcloud
Buat aturan firewall
fw-allow-lb-access
untuk mengizinkan komunikasi dengan subnet:gcloud compute firewall-rules create fw-allow-lb-access \ --network=lb-network-dual-stack \ --action=allow \ --direction=ingress \ --source-ranges=10.1.2.0/24,10.3.4.0/24 \ --rules=all
Buat aturan firewall
fw-allow-lb-access-ipv6
untuk mengizinkan komunikasi dengan subnet:gcloud compute firewall-rules create fw-allow-lb-access-ipv6 \ --network=lb-network-dual-stack \ --action=allow \ --direction=ingress \ --source-ranges=IPV6_ADDRESS \ --rules=all
Ganti
IPV6_ADDRESS
dengan alamat IPv6 yang ditetapkan dilb-subnet
.Buat aturan firewall
fw-allow-ssh
untuk mengizinkan konektivitas SSH ke VM dengan tag jaringanallow-ssh
. Saat Anda menghapussource-ranges
, Google Cloud akan menafsirkan aturan sebagai sumber apa pun.gcloud compute firewall-rules create fw-allow-ssh \ --network=lb-network-dual-stack \ --action=allow \ --direction=ingress \ --target-tags=allow-ssh \ --rules=tcp:22
Buat aturan
fw-allow-health-check-ipv6
untuk mengizinkan health check IPv6 Google Cloud.gcloud compute firewall-rules create fw-allow-health-check-ipv6 \ --network=lb-network-dual-stack \ --action=allow \ --direction=ingress \ --target-tags=allow-health-check-ipv6 \ --source-ranges=2600:2d00:1:b029::/64 \ --rules=tcp,udp
Buat aturan
fw-allow-health-check
untuk mengizinkan health check Google Cloud.gcloud compute firewall-rules create fw-allow-health-check \ --network=lb-network-dual-stack \ --action=allow \ --direction=ingress \ --target-tags=allow-health-check \ --source-ranges=130.211.0.0/22,35.191.0.0/16 \ --rules=tcp,udp,icmp
API
Buat aturan firewall
fw-allow-lb-access
dengan membuat permintaanPOST
ke metodefirewalls.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls { "name": "fw-allow-lb-access", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "priority": 1000, "sourceRanges": [ "10.1.2.0/24", "10.3.4.0/24" ], "allowed": [ { "IPProtocol": "tcp" }, { "IPProtocol": "udp" }, { "IPProtocol": "icmp" } ], "direction": "INGRESS", "logConfig": { "enable": false }, "disabled": false }
Buat aturan firewall
fw-allow-lb-access-ipv6
dengan membuat permintaanPOST
ke metodefirewalls.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls { "name": "fw-allow-lb-access-ipv6", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "priority": 1000, "sourceRanges": [ "IPV6_ADDRESS" ], "allowed": [ { "IPProtocol": "tcp" }, { "IPProtocol": "udp" }, { "IPProtocol": "icmp" } ], "direction": "INGRESS", "logConfig": { "enable": false }, "disabled": false }
Ganti
IPV6_ADDRESS
dengan alamat IPv6 yang ditetapkan dilb-subnet
.Buat aturan firewall
fw-allow-ssh
dengan membuat permintaanPOST
ke metodefirewalls.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls { "name": "fw-allow-ssh", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "priority": 1000, "sourceRanges": [ "0.0.0.0/0" ], "targetTags": [ "allow-ssh" ], "allowed": [ { "IPProtocol": "tcp", "ports": [ "22" ] } ], "direction": "INGRESS", "logConfig": { "enable": false }, "disabled": false }
Buat aturan firewall
fw-allow-health-check-ipv6
dengan membuat permintaanPOST
ke metodefirewalls.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls { "name": "fw-allow-health-check-ipv6", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "priority": 1000, "sourceRanges": [ "2600:2d00:1:b029::/64" ], "targetTags": [ "allow-health-check-ipv6" ], "allowed": [ { "IPProtocol": "tcp" }, { "IPProtocol": "udp" } ], "direction": "INGRESS", "logConfig": { "enable": false }, "disabled": false }
Buat aturan firewall
fw-allow-health-check
dengan membuat permintaanPOST
ke metodefirewalls.insert
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls { "name": "fw-allow-health-check", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "priority": 1000, "sourceRanges": [ "130.211.0.0/22", "35.191.0.0/16" ], "targetTags": [ "allow-health-check" ], "allowed": [ { "IPProtocol": "tcp" }, { "IPProtocol": "udp" }, { "IPProtocol": "icmp" } ], "direction": "INGRESS", "logConfig": { "enable": false }, "disabled": false }
Membuat VM backend dan grup instance
Contoh ini menggunakan dua grup instance tidak terkelola yang masing-masing memiliki dua VM backend (server). Untuk mendemonstrasikan sifat regional Load Balancer Jaringan passthrough internal, kedua grup instance ditempatkan di zona terpisah, us-west1-a
dan us-west1-c
.
- Grup instance
ig-a
berisi dua VM berikut:vm-a1
vm-a2
- Grup instance
ig-c
berisi dua VM berikut:vm-c1
vm-c2
Traffic ke keempat VM backend di-load balancing.
Untuk mendukung contoh ini dan opsi konfigurasi tambahan, setiap VM menjalankan server web Apache yang memproses port TCP berikut: 80
,8008
, 8080
, 8088
, 443
, dan 8443
.
Setiap VM diberi alamat IP internal di lb-subnet
dan alamat IP eksternal (publik) sementara. Anda dapat menghapus alamat IP eksternal
nanti.
Alamat IP eksternal untuk VM backend tidak diperlukan; tetapi, alamat tersebut berguna untuk contoh ini karena mengizinkan VM backend mendownload Apache dari internet, dan dapat terhubung menggunakan SSH.
Secara default, Apache dikonfigurasi untuk mengikat ke alamat IP apa pun. Load Balancer Jaringan passthrough internal mengirimkan paket dengan mempertahankan IP tujuan.
Pastikan software server yang berjalan di VM backend Anda memproses alamat IP aturan penerusan internal load balancer. Jika Anda mengonfigurasi beberapa aturan penerusan internal, pastikan software Anda memproses alamat IP internal yang terkait dengan setiap aturan. Alamat IP tujuan paket yang dikirim ke VM backend oleh Load Balancer Jaringan passthrough internal adalah alamat IP internal aturan penerusan.
Pastikan jenis stack subjaringan cocok dengan jenis stack template instance yang digunakan oleh grup instance terkelola. Subjaringan harus berupa dual-stack jika grup instance terkelola menggunakan template instance dual-stack.
Untuk memudahkan petunjuk, VM backend ini menjalankan Debian GNU/Linux 10.
Konsol
Membuat VM backend
Di konsol Google Cloud, buka halaman Instance VM.
Ulangi langkah 3 hingga 8 untuk setiap VM, menggunakan kombinasi nama dan zona berikut.
- Nama:
vm-a1
, zona:us-west1-a
- Nama:
vm-a2
, zona:us-west1-a
- Nama:
vm-c1
, zona:us-west1-c
- Nama:
vm-c2
, zona:us-west1-c
- Nama:
Klik Create instance.
Tetapkan Name seperti yang ditunjukkan pada langkah 2.
Untuk Region, pilih
us-west1
, lalu pilih Zone seperti yang ditunjukkan pada langkah 2.Di bagian Boot disk, pastikan Debian GNU/Linux 12 (bookworm) dipilih untuk opsi boot disk. Jika perlu, klik Ganti untuk mengubah gambar.
Klik Advanced options.
Klik Networking dan konfigurasikan kolom berikut:
- Untuk Network tags, masukkan
allow-ssh
danallow-health-check-ipv6
. - Untuk Network interfaces, pilih dari daftar berikut:
- Jaringan:
lb-network-dual-stack
- Subnet:
lb-subnet
- IP stack type: IPv4 and IPv6 (dual-stack)
- Primary internal IPv4 address: Ephemeral (automatic)
- External IPv4 address: Ephemeral
- Jaringan:
Klik Management, lalu di kolom Startup script, masukkan skrip berikut. Konten skrip identik untuk keempat VM.
#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completed
- Untuk Network tags, masukkan
Klik Create.
Membuat grup instance
Di konsol Google Cloud, buka halaman Instance groups.
Ulangi langkah-langkah berikut untuk membuat dua grup instance tidak terkelola dengan masing-masing VM di dalamnya, menggunakan kombinasi ini.
- Nama grup instance:
ig-a
, zona:us-west1-a
, VM:vm-a1
danvm-a2
- Nama grup instance:
ig-c
, zona:us-west1-c
, VM:vm-c1
danvm-c2
- Nama grup instance:
Klik Create instance group.
Klik New unmanaged instance group.
Tetapkan Name seperti yang ditunjukkan pada langkah 2.
Di bagian Location, pilih
us-west1
untuk Region, lalu pilih Zone seperti yang ditunjukkan pada langkah 2.Untuk Network, pilih
lb-network-dual-stack
.Untuk Subnetwork, pilih
lb-subnet
.Di bagian VM instances, tambahkan VM seperti yang ditunjukkan pada langkah 2.
Klik Create.
gcloud
Untuk membuat empat VM, jalankan perintah
gcloud compute instances create
empat kali, menggunakan empat kombinasi ini untuk[VM-NAME]
dan[ZONE]
. Konten skrip sama untuk keempat VM.VM-NAME
:vm-a1
,ZONE
:us-west1-a
VM-NAME
:vm-a2
,ZONE
:us-west1-a
VM-NAME
:vm-c1
,ZONE
:us-west1-c
VM-NAME
:vm-c2
,ZONE
:us-west1-c
gcloud compute instances create VM-NAME \ --zone=ZONE \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=allow-ssh,allow-health-check-ipv6 \ --subnet=lb-subnet \ --stack-type=IPV4_IPV6 \ --metadata=startup-script='#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completed'
Buat dua grup instance tidak terkelola di setiap zona:
gcloud compute instance-groups unmanaged create ig-a \ --zone=us-west1-a gcloud compute instance-groups unmanaged create ig-c \ --zone=us-west1-c
Tambahkan VM ke grup instance yang sesuai:
gcloud compute instance-groups unmanaged add-instances ig-a \ --zone=us-west1-a \ --instances=vm-a1,vm-a2 gcloud compute instance-groups unmanaged add-instances ig-c \ --zone=us-west1-c \ --instances=vm-c1,vm-c2
api
Untuk empat VM, gunakan nama dan zona VM berikut:
VM-NAME
:vm-a1
,ZONE
:us-west1-a
VM-NAME
:vm-a2
,ZONE
:us-west1-a
VM-NAME
:vm-c1
,ZONE
:us-west1-c
VM-NAME
:vm-c2
,ZONE
:us-west1-c
Anda bisa mendapatkan DEBIAN_IMAGE_NAME
saat ini dengan menjalankan
perintah gcloud
berikut:
gcloud compute images list \ --filter="family=debian-12"
Buat empat VM backend dengan membuat empat permintaan POST
ke
metode instances.insert
:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM-NAME", "tags": { "items": [ "allow-health-check-ipv6", "allow-ssh" ] }, "machineType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/[ZONE]/machineTypes/e2-standard-2", "canIpForward": false, "networkInterfaces": [ { "stackType": "IPV4_IPV6", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "accessConfigs": [ { "type": "ONE_TO_ONE_NAT", "name": "external-nat", "networkTier": "PREMIUM" } ] } ], "disks": [ { "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "autoDelete": true, "deviceName": "VM-NAME", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/debian-image-name", "diskType": "projects/PROJECT_ID/zones/zone/diskTypes/pd-standard", "diskSizeGb": "10" } } ], "metadata": { "items": [ { "key": "startup-script", "value": "#! /bin/bash\napt-get update\napt-get install apache2 -y\na2ensite default-ssl\na2enmod ssl\nfile_ports=\"/etc/apache2/ports.conf\"\nfile_http_site=\"/etc/apache2/sites-available/000-default.conf\"\nfile_https_site=\"/etc/apache2/sites-available/default-ssl.conf\"\nhttp_listen_prts=\"Listen 80\\nListen 8008\\nListen 8080\\nListen 8088\"\nhttp_vh_prts=\"*:80 *:8008 *:8080 *:8088\"\nhttps_listen_prts=\"Listen 443\\nListen 8443\"\nhttps_vh_prts=\"*:443 *:8443\"\nvm_hostname=\"$(curl -H \"Metadata-Flavor:Google\" \\\nhttp://169.254.169.254/computeMetadata/v1/instance/name)\"\necho \"Page served from: $vm_hostname\" | \\\ntee /var/www/html/index.html\nprt_conf=\"$(cat \"$file_ports\")\"\nprt_conf_2=\"$(echo \"$prt_conf\" | sed \"s|Listen 80|${http_listen_prts}|\")\"\nprt_conf=\"$(echo \"$prt_conf_2\" | sed \"s|Listen 443|${https_listen_prts}|\")\"\necho \"$prt_conf\" | tee \"$file_ports\"\nhttp_site_conf=\"$(cat \"$file_http_site\")\"\nhttp_site_conf_2=\"$(echo \"$http_site_conf\" | sed \"s|*:80|${http_vh_prts}|\")\"\necho \"$http_site_conf_2\" | tee \"$file_http_site\"\nhttps_site_conf=\"$(cat \"$file_https_site\")\"\nhttps_site_conf_2=\"$(echo \"$https_site_conf\" | sed \"s|_default_:443|${https_vh_prts}|\")\"\necho \"$https_site_conf_2\" | tee \"$file_https_site\"\nsystemctl restart apache2" } ] }, "scheduling": { "preemptible": false }, "deletionProtection": false }
Buat dua grup instance dengan membuat permintaan POST
ke metode instanceGroups.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instanceGroups { "name": "ig-a", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet" }
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instanceGroups { "name": "ig-c", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet" }
Tambahkan instance ke setiap grup instance dengan membuat permintaan POST
ke
metode instanceGroups.addInstances
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instanceGroups/ig-a/addInstances { "instances": [ { "instance": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances/vm-a1", "instance": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances/vm-a2" } ] }
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instanceGroups/ig-c/addInstances { "instances": [ { "instance": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instances/vm-c1", "instance": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instances/vm-c2" } ] }
Mengonfigurasi komponen load balancer
Langkah-langkah ini mengonfigurasi semua komponen Load Balancer Jaringan passthrough internal, dimulai dengan health check dan layanan backend, lalu komponen frontend:
Health check: Dalam contoh ini, Anda menggunakan health check HTTP yang memeriksa respons
200
(OK) HTTP. Untuk mengetahui informasi selengkapnya, lihat bagian health check dalam ringkasan Load Balancer Jaringan passthrough internal.Layanan backend: Karena Anda perlu meneruskan traffic HTTP melalui load balancer internal, Anda harus menggunakan TCP, bukan UDP.
Aturan penerusan: Contoh ini membuat dua aturan penerusan internal untuk traffic IPv4 dan IPv6.
Alamat IP internal: Dalam contoh ini, Anda menentukan alamat IP internal,
10.1.2.99
, saat membuat aturan penerusan IPv4. Untuk mengetahui informasi selengkapnya, lihat Alamat IP internal. Meskipun Anda memilih alamat IPv4 yang dikonfigurasi, alamat IPv6 akan ditetapkan secara otomatis.
Konsol
Memulai konfigurasi
Di konsol Google Cloud, buka halaman Load balancing.
- Klik Create load balancer.
- Untuk Type of load balancer, pilih Network Load Balancer (TCP/UDP/SSL), lalu klik Next.
- Untuk Proxy or passthrough, pilih Passthrough load balancer, lalu klik Next.
- Untuk Public facing or internal, pilih Internal, lalu klik Next.
- Klik Konfigurasikan.
Konfigurasi dasar
Di halaman Membuat Load Balancer Jaringan passthrough internal, masukkan informasi berikut:
- Nama load balancer:
be-ilb
- Region:
us-west1
- Jaringan:
lb-network-dual-stack
Konfigurasi backend
- Klik Backend configuration.
- Di bagian Backend Baru pada Backend, pilih IP stack type sebagai IPv4 and IPv6 (dual-stack).
- Di Instance group, pilih grup instance
ig-a
, lalu klik Done. - Klik Add a backend, lalu ulangi langkah untuk menambahkan
ig-c
. - Dari daftar Health check, pilih Create a health check,
masukkan informasi berikut, lalu klik Save:
- Name:
hc-http-80
. - Cakupan: Regional.
- Protokol:
HTTP
. - Port:
80
. - Protokol proxy:
NONE
. - Jalur permintaan:
/
.
- Name:
- Pastikan tanda centang biru muncul di samping Backend configuration.
Konfigurasi frontend
- Klik Frontend configuration. Di bagian New Frontend IP and port, lakukan hal berikut:
- Untuk Name, masukkan
fr-ilb-ipv6
. - Untuk menangani traffic IPv6, lakukan hal berikut:
- Untuk IP version, pilih IPv6.
- Untuk Subnetwork, pilih
lb-subnet
. Rentang alamat IPv6 dalam aturan penerusan selalu bersifat sementara. - Untuk Ports, pilih Multiple, lalu di kolom Port number, masukkan
80
,8008
,8080
,8088
. - Klik Done.
- Untuk menangani traffic IPv4, lakukan hal berikut:
- Klik Add frontend IP and port.
- Untuk Name, masukkan
fr-ilb
. - Untuk Subnetwork, pilih
lb-subnet
. - Di bagian Internal IP purpose, dari daftar IP address, pilih Create IP address,
masukkan informasi berikut, lalu klik Reserve.
- Nama:
ip-ilb
- Versi IP: IPv4
- Static IP address: Let me choose
- Alamat IP kustom:
10.1.2.99
- Nama:
- Untuk Ports, pilih Multiple, lalu di Port numbers, masukkan
80
,8008
,8080
, dan8088
. - Klik Done.
- Pastikan ada tanda centang biru di samping Frontend configuration sebelum melanjutkan.
- Untuk Name, masukkan
Meninjau konfigurasi
- Klik Review and finalize. Periksa semua setelan Anda.
- Jika setelan sudah benar, klik Create. Perlu waktu beberapa menit untuk membuat Load Balancer Jaringan passthrough internal.
gcloud
Buat health check HTTP regional baru untuk menguji konektivitas HTTP ke VM di port 80.
gcloud compute health-checks create http hc-http-80 \ --region=us-west1 \ --port=80
Buat layanan backend untuk traffic HTTP:
gcloud compute backend-services create be-ilb \ --load-balancing-scheme=internal \ --protocol=tcp \ --region=us-west1 \ --health-checks=hc-http-80 \ --health-checks-region=us-west1
Tambahkan dua grup instance ke layanan backend:
gcloud compute backend-services add-backend be-ilb \ --region=us-west1 \ --instance-group=ig-a \ --instance-group-zone=us-west1-a gcloud compute backend-services add-backend be-ilb \ --region=us-west1 \ --instance-group=ig-c \ --instance-group-zone=us-west1-c
Buat dua aturan penerusan untuk layanan backend. Saat Anda membuat aturan penerusan IPv4, tentukan
10.1.2.99
untuk alamat IP internal di subnet untuk alamat IPv4.gcloud compute forwarding-rules create fr-ilb \ --region=us-west1 \ --load-balancing-scheme=internal \ --subnet=lb-subnet \ --address=10.1.2.99 \ --ip-protocol=TCP \ --ports=80,8008,8080,8088 \ --backend-service=be-ilb \ --backend-service-region=us-west1
gcloud compute forwarding-rules create fr-ilb-ipv6 \ --region=us-west1 \ --load-balancing-scheme=internal \ --subnet=lb-subnet \ --ip-protocol=TCP \ --ports=80,8008,8080,8088 \ --backend-service=be-ilb \ --backend-service-region=us-west1 \ --ip-version=IPV6
api
Buat health check dengan membuat permintaan POST
ke metode regionHealthChecks.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/regionHealthChecks { "name": "hc-http-80", "type": "HTTP", "httpHealthCheck": { "port": 80 } }
Buat layanan backend regional dengan membuat permintaan POST
ke
metode regionBackendServices.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices { "name": "be-ilb", "backends": [ { "group": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instanceGroups/ig-a", "balancingMode": "CONNECTION" }, { "group": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-c/instanceGroups/ig-c", "balancingMode": "CONNECTION" } ], "healthChecks": [ "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/healthChecks/hc-http-80" ], "loadBalancingScheme": "INTERNAL", "connectionDraining": { "drainingTimeoutSec": 0 } }
Buat aturan penerusan dengan membuat permintaan POST
ke metode forwardingRules.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules { "name": "fr-ilb-ipv6", "IPProtocol": "TCP", "ports": [ "80", "8008", "8080", "8088" ], "loadBalancingScheme": "INTERNAL", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "backendService": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb", "ipVersion": "IPV6", "networkTier": "PREMIUM" }
Buat aturan penerusan dengan membuat permintaan POST
ke metode forwardingRules.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules { "name": "fr-ilb", "IPAddress": "10.1.2.99", "IPProtocol": "TCP", "ports": [ "80", "8008", "8080", "8088" ], "loadBalancingScheme": "INTERNAL", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "backendService": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb", "networkTier": "PREMIUM" }
Menguji load balancer
Untuk menguji load balancer, buat VM klien di region yang sama dengan load balancer, lalu kirim traffic dari klien ke load balancer.
Membuat VM klien
Contoh ini membuat VM klien (vm-client
) di region yang sama dengan VM backend (server). Klien digunakan untuk memvalidasi konfigurasi load balancer
dan menunjukkan perilaku yang diharapkan seperti yang dijelaskan di
bagian pengujian.
Konsol
Di konsol Google Cloud, buka halaman Instance VM.
Klik Create instance.
Untuk Name, masukkan
vm-client
.Untuk Region, pilih
us-west1
.Untuk Zone, pilih
us-west1-a
.Klik Advanced options.
Klik Networking dan konfigurasikan kolom berikut:
- Untuk Network tags, masukkan
allow-ssh
. - Untuk Network interfaces, pilih dari daftar berikut:
- Jaringan:
lb-network-dual-stack
- Subnet:
lb-subnet
- IP stack type: IPv4 and IPv6 (dual-stack)
- IP internal utama: Sementara (otomatis)
- External IP: Ephemeral
- Jaringan:
- Klik Done.
- Untuk Network tags, masukkan
Klik Create.
gcloud
VM klien dapat berada di zona mana pun di region yang sama dengan load balancer, dan dapat menggunakan subnet mana pun di region tersebut. Dalam contoh ini,
klien berada di zona us-west1-a
, dan menggunakan subnet
yang sama dengan VM backend.
gcloud compute instances create vm-client \ --zone=us-west1-a \ --image-family=debian-12 \ --image-project=debian-cloud \ --stack-type=IPV4_IPV6 \ --tags=allow-ssh \ --subnet=lb-subnet
api
Buat permintaan POST
ke metode instances.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances { "name": "vm-client", "tags": { "items": [ "allow-ssh" ] }, "machineType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/machineTypes/e2-standard-2", "canIpForward": false, "networkInterfaces": [ { "stackType": "IPV4_IPV6", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network-dual-stack", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "accessConfigs": [ { "type": "ONE_TO_ONE_NAT", "name": "external-nat", "networkTier": "PREMIUM" } ] } ], "disks": [ { "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "autoDelete": true, "deviceName": "vm-client", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/debian-image-name", "diskType": "projects/PROJECT_ID/zones/us-west1-a/diskTypes/pd-standard", "diskSizeGb": "10" } } ], "scheduling": { "preemptible": false }, "deletionProtection": false }
Menguji koneksi
Pengujian ini menghubungi load balancer dari VM klien terpisah; yaitu, bukan dari VM backend load balancer. Perilaku yang diharapkan adalah traffic didistribusikan di antara empat VM backend.
Hubungkan ke instance VM klien.
gcloud compute ssh vm-client --zone=us-west1-a
Deskripsikan aturan penerusan IPv6
fr-ilb-ipv6
. PerhatikanIPV6_ADDRESS
dalam deskripsi.gcloud compute forwarding-rules describe fr-ilb-ipv6 --region=us-west1
Deskripsikan aturan penerusan IPv4
fr-ilb
.gcloud compute forwarding-rules describe fr-ilb --region=us-west1
Dari klien dengan konektivitas IPv6, jalankan perintah berikut:
$ curl -m 10 -s http://IPV6_ADDRESS:80
Misalnya, jika alamat IPv6 yang ditetapkan adalah
[fd20:1db0:b882:802:0:46:0:0/96]:80
, perintahnya akan terlihat seperti:$ curl -m 10 -s http://[fd20:1db0:b882:802:0:46:0:0]:80
Dari klien dengan konektivitas IPv4, jalankan perintah berikut:
$ curl -m 10 -s http://10.1.2.99:80
Ganti placeholder dengan nilai yang valid:
IPV6_ADDRESS
adalah alamat IPv6 sementara dalam aturan penerusanfr-ilb-ipv6
.
Opsi 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.
Mengaktifkan akses global
Anda dapat mengaktifkan akses global untuk contoh Load Balancer Jaringan passthrough internal agar dapat diakses oleh klien di semua region.
Backend contoh load balancer Anda masih harus berada di satu region
(us-west1
).
Untuk mengonfigurasi akses global, lakukan perubahan konfigurasi berikut.
Konsol
Mengedit aturan penerusan load balancer
Di konsol Google Cloud, buka halaman Load balancing.
Di kolom Nama, klik Load Balancer Jaringan passthrough internal Anda. Contoh load balancer diberi nama
be-ilb
.Klik Frontend configuration.
Klik Edit
.Di bagian Global access, pilih Enable.
Klik Done.
Klik Perbarui.
Di halaman Load balancer details, pastikan konfigurasi frontend
menampilkan Regional (REGION
) with global access.
gcloud
Perbarui contoh aturan penerusan load balancer,
fr-ilb
untuk menyertakan flag--allow-global-access
.gcloud compute forwarding-rules update fr-ilb \ --region=us-west1 \ --allow-global-access
Anda dapat menggunakan perintah
forwarding-rules describe
untuk menentukan apakah aturan penerusan mengaktifkan akses global. Contoh:gcloud compute forwarding-rules describe fr-ilb \ --region=us-west1 \ --format="get(name,region,allowGlobalAccess)"
Kata
True
muncul dalam output, setelah nama dan wilayah aturan penerusan, saat akses global diaktifkan.
API
Buat permintaan PATCH
ke metode forwardingRules/patch
.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules/fr-ilb { "allowGlobalAccess": true }
Membuat klien VM untuk menguji akses global
Konsol
Di konsol Google Cloud, buka halaman Instance VM.
Klik Create instance.
Tetapkan Name ke
vm-client2
.Tetapkan Wilayah ke
europe-west1
.Tetapkan Zona ke
europe-west1-b
.Klik Advanced options.
Klik Networking dan konfigurasikan kolom berikut:
- Untuk Network tags, masukkan
allow-ssh
. - Untuk Network interfaces, pilih dari daftar berikut:
- Jaringan:
lb-network
- Subnet:
europe-subnet
- Jaringan:
- Untuk Network tags, masukkan
Klik Create.
gcloud
VM klien dapat berada di zona mana pun di region yang sama dengan load balancer, dan dapat menggunakan subnet mana pun di region tersebut. Dalam contoh ini,
klien berada di zona europe-west1-b
, dan menggunakan subnet
yang sama dengan VM backend.
gcloud compute instances create vm-client2 \ --zone=europe-west1-b \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=allow-ssh \ --subnet=europe-subnet
API
Buat permintaan POST
ke metode instances.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/europe-west1-b/instances { "name": "vm-client2", "tags": { "items": [ "allow-ssh" ] }, "machineType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/europe-west1-b/machineTypes/e2-standard-2", "canIpForward": false, "networkInterfaces": [ { "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/europe-west1/subnetworks/europe-subnet", "accessConfigs": [ { "type": "ONE_TO_ONE_NAT", "name": "external-nat", "networkTier": "PREMIUM" } ] } ], "disks": [ { "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "autoDelete": true, "deviceName": "vm-client2", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/debian-image-name", "diskType": "projects/PROJECT_ID/zones/europe-west1-b/diskTypes/pd-standard", "diskSizeGb": "10" } } ], "scheduling": { "preemptible": false }, "deletionProtection": false }
Menghubungkan ke klien VM dan menguji konektivitas
Untuk menguji konektivitas, jalankan perintah berikut:
gcloud compute ssh vm-client2 --zone=europe-west1-b
Uji koneksi ke load balancer di semua port yang dikonfigurasi, seperti yang Anda lakukan
dari vm-client
di region us-west1
. Uji
konektivitas HTTP di empat port yang dikonfigurasi pada aturan penerusan:
curl http://10.1.2.99 curl http://10.1.2.99:8008 curl http://10.1.2.99:8080 curl http://10.1.2.99:8088
Mengonfigurasi grup instance terkelola
Contoh konfigurasi membuat dua grup instance tidak terkelola. Sebagai gantinya, Anda dapat menggunakan grup instance terkelola, termasuk grup instance terkelola zonal dan regional, sebagai backend untuk Load Balancer Jaringan passthrough internal.
Grup instance terkelola mengharuskan Anda membuat template instance. Prosedur ini menunjukkan cara mengganti dua grup instance tidak terkelola zona dari contoh dengan satu grup instance terkelola regional. Grup instance terkelola regional secara otomatis membuat VM di beberapa zona dalam region, sehingga mempermudah distribusi traffic produksi di antara zona.
Grup instance terkelola juga mendukung penskalaan otomatis dan autohealing. Jika menggunakan penskalaan otomatis dengan Load Balancer Jaringan passthrough internal, Anda tidak dapat menskalakan berdasarkan load balancing.
Prosedur ini menunjukkan cara mengubah layanan backend untuk contoh Load Balancer Jaringan passthrough internal sehingga menggunakan grup instance terkelola regional.
Konsol
Template instance
Di konsol Google Cloud, buka halaman Template instance VM.
Klik Create instance template.
Tetapkan Name ke
template-vm-ilb
.Pilih jenis mesin.
Di bagian Boot disk, pastikan Debian GNU/Linux 12 (bookworm) dipilih untuk opsi boot disk. Jika perlu, klik Ganti untuk mengubah gambar.
Klik Advanced options.
Klik Networking dan konfigurasikan kolom berikut:
- Untuk Network tags, masukkan
allow-ssh
danallow-health-check
. - Untuk Network interfaces, pilih dari daftar berikut:
- Jaringan:
lb-network
- Subnet:
lb-subnet
- Jaringan:
- Untuk Network tags, masukkan
Klik Management, lalu di kolom Startup script, masukkan skrip berikut:
#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completed
Klik Create.
Grup instance terkelola
Di konsol Google Cloud, buka halaman Instance groups.
Klik Create grup instance.
Tetapkan Name ke
ig-ilb
.Untuk Location, pilih Multi-zone, dan tetapkan Region ke
us-west1
.Tetapkan Instance template ke
template-vm-ilb
.Opsional: Konfigurasikan penskalaan otomatis. Anda tidak dapat menskalakan grup instance secara otomatis berdasarkan penggunaan load balancing HTTP karena grup instance adalah backend untuk Load Balancer Jaringan passthrough internal.
Tetapkan Minimum number of instances ke
1
dan Maximum number of instances ke6
.Opsional: Konfigurasikan autohealing. Jika Anda mengonfigurasi autohealing, gunakan health check yang sama dengan yang digunakan oleh layanan backend untuk Load Balancer Jaringan passthrough internal. Dalam contoh ini, gunakan
hc-http-80
.Klik Create.
gcloud
Buat template instance. Secara opsional, Anda dapat menetapkan parameter lain, seperti jenis mesin, untuk template image yang akan digunakan.
gcloud compute instance-templates create template-vm-ilb \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=allow-ssh,allow-health-check \ --subnet=lb-subnet \ --region=us-west1 \ --network=lb-network \ --metadata=startup-script='#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completed'
Buat satu grup instance terkelola regional menggunakan template:
gcloud compute instance-groups managed create ig-ilb \ --template=template-vm-ilb \ --region=us-west1 \ --size=6
Tambahkan grup instance terkelola regional sebagai backend ke layanan backend yang telah Anda buat:
gcloud compute backend-services add-backend be-ilb \ --region=us-west1 \ --instance-group=ig-ilb \ --instance-group-region=us-west1
Putuskan sambungan dua grup instance tidak terkelola (zonal) dari layanan backend:
gcloud compute backend-services remove-backend be-ilb \ --region=us-west1 \ --instance-group=ig-a \ --instance-group-zone=us-west1-a gcloud compute backend-services remove-backend be-ilb \ --region=us-west1 \ --instance-group=ig-c \ --instance-group-zone=us-west1-c
Menghapus alamat IP eksternal dari VM backend
Saat Anda membuat VM backend, setiap VM diberi alamat IP eksternal sementara agar dapat mendownload Apache menggunakan skrip startup. Karena VM backend hanya digunakan oleh Network Load Balancer passthrough internal, Anda dapat menghapus alamat IP eksternalnya. Menghapus alamat IP eksternal akan mencegah VM backend mengakses internet secara langsung.
Konsol
Di konsol Google Cloud, buka halaman Instance VM.
Ulangi langkah-langkah berikut untuk setiap VM backend.
Klik nama VM backend, misalnya,
vm-a1
.Klik
Edit.Di bagian Network interfaces, klik jaringan.
Dari daftar External IP, pilih None, lalu klik Done.
Klik Simpan.
gcloud
Untuk mencari zona instance – misalnya, jika Anda menggunakan grup instance terkelola regional – jalankan perintah berikut untuk setiap instance guna menentukan zonanya. Ganti
[SERVER-VM]
dengan nama VM yang akan dicari.gcloud compute instances list --filter="name=[SERVER-VM]"
Ulangi langkah berikut untuk setiap VM backend. Ganti
[SERVER-VM]
dengan nama VM, dan ganti[ZONE]
dengan zona VM.gcloud compute instances delete-access-config [SERVER-VM] \ --zone=[ZONE] \ --access-config-name=external-nat
API
Buat permintaan POST
ke
metode instances.deleteAccessConfig
untuk setiap VM backend, gantivm-a1
dengan nama VM, dan ganti us-west1-a
dengan zona VM.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances/vm-a1/deleteAccessConfig?accessConfig=external-nat&networkInterface=None
Menggunakan alamat IP internal yang dicadangkan
Saat Anda membuat VM backend dan grup instance, instance VM menggunakan alamat IPv4 atau IPv6 internal sementara.
Langkah-langkah berikut menunjukkan cara mempromosikan alamat IPv4 atau IPv6 internal menjadi alamat IPv4 atau IPv6 internal statis, lalu memperbarui instance VM untuk menggunakan alamat IP internal statis:
- Mempromosikan alamat IPv4 atau IPv6 internal sementara yang sedang digunakan menjadi alamat statis.
- Mengubah atau menetapkan alamat IPv6 internal ke instance yang ada.
Atau, langkah-langkah berikut menunjukkan cara mencadangkan alamat IPv4 atau IPv6 internal statis yang baru, lalu mengupdate instance VM untuk menggunakan alamat IP internal statis:
Cadangkan alamat IPv4 atau IPv6 internal statis yang baru.
Tidak seperti pencadangan IPv4 internal, pencadangan IPv6 internal tidak mendukung pencadangan alamat IP tertentu dari subnetwork. Sebagai gantinya, rentang alamat IPv6 internal
/96
akan otomatis dialokasikan dari rentang alamat IPv6 internal/64
subnet.Mengubah atau menetapkan alamat IPv6 internal ke instance yang ada.
Untuk informasi selengkapnya, lihat Cara mencadangkan alamat IP internal statis.
Menerima traffic di semua port
Aturan penerusan load balancer, bukan layanan backend-nya, menentukan port tempat load balancer menerima traffic. Untuk mengetahui informasi tentang tujuan setiap komponen, lihat Komponen.
Saat membuat contoh aturan penerusan load balancer ini, Anda telah mengonfigurasi port 80
, 8008
, 8080
,
dan 8088
. Skrip startup yang menginstal Apache juga mengonfigurasinya untuk
menerima koneksi HTTPS di port 443
dan 8443
.
Untuk mendukung enam port ini, Anda dapat mengonfigurasi aturan penerusan untuk menerima traffic di semua port. Dengan strategi ini, Anda juga dapat mengonfigurasi aturan firewall yang mengizinkan koneksi masuk ke VM backend sehingga hanya mengizinkan port tertentu.
Prosedur ini menunjukkan cara menghapus aturan penerusan load balancer saat ini dan membuat aturan baru yang menerima traffic di semua port.
Untuk mengetahui informasi selengkapnya tentang kapan harus menggunakan penyiapan ini, lihat Load Balancer Jaringan passthrough internal dan aturan penerusan dengan alamat IP umum.
Konsol
Menghapus aturan penerusan dan membuat aturan baru
Di konsol Google Cloud, buka halaman Load balancing.
Klik load balancer
be-ilb
, lalu klik Edit.Klik Frontend configuration.
Tahan kursor di atas aturan penerusan
10.1.2.9
, lalu klik Hapus.Klik Add frontend IP and port.
Di bagian New Frontend IP and port, masukkan informasi berikut, lalu klik Done:
- Nama:
fr-ilb
- Subnetwork:
lb-subnet
- Internal IP:
ip-ilb
- Port: Semua.
- Nama:
Pastikan ada tanda centang biru di samping Frontend configuration sebelum melanjutkan.
Klik Review and finalize, lalu tinjau setelan konfigurasi load balancer Anda.
Klik Create.
gcloud
Hapus aturan penerusan yang ada,
fr-ilb
.gcloud compute forwarding-rules delete fr-ilb \ --region=us-west1
Buat aturan penerusan pengganti, dengan nama yang sama, yang konfigurasi portnya menggunakan kata kunci
ALL
. Parameter lainnya untuk aturan penerusan tetap sama.gcloud compute forwarding-rules create fr-ilb \ --region=us-west1 \ --load-balancing-scheme=internal \ --network=lb-network \ --subnet=lb-subnet \ --address=10.1.2.99 \ --ip-protocol=TCP \ --ports=ALL \ --backend-service=be-ilb \ --backend-service-region=us-west1
API
Hapus aturan penerusan dengan membuat permintaan DELETE
ke
metode forwardingRules.delete
.
DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules/fr-ilb
Buat aturan penerusan dengan membuat permintaan POST
ke metode forwardingRules.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules { "name": "fr-ilb", "IPAddress": "10.1.2.99", "IPProtocol": "TCP", "allPorts": true, "loadBalancingScheme": "INTERNAL", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "backendService": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb", "networkTier": "PREMIUM" }
Menguji traffic di semua penyiapan port
Hubungkan ke instance VM klien dan uji koneksi HTTP dan HTTPS.
Hubungkan ke VM klien:
gcloud compute ssh vm-client --zone=us-west1-a
Uji konektivitas HTTP di keempat port:
curl http://10.1.2.99 curl http://10.1.2.99:8008 curl http://10.1.2.99:8080 curl http://10.1.2.99:8088
Uji konektivitas HTTPS di port
443
dan8443
. Flag--insecure
diperlukan karena setiap server Apache dalam contoh penyiapan menggunakan sertifikat yang ditandatangani sendiri.curl https://10.1.2.99 --insecure curl https://10.1.2.99:8443 --insecure
Perhatikan bahwa permintaan HTTP (di keempat port) dan permintaan HTTPS (di kedua port) didistribusikan di antara semua VM backend.
Menerima traffic di beberapa port menggunakan dua aturan penerusan
Saat membuat contoh aturan penerusan load balancer ini, Anda telah mengonfigurasi port 80
, 8008
, 8080
,
dan 8088
. Skrip startup yang menginstal Apache juga mengonfigurasinya untuk
menerima koneksi HTTPS di port 443
dan 8443
.
Strategi alternatif untuk mengonfigurasi satu aturan penerusan guna menerima traffic di semua port adalah dengan membuat beberapa aturan penerusan, yang masing-masing mendukung lima port atau kurang.
Prosedur ini menunjukkan cara mengganti contoh aturan penerusan load balancer
dengan dua aturan penerusan, satu menangani traffic di port 80
, 8008
,
8080
, dan 8088
, dan yang lainnya menangani traffic di port 443
dan 8443
.
Untuk mengetahui informasi selengkapnya tentang kapan harus menggunakan penyiapan ini, lihat Load Balancer Jaringan passthrough internal dan aturan penerusan dengan alamat IP umum.
Konsol
Di konsol Google Cloud, buka halaman Forwarding rules.
Di kolom Nama, klik
fr-ilb
, lalu klik Hapus.Di konsol Google Cloud, buka halaman Load balancing.
Di kolom Nama, klik
be-ilb
.Klik Edit.
Klik Frontend configuration.
Klik Add frontend IP and port.
Di bagian New Frontend IP and port, lakukan hal berikut:
- Untuk Name, masukkan
fr-ilb-http
. - Untuk Subnetwork, pilih
lb-subnet
. - Untuk Internal IP purpose, pilih Shared.
- Dari daftar IP address, pilih Create IP address,
masukkan informasi berikut, lalu klik Reserve:
- Nama:
internal-10-1-2-99
- Static IP address: Let me choose
- Alamat IP kustom:
10.1.2.99
- Nama:
- Untuk Ports, pilih Multiple, lalu di Port numbers, masukkan
80
,8008
,8080
, dan8088
. - Klik Done.
- Untuk Name, masukkan
Klik Add frontend IP and port.
Di bagian New Frontend IP and port, lakukan hal berikut:
- Untuk Name, masukkan
fr-ilb-https
. - Untuk Subnetwork, pilih
lb-subnet
. - Untuk Internal IP purpose, pilih Shared.
- Dari daftar IP address, pilih
internal-10-1-2-99
. - Untuk Ports, pilih Multiple, lalu di Port numbers, masukkan
443
dan8443
. - Klik Done.
- Untuk Name, masukkan
Klik Review and finalize, lalu tinjau setelan konfigurasi load balancer Anda.
Klik Perbarui.
gcloud
Hapus aturan penerusan yang ada,
fr-ilb
.gcloud compute forwarding-rules delete fr-ilb \ --region=us-west1
Buat alamat IP internal statis (dicadangkan) untuk
10.1.2.99
dan tetapkan flag--purpose
-nya keSHARED_LOADBALANCER_VIP
. Flag--purpose
diperlukan agar dua aturan penerusan internal dapat menggunakan alamat IP internal yang sama.gcloud compute addresses create internal-10-1-2-99 \ --region=us-west1 \ --subnet=lb-subnet \ --addresses=10.1.2.99 \ --purpose=SHARED_LOADBALANCER_VIP
- Buat dua aturan penerusan pengganti dengan parameter berikut:
gcloud compute forwarding-rules create fr-ilb-http \ --region=us-west1 \ --load-balancing-scheme=internal \ --network=lb-network \ --subnet=lb-subnet \ --address=10.1.2.99 \ --ip-protocol=TCP \ --ports=80,8008,8080,8088 \ --backend-service=be-ilb \ --backend-service-region=us-west1
gcloud compute forwarding-rules create fr-ilb-https \ --region=us-west1 \ --load-balancing-scheme=internal \ --network=lb-network \ --subnet=lb-subnet \ --address=10.1.2.99 \ --ip-protocol=TCP \ --ports=443,8443 \ --backend-service=be-ilb \ --backend-service-region=us-west1
API
Hapus aturan penerusan dengan membuat permintaan DELETE
ke
metode forwardingRules.delete
.
DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules/fr-ilb
Buat alamat IP internal statis (dicadangkan) untuk 10.1.2.99
dan tetapkan tujuannya ke SHARED_LOADBALANCER_VIP
dengan membuat permintaan POST
ke metode addresses.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/addresses { "name": "internal-10-1-2-99", "address": "10.1.2.99", "prefixLength": 32, "addressType": INTERNAL, "purpose": SHARED_LOADBALANCER_VIP, "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet" }
Buat dua aturan penerusan dengan membuat dua permintaan POST
ke metode forwardingRules.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules { "name": "fr-ilb-http", "IPAddress": "10.1.2.99", "IPProtocol": "TCP", "ports": [ "80", "8008", "8080", "8088" ], "loadBalancingScheme": "INTERNAL", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "backendService": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb", "networkTier": "PREMIUM" }
{ "name": "fr-ilb-https", "IPAddress": "10.1.2.99", "IPProtocol": "TCP", "ports": [ "443", "8443" ], "loadBalancingScheme": "INTERNAL", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "backendService": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb", "networkTier": "PREMIUM" }
Menguji traffic pada penyiapan beberapa port
Hubungkan ke instance VM klien dan uji koneksi HTTP dan HTTPS.
Hubungkan ke VM klien:
gcloud compute ssh vm-client --zone=us-west1-a
Uji konektivitas HTTP di keempat port:
curl http://10.1.2.99 curl http://10.1.2.99:8008 curl http://10.1.2.99:8080 curl http://10.1.2.99:8088
Uji konektivitas HTTPS di port
443
dan8443
. Flag--insecure
diperlukan karena setiap server Apache dalam contoh penyiapan menggunakan sertifikat yang ditandatangani sendiri.curl https://10.1.2.99 --insecure curl https://10.1.2.99:8443 --insecure
Perhatikan bahwa permintaan HTTP (di keempat port) dan permintaan HTTPS (di kedua port) didistribusikan di antara semua VM backend.
Menggunakan afinitas sesi
Contoh konfigurasi membuat layanan backend tanpa afinitas sesi.
Prosedur ini menunjukkan cara mengupdate layanan backend untuk contoh Network Load Balancer passthrough internal sehingga menggunakan afinitas sesi berdasarkan hash yang dibuat dari alamat IP klien dan alamat IP aturan penerusan internal load balancer.
Untuk jenis afinitas sesi yang didukung, lihat Opsi afinitas sesi.
Konsol
Di konsol Google Cloud, buka halaman Load balancing.
Klik be-ilb (nama layanan backend yang Anda buat untuk contoh ini) dan klik Edit.
Di halaman Edit internal passthrough Network Load Balancer, klik Backend configuration.
Dari daftar Session affinity, pilih Client IP.
Klik Perbarui.
gcloud
Gunakan perintah gcloud
berikut untuk mengupdate layanan backend be-ilb
,
yang menentukan afinitas sesi IP klien:
gcloud compute backend-services update be-ilb \ --region=us-west1 \ --session-affinity CLIENT_IP
API
Buat permintaan PATCH
ke metode regionBackendServices/patch
.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb { "sessionAffinity": "CLIENT_IP" }
Mengonfigurasi kebijakan pelacakan koneksi
Bagian ini menunjukkan cara mengupdate layanan backend untuk mengubah kebijakan pelacakan koneksi default load balancer.
Kebijakan pelacakan koneksi mencakup setelan berikut:
gcloud
Gunakan perintah gcloud compute
backend-services
berikut untuk memperbarui kebijakan pelacakan koneksi untuk layanan backend:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --tracking-mode=TRACKING_MODE \ --connection-persistence-on-unhealthy-backends=CONNECTION_PERSISTENCE_BEHAVIOR \ --idle-timeout-sec=IDLE_TIMEOUT_VALUE
Ganti placeholder dengan nilai yang valid:
BACKEND_SERVICE
: layanan backend yang Anda perbaruiREGION
: region layanan backend yang Anda perbaruiTRACKING_MODE
: mode pelacakan koneksi yang akan digunakan untuk paket masuk; untuk daftar nilai yang didukung, lihat Mode pelacakanCONNECTION_PERSISTENCE_BEHAVIOR
: perilaku persistensi koneksi saat backend tidak sehat; untuk daftar nilai yang didukung, lihat Persistensi koneksi pada backend yang tidak sehatIDLE_TIMEOUT_VALUE
: jumlah detik yang diperlukan untuk mempertahankan entri tabel pelacakan koneksi setelah load balancer memproses paket terakhir yang cocok dengan entriAnda hanya dapat mengubah properti ini jika pelacakan koneksi kurang dari 5-tuple (yaitu, saat afinitas sesi dikonfigurasi menjadi
CLIENT_IP
atauCLIENT_IP_PROTO
, dan mode pelacakan adalahPER_SESSION
).Nilai default-nya adalah 600 detik (10 menit). Nilai waktu tunggu tidak ada aktivitas maksimum yang dapat dikonfigurasi adalah 57.600 detik (16 jam).
Membuat aturan penerusan di subnet lain
Prosedur ini membuat alamat IP kedua dan aturan penerusan di subnet yang berbeda untuk menunjukkan bahwa Anda dapat membuat beberapa aturan penerusan untuk satu Load Balancer Jaringan passthrough internal. Region untuk aturan penerusan harus cocok dengan region layanan backend.
Tunduk pada aturan firewall, klien di subnet mana pun di region dapat menghubungi alamat IP Load Balancer Jaringan passthrough internal.
Konsol
Menambahkan subnet kedua
Di konsol Google Cloud, buka halaman jaringan VPC.
Klik Create VPC network.
Klik
lb-network
.Di bagian Subnets, lakukan hal berikut:
- Klik Tambahkan subnet.
- Di bagian New subnet, masukkan informasi berikut:
- Nama:
second-subnet
- Region:
us-west1
- Rentang alamat IP:
10.5.6.0/24
- Nama:
- Klik Tambahkan.
Menambahkan aturan penerusan kedua
Di konsol Google Cloud, buka halaman Load balancing.
Klik load balancer
be-ilb
, lalu klik Edit.Klik Frontend configuration.
Klik Add frontend IP and port.
Di bagian New Frontend IP and port, tetapkan kolom berikut, lalu klik Done:
- Nama:
fr-ilb-2
- IP version: IPv4
- Subnetwork:
second-subnet
- Internal IP:
ip-ilb
- Port:
80
dan443
- Nama:
Pastikan ada tanda centang biru di samping Frontend configuration sebelum melanjutkan.
Klik Review and finalize, lalu tinjau setelan konfigurasi load balancer Anda.
Klik Create.
gcloud
Buat subnet kedua di jaringan
lb-network
di regionus-west1
:gcloud compute networks subnets create second-subnet \ --network=lb-network \ --range=10.5.6.0/24 \ --region=us-west1
Buat aturan penerusan kedua untuk port 80 dan 443. Parameter lainnya untuk aturan ini, termasuk alamat IP dan layanan backend, sama dengan aturan penerusan utama,
fr-ilb
.gcloud compute forwarding-rules create fr-ilb-2 \ --region=us-west1 \ --load-balancing-scheme=internal \ --network=lb-network \ --subnet=second-subnet \ --address=10.5.6.99 \ --ip-protocol=TCP \ --ports=80,443 \ --backend-service=be-ilb \ --backend-service-region=us-west1
API
Buat permintaan POST
ke
metode subnetworks.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks { "name": "second-subnet", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "ipCidrRange": "10.5.6.0/24", "privateIpGoogleAccess": false }
Buat aturan penerusan dengan membuat permintaan POST
ke metode forwardingRules.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules { "name": "fr-ilb-2", "IPAddress": "10.5.6.99", "IPProtocol": "TCP", "ports": [ "80", "443" ], "loadBalancingScheme": "INTERNAL", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/subnetworks/lb-subnet", "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/lb-network", "backendService": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb", "networkTier": "PREMIUM" }
Menguji aturan penerusan baru
Hubungkan ke instance VM klien dan uji koneksi HTTP dan HTTPS ke alamat IP.
Hubungkan ke VM klien:
gcloud compute ssh vm-client --zone=us-west1-a
Uji konektivitas HTTP ke alamat IP:
curl http://10.1.2.99 curl http://10.5.6.99
Menguji konektivitas HTTPS. Penggunaan
--insecure
diperlukan karena konfigurasi server Apache dalam contoh penyiapan menggunakan sertifikat yang ditandatangani sendiri.curl https://10.1.2.99 --insecure curl https://10.5.6.99 --insecure
Perhatikan bahwa permintaan ditangani oleh semua VM backend, terlepas dari protokol (HTTP atau HTTPS) atau alamat IP yang digunakan.
Menggunakan subkumpulan backend
Contoh konfigurasi membuat layanan backend tanpa subkumpulan.
Prosedur ini menunjukkan cara mengaktifkan subkumpulan di layanan backend untuk contoh Load Balancer Jaringan passthrough internal sehingga deployment dapat diskalakan ke sejumlah instance backend yang lebih besar.
Anda hanya boleh mengaktifkan subsetting jika perlu mendukung lebih dari 250 VM backend di satu load balancer.
Untuk informasi selengkapnya tentang kasus penggunaan ini, lihat subset backend.
gcloud
Gunakan perintah gcloud
berikut untuk mengupdate layanan backend be-ilb
,
yang menentukan kebijakan subkumpulan:
gcloud compute backend-services update be-ilb \ --subsetting-policy=CONSISTENT_HASH_SUBSETTING
API
Buat permintaan PATCH
ke metode regionBackendServices/patch
.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/be-ilb { "subsetting": { "policy": CONSISTENT_HASH_SUBSETTING } }
Membuat load balancer untuk Duplikasi Paket
Duplikasi Paket memungkinkan Anda menyalin dan mengumpulkan data paket dari instance tertentu di VPC. Data yang dikumpulkan dapat membantu Anda mendeteksi ancaman keamanan dan memantau performa aplikasi.
Duplikasi Paket memerlukan Load Balancer Jaringan passthrough internal untuk menyeimbangkan traffic ke grup instance tujuan kolektor. Untuk membuat Load Balancer Jaringan passthrough internal untuk Duplikasi Paket, ikuti langkah-langkah berikut.
Konsol
Memulai konfigurasi
Di konsol Google Cloud, buka halaman Load balancing.
- Klik Create load balancer.
- Untuk Type of load balancer, pilih Network Load Balancer (TCP/UDP/SSL), lalu klik Next.
- Untuk Proxy or passthrough, pilih Passthrough load balancer, lalu klik Next.
- Untuk Public facing or internal, pilih Internal, lalu klik Next.
- Klik Konfigurasikan.
Konfigurasi dasar
- Untuk Load balancer name, masukkan nama.
- Untuk Region, pilih region instance VM tempat Anda ingin mencerminkan paket.
- Untuk Network, pilih jaringan tempat Anda ingin mencerminkan paket.
- Klik Backend configuration.
- Di bagian New Backend, untuk Instance group, pilih grup instance tujuan penerusan paket.
- Dari daftar Health check, pilih Create a health check,
masukkan informasi berikut, lalu klik Save:
- Untuk Name, masukkan nama untuk health check.
- Untuk Protocol, pilih
HTTP
. - Untuk Port, masukkan
80
.
- Klik Frontend configuration.
- Di bagian New Frontend IP and port, lakukan hal berikut:
- Untuk Name, masukkan nama.
- Untuk Subnetwork, pilih subnetwork di region yang sama dengan instance yang akan dicerminkan.
- Untuk Port, pilih All.
- Klik Advanced configurations dan centang kotak Enable this load balancer for packet mirroring.
- Klik Done.
- Klik Create.
gcloud
Buat health check HTTP regional baru untuk menguji konektivitas HTTP ke grup instance di port 80:
gcloud compute health-checks create http HEALTH_CHECK_NAME \ --region=REGION \ --port=80
Ganti kode berikut:
HEALTH_CHECK_NAME
: nama health check.REGION
: region instance VM yang ingin Anda cerminkan paketnya.
Buat layanan backend untuk traffic HTTP:
gcloud compute backend-services create COLLECTOR_BACKEND_SERVICE \ --region=REGION \ --health-checks-region=REGION \ --health-checks=HEALTH_CHECK_NAME \ --load-balancing-scheme=internal \ --protocol=tcp
Ganti kode berikut:
COLLECTOR_BACKEND_SERVICE
: nama layanan backend.REGION
: region instance VM tempat Anda ingin mencerminkan paket.HEALTH_CHECK_NAME
: nama health check.
Tambahkan grup instance ke layanan backend:
gcloud compute backend-services add-backend COLLECTOR_BACKEND_SERVICE \ --region=REGION \ --instance-group=INSTANCE_GROUP \ --instance-group-zone=ZONE
Ganti kode berikut:
COLLECTOR_BACKEND_SERVICE
: nama layanan backend.REGION
: region grup instance.INSTANCE_GROUP
: nama grup instance.ZONE
: zona grup instance.
Buat aturan penerusan untuk layanan backend:
gcloud compute forwarding-rules create FORWARDING_RULE_NAME \ --region=REGION \ --network=NETWORK \ --subnet=SUBNET \ --backend-service=COLLECTOR_BACKEND_SERVICE \ --load-balancing-scheme=internal \ --ip-protocol=TCP \ --ports=all \ --is-mirroring-collector
Ganti kode berikut:
FORWARDING_RULE_NAME
: nama aturan penerusan.REGION
: region untuk aturan penerusan.NETWORK
: jaringan untuk aturan penerusan.SUBNET
: subnetwork di region VM tempat Anda ingin mencerminkan paket.COLLECTOR_BACKEND_SERVICE
: layanan backend untuk load balancer ini.
Langkah selanjutnya
- Lihat Ringkasan Load Balancer Jaringan passthrough internal untuk mengetahui dasar-dasar penting.
- Lihat Konsep failover untuk Load Balancer Jaringan passthrough internal untuk mengetahui informasi penting tentang failover.
- Lihat Load balancing internal dan nama DNS untuk mengetahui opsi nama DNS yang tersedia yang dapat digunakan load balancer Anda.
- Lihat Mengonfigurasi failover untuk Load Balancer Jaringan passthrough internal untuk mengetahui langkah-langkah konfigurasi dan contoh konfigurasi failover Load Balancer Jaringan passthrough internal.
- Lihat Logging dan pemantauan Load Balancer Jaringan passthrough internal untuk mengetahui informasi tentang cara mengonfigurasi logging dan pemantauan untuk Load Balancer Jaringan passthrough internal.
- Lihat Load Balancer Jaringan passthrough internal dan jaringan yang terhubung untuk mengetahui informasi tentang cara mengakses Load Balancer Jaringan passthrough internal dari jaringan peer yang terhubung ke jaringan VPC Anda.
- Lihat Memecahkan masalah Load Balancer Jaringan passthrough internal untuk mengetahui informasi tentang cara memecahkan masalah pada Load Balancer Jaringan passthrough internal.
- Membersihkan penyiapan load balancer.