GSP157

Ringkasan
Lab ini mendemonstrasikan cara membuat load balancer HTTP(S) yang meneruskan traffic ke instance di dua region berbeda. Di lab ini, Anda akan membuat empat instance Compute Engine, dua di setiap dua region yang berbeda. Kemudian, Anda mengonfigurasi sistem lainnya agar koneksi yang masuk dikirim ke instance yang sesuai.
Resource yang Anda buat akan terhubung seperti yang ditunjukkan di sini:

Penyiapan
Sebelum mengklik tombol Start Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer yang dimulai saat Anda mengklik Start Lab akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab interaktif ini dapat Anda gunakan untuk melakukan aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
- Akses ke browser internet standar (disarankan browser Chrome).
Catatan: Gunakan jendela Samaran (direkomendasikan) atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Hanya gunakan akun siswa untuk lab ini. Jika Anda menggunakan akun Google Cloud yang berbeda, Anda mungkin akan dikenai tagihan ke akun tersebut.
Cara memulai lab dan login ke Google Cloud Console
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran.
Di sebelah kiri ada panel Lab Details yang berisi hal-hal berikut:
- Tombol Open Google Cloud console
- Waktu tersisa
- Kredensial sementara yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
-
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}}
Anda juga dapat menemukan Username di panel Lab Details.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}}
Anda juga dapat menemukan Password di panel Lab Details.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda.
Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
-
Klik halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search.
Mengaktifkan Cloud Shell
Cloud Shell adalah mesin virtual yang dilengkapi dengan berbagai alat pengembangan. Mesin virtual ini menawarkan direktori beranda persisten berkapasitas 5 GB dan berjalan di Google Cloud. Cloud Shell menyediakan akses command-line untuk resource Google Cloud Anda.
-
Klik Activate Cloud Shell
di bagian atas Konsol Google Cloud.
-
Klik jendela berikut:
- Lanjutkan melalui jendela informasi Cloud Shell.
- Beri otorisasi ke Cloud Shell untuk menggunakan kredensial Anda guna melakukan panggilan Google Cloud API.
Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke Project_ID, . Output berisi baris yang mendeklarasikan Project_ID untuk sesi ini:
Project Cloud Platform Anda dalam sesi ini disetel ke {{{project_0.project_id | "PROJECT_ID"}}}
gcloud
adalah alat command line untuk Google Cloud. Alat ini sudah terinstal di Cloud Shell dan mendukung pelengkapan command line.
- (Opsional) Anda dapat menampilkan daftar nama akun yang aktif dengan perintah ini:
gcloud auth list
- Klik Authorize.
Output:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
Untuk menetapkan akun aktif, jalankan:
$ gcloud config set account `ACCOUNT`
- (Opsional) Anda dapat menampilkan daftar ID project dengan perintah ini:
gcloud config list project
Output:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Catatan: Untuk mendapatkan dokumentasi gcloud
yang lengkap di Google Cloud, baca panduan ringkasan gcloud CLI.
Petunjuk ini mengasumsikan Anda menggunakan jaringan VPC mode otomatis atau jaringan lama. Jika Anda menggunakan jaringan VPC mode kustom, beberapa langkah di bawah, seperti membuat instance, akan mengharuskan Anda menentukan rentang subnet.
Tugas 1. Mengonfigurasi instance
Membuat instance virtual machine di dua region berbeda untuk menerima traffic yang diteruskan dari load balancer. Konfigurasikan instance virtual machine untuk pengujian dan berikan tag yang sama kepada semuanya, yang akan digunakan oleh aturan firewall untuk mengizinkan traffic masuk.
Skrip startup menginstal Apache dan membuat halaman beranda yang unik untuk setiap instance.
- Buat dua instance di region :
gcloud compute instances create www-1 \
--image-family debian-11 \
--image-project debian-cloud \
--machine-type e2-micro \
--zone {{{project_0.default_zone |ZONE}}} \
--tags http-tag \
--metadata startup-script="#! /bin/bash
apt-get update
apt-get install apache2 -y
service apache2 restart
{{{project_0.startup_script.index_html1_code|Code}}}"
gcloud compute instances create www-2 \
--image-family debian-11 \
--image-project debian-cloud \
--machine-type e2-micro \
--zone {{{project_0.default_zone |ZONE}}} \
--tags http-tag \
--metadata startup-script="#! /bin/bash
apt-get update
apt-get install apache2 -y
service apache2 restart
{{{project_0.startup_script.index_html_code|Code}}}"
Klik Check my progress untuk memverifikasi tujuan.
Mengonfigurasi instance untuk region utama
- Buat dua instance di region :
gcloud compute instances create www-3 \
--image-family debian-11 \
--image-project debian-cloud \
--machine-type e2-micro \
--zone {{{project_0.default_zone_2 |ZONE 2}}} \
--tags http-tag \
--metadata startup-script="#! /bin/bash
apt-get update
apt-get install apache2 -y
service apache2 restart
{{{project_0.startup_script.index_html2_code|Code}}}"
gcloud compute instances create www-4 \
--image-family debian-11 \
--image-project debian-cloud \
--machine-type e2-micro \
--zone {{{project_0.default_zone_2 |ZONE 2}}} \
--tags http-tag \
--metadata startup-script="#! /bin/bash
apt-get update
apt-get install apache2 -y
service apache2 restart
{{{project_0.startup_script.index_html3_code|Code}}}"
Klik Check my progress untuk memverifikasi tujuan.
Mengonfigurasi instance untuk region sekunder
- Buat aturan firewall untuk mengizinkan traffic eksternal ke instance virtual machine Anda. Aturan ini mengizinkan traffic dari semua sumber, yang berguna saat Anda menyiapkan dan menguji konfigurasi.
Aturan firewall menggunakan tag http-tag
yang Anda buat sebelumnya. Aturan firewall mengizinkan traffic menjangkau instance dengan tag pada port yang ditetapkan:
gcloud compute firewall-rules create www-firewall \
--target-tags http-tag --allow tcp:80
- Pastikan instance berjalan. Buat daftar instance untuk mendapatkan alamat IP-nya dari kolom EXTERNAL_IP:
gcloud compute instances list
- Salin
External IP
setiap instance dan tempelkan ke tab browser baru untuk menguji bahwa instance berjalan, dan server web dikonfigurasi dengan benar serta dapat merespons dengan halaman beranda default melalui port firewall yang terbuka.
Tugas 2. Mengonfigurasi layanan untuk load balancing
Setelah instance Anda aktif dan berjalan, siapkan layanan yang diperlukan untuk load balancing. Buat hal berikut:
- Alamat IP eksternal statis global, yang merupakan alamat IP eksternal yang digunakan pelanggan untuk menjangkau load balancer Anda.
- Grup instance untuk menampung instance Anda.
- Health check, yang melakukan polling pada instance Anda untuk melihat apakah instance tersebut responsif atau tidak. Load balancer hanya mengirimkan traffic ke instance yang responsif.
Untuk mengonfigurasi layanan ini, lakukan langkah-langkah berikut:
- Buat alamat IP eksternal statis global
IPv4
untuk load balancer Anda:
gcloud compute addresses create lb-ip-cr \
--ip-version=IPV4 \
--global
- Buat grup instance untuk setiap zona Anda:
gcloud compute instance-groups unmanaged create {{{project_0.default_region |REGION}}}-resources-w --zone {{{project_0.default_zone |ZONE}}}
gcloud compute instance-groups unmanaged create {{{project_0.default_region_2 |REGION 2}}}-resources-w --zone {{{project_0.default_zone_2 |ZONE 2}}}
- Tambahkan instance yang Anda buat sebelumnya ke grup instance:
gcloud compute instance-groups unmanaged add-instances {{{project_0.default_region |REGION}}}-resources-w \
--instances www-1,www-2 \
--zone {{{project_0.default_zone |ZONE}}}
gcloud compute instance-groups unmanaged add-instances {{{project_0.default_region_2 |REGION 2}}}-resources-w \
--instances www-3,www-4 \
--zone {{{project_0.default_zone_2 |ZONE 2}}}
- Membuat Health Check:
gcloud compute health-checks create http http-basic-check
Tugas 3: Mengonfigurasi layanan load balancing
Load balancing melibatkan beberapa layanan yang terhubung. Di bagian ini, Anda akan menyiapkan dan menghubungkan layanan berikut:
- Port bernama, yang digunakan load balancer untuk mengarahkan traffic ke grup instance Anda.
- Layanan backend, yang memantau penggunaan dan kondisi instance. Layanan backend mengetahui apakah instance dalam grup instance dapat menerima traffic. Jika tidak, dan jika ada instance yang kurang dimanfaatkan di tempat lain, load balancer akan mengalihkan traffic ke instance tersebut.
- Peta URL, yang mengurai URL permintaan dan dapat meneruskan permintaan ke layanan backend tertentu berdasarkan host dan jalur URL permintaan. Dalam contoh ini, karena kita tidak menggunakan penerusan berbasis konten, peta URL hanya akan berisi pemetaan default.
- Satu atau beberapa resource sertifikat SSL, jika Anda menggunakan HTTPS, yang berisi informasi sertifikat SSL untuk load balancer. Anda dapat menggunakan beberapa sertifikat SSL dan harus membuat resource sertifikat SSL untuk setiap sertifikat.
- Kebijakan SSL opsional, jika Anda menggunakan HTTPS.
- Proxy target, yang menerima permintaan dari pengguna dan meneruskannya ke peta URL. Proxy target adalah layanan yang mendekripsi traffic SSL menggunakan resource sertifikat SSL. Proxy target dapat meneruskan traffic ke instance Anda melalui HTTP atau HTTPS.
- Dua aturan penerusan global, masing-masing untuk IPv4 dan IPv6, yang menyimpan resource alamat IP eksternal global. Aturan penerusan global meneruskan permintaan masuk ke proxy target.
- Untuk setiap grup instance, tentukan layanan HTTP dan petakan nama port ke port yang relevan:
gcloud compute instance-groups unmanaged set-named-ports {{{project_0.default_region |REGION}}}-resources-w \
--named-ports http:80 \
--zone {{{project_0.default_zone |ZONE}}}
gcloud compute instance-groups unmanaged set-named-ports {{{project_0.default_region_2 |REGION 2}}}-resources-w \
--named-ports http:80 \
--zone {{{project_0.default_zone_2 |ZONE 2}}}
Klik Check my progress untuk memverifikasi tujuan.
Mencadangkan alamat IPV4, membuat grup instance dan health check
- Membuat layanan backend dan menentukan parameternya. Tetapkan kolom
--protocol
ke HTTP
karena kita menggunakan HTTP untuk membuka instance. Gunakan health check http-basic-check
yang kita buat sebelumnya sebagai health check:
gcloud compute backend-services create web-map-backend-service \
--protocol HTTP \
--health-checks http-basic-check \
--global
- Tambahkan grup instance sebagai backend ke layanan backend: Backend menentukan kapasitas (penggunaan CPU maksimum atau kueri maksimum per detik) grup instance yang ada di dalamnya. Dalam contoh ini, setel mode balancing menjadi pemakaian CPU, pemakaian maksimum menjadi 80%, dan penskalaan kapasitas menjadi 1. Tetapkan penskalaan kapasitas ke 0 jika Anda ingin menguras layanan backend:
gcloud compute backend-services add-backend web-map-backend-service \
--balancing-mode UTILIZATION \
--max-utilization 0.8 \
--capacity-scaler 1 \
--instance-group {{{project_0.default_region |REGION}}}-resources-w \
--instance-group-zone {{{project_0.default_zone |ZONE}}} \
--global
gcloud compute backend-services add-backend web-map-backend-service \
--balancing-mode UTILIZATION \
--max-utilization 0.8 \
--capacity-scaler 1 \
--instance-group {{{project_0.default_region_2 |REGION 2}}}-resources-w \
--instance-group-zone {{{project_0.default_zone_2 |ZONE 2}}} \
--global
Klik Check my progress untuk memverifikasi tujuan.
Membuat layanan backend dan menambahkan grup instance di dalamnya
- Buat peta URL default yang mengarahkan semua permintaan masuk ke semua instance Anda:
gcloud compute url-maps create web-map \
--default-service web-map-backend-service
- Buat proxy HTTP target untuk mengarahkan permintaan ke peta URL:
gcloud compute target-http-proxies create http-lb-proxy \
--url-map web-map
- Cari alamat IP statis yang Anda buat untuk load balancer. Anda akan menggunakannya pada langkah berikutnya.
gcloud compute addresses list
- Buat satu aturan penerusan global IPv4 untuk mengarahkan permintaan masuk ke proxy. Ganti
[LB_IP_ADDRESS]
dalam perintah dengan alamat IPv4 statis yang Anda buat:
gcloud compute forwarding-rules create http-cr-rule \
--address [LB_IP_ADDRESS] \
--global \
--target-http-proxy http-lb-proxy \
--ports 80
Catatan: Setelah membuat aturan penerusan global, mungkin perlu beberapa menit untuk menerapkan konfigurasi Anda.
Klik Check my progress untuk memverifikasi tujuan.
Membuat peta URL dan proxy HTTP target ke peta URL
Tugas 4. Mengirimkan traffic ke instance
Setelah mengonfigurasi layanan load balancing, Anda dapat mulai mengirimkan traffic ke aturan penerusan dan melihat traffic tersebut disebar ke berbagai instance.
- Temukan alamat IP aturan penerusan global Anda:
gcloud compute forwarding-rules list
- Di konsol, telusuri Load Balancing dan pilih hasil pertama. Di halaman Load balancing, Anda akan melihat lingkaran hijau dengan tanda centang di baris
web-map
.

-
Klik Load balancer (web-map
) untuk melihat detailnya. Di bagian Backend pada halaman, konfirmasi bahwa instance
bersifat responsif dengan melihat kolom Healthy. Diperlukan waktu beberapa saat hingga tampilan menunjukkan bahwa
instance tersebut responsif.
-
Setelah tampilan menunjukkan bahwa instance dalam kondisi baik, klik advanced menu untuk mengakses informasi mendetail tentang load balancer.
-
Di bagian Frontend, salin alamat IP dan tempelkan ke browser untuk menampilkan konten default salah satu instance di grup instance yang paling dekat dengan Anda.

Load balancer meneruskan permintaan Anda ke instance terdekat yang tersedia.
Di lab ini, Anda membuat instance lab di region dan . Respons dari instance bergantung pada jarak Anda dari region ini saat Anda melakukan lab.
Misalnya, jika lokasi geografis Anda saat ini lebih dekat ke region us-central1, Anda akan mendapatkan respons dari instance region us-central1.
Untuk mengetahui detail selengkapnya tentang zona dan region di Google Cloud, kunjungi Region dan Zona.
- Muat ulang halaman beberapa kali, konten halaman akan bervariasi karena load balancer meneruskan antara dua instance di grup instance. Misalnya (Anda mungkin melihat instance dalam urutan yang berbeda):
Muat ulang 1:

Muat ulang 2:

Muat ulang 3:

Muat ulang 4:

Jika Anda menggunakan sertifikat yang ditandatangani sendiri untuk pengujian, browser akan menampilkan peringatan. Anda harus secara eksplisit memerintahkan browser untuk menerima sertifikat tersebut.
Catatan: Anda akan melihat respons dari region terdekat. Jika respons Anda tidak berhasil pada awalnya, Anda mungkin perlu menunggu beberapa menit agar konfigurasi dimuat sepenuhnya dan instance Anda ditandai responsif sebelum mencoba lagi. Setiap kali halaman dimuat ulang, instance lainnya mungkin ditampilkan. Untuk menyimulasikan pengguna di wilayah geografis yang berbeda, coba gunakan proxy web untuk membuat permintaan.
Tugas 5. Mematikan akses HTTP dari mana saja kecuali dari layanan load balancing
- Setelah semuanya berfungsi, ubah aturan firewall Anda sehingga traffic HTTP(S) ke instance Anda hanya dapat berasal dari layanan load balancing Anda:
gcloud compute firewall-rules create allow-lb-and-healthcheck \
--source-ranges 130.211.0.0/22,35.191.0.0/16 \
--target-tags http-tag \
--allow tcp:80
- Hapus aturan yang mengizinkan traffic HTTP(S) dari sumber lain:
gcloud compute firewall-rules delete www-firewall
Menguji bahwa load balancer dapat menjangkau instance, tetapi sumber lain tidak dapat menjangkaunya.
- Temukan alamat IP aturan penerusan global Anda:
gcloud compute addresses list
-
Salin dan tempel alamat IP ke browser Anda untuk memastikan penerusan berfungsi.
-
Sekarang, temukan alamat IP masing-masing instance Anda dan catat alamat di kolom EXTERNAL_IP
:
gcloud compute instances list
- Salin dan tempel alamat untuk sebuah instance ke browser Anda.
Karena Anda telah menghapus aturan firewall yang mengizinkan traffic HTTP(S) dari sumber lain, perintah ini akan gagal. Instance hanya menerima traffic dari rentang sumber yang ditentukan dalam aturan firewall allow-lb-and-healthcheck
.
Tugas 6. (Opsional) Menghapus IP eksternal kecuali untuk bastion host
Load balancing HTTP menggunakan IP internal target, bukan IP eksternalnya. Setelah load balancing berfungsi, Anda dapat meningkatkan keamanan dengan menghapus IP eksternal dari target load balancing, lalu terhubung melalui instance perantara untuk menjalankan tugas pada instance yang di-load balance. Dengan begitu, tidak ada orang di luar jaringan VPC Anda yang dapat mengaksesnya dengan cara apa pun, kecuali melalui load balancer.
Anda memerlukan setidaknya satu instance di jaringan VPC yang memiliki alamat IP eksternal, biasanya instance yang ditetapkan untuk tujuan ini.
Jika Anda tidak sengaja menghapus semua alamat IP eksternal, Anda dapat menggunakan Konsol Cloud untuk membuat yang baru.
Menghapus alamat IP eksternal dari sebuah instance
- Jalankan perintah berikut untuk menghapus alamat IP eksternal dari sebuah instance. Catat nama instance seperti yang ditampilkan di kolom
NAME
:
gcloud compute instances list
- Hapus konfigurasi akses untuk instance. Untuk
NAME
, masukkan nama instance:
gcloud compute instances delete-access-config NAME
Selamat!
Selamat! Di lab ini, Anda telah menyiapkan dan menguji fungsi load balancing lintas region. Lab ini memberikan pengalaman langsung dalam mengonfigurasi load balancing lintas region dengan HTTP(S) Load Balancing. Dengan berhasil men-deploy instance di dua region dan mengonfigurasi load balancer untuk mendistribusikan traffic, Anda telah memperoleh pengetahuan praktis tentang cara Google Cloud dapat memastikan ketersediaan tinggi dan fault tolerance untuk aplikasi Anda.
Sertifikasi dan pelatihan Google Cloud
...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.
Manual Terakhir Diperbarui pada 7 November 2024
Lab Terakhir Diuji pada 7 November 2024
Hak cipta 2025 Google LLC. Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.