Petunjuk dan persyaratan penyiapan lab
Lindungi akun dan progres Anda. Selalu gunakan jendela browser pribadi dan kredensial lab untuk menjalankan lab ini.

Membangun Situs di Google Cloud: Challenge Lab

Lab 25 menit universal_currency_alt 5 Kredit show_chart Menengah
info Lab ini mungkin menggabungkan alat AI untuk mendukung pembelajaran Anda.
Konten ini belum dioptimalkan untuk perangkat seluler.
Untuk pengalaman terbaik, kunjungi kami dengan komputer desktop menggunakan link yang dikirim melalui email.

GSP319

Logo lab mandiri Google Cloud

Pengantar

Dalam challenge lab, Anda diberi sebuah skenario dan serangkaian tugas. Tidak ada petunjuk langkah demi langkah. Anda akan menggunakan keahlian yang dipelajari dari lab dalam kursus untuk mencari cara menyelesaikan sendiri tugas-tugas tersebut. Sistem pemberian skor otomatis (ditampilkan pada halaman ini) akan memberikan masukan tentang apakah Anda telah menyelesaikan tugas dengan benar atau tidak.

Saat mengikuti challenge lab, Anda tidak akan diajari konsep-konsep baru Google Cloud. Anda diharapkan dapat memperluas keahlian yang dipelajari, seperti mengubah nilai default dan membaca serta mengkaji pesan error untuk memperbaiki kesalahan Anda sendiri.

Untuk meraih skor 100%, Anda harus berhasil menyelesaikan semua tugas dalam jangka waktu tertentu.

Lab ini direkomendasikan bagi siswa yang sudah mengikuti kursus Membangun Situs di Google Cloud. Apakah Anda siap menghadapi tantangan ini?

Penyiapan dan persyaratan

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.

Skenario tantangan

Anda baru saja memulai peran baru di FancyStore, Inc.

Tugas Anda adalah menangani situs e-commerce monolitik perusahaan yang sudah ada dan memecahnya menjadi serangkaian microservice yang terpisah secara logis. Kode monolit yang sudah ada ini terdapat di repositori GitHub, dan Anda diharapkan untuk memasukkan aplikasi ini ke dalam container, lalu melakukan refaktorisasi.

Anda diharapkan memiliki kemampuan dan pengetahuan untuk mengerjakan tugas-tugas berikut, jadi tidak akan ada panduan langkah demi langkah.

Anda diminta untuk memimpin project ini, setelah tim sebelumnya mengalami kelelahan setelah menangani aplikasi monolitik dan beralih lapangan pekerjaan (mereka sekarang mengelola kebun lavender). Anda akan ditugaskan untuk mengambil kode sumber, membangun container dari kode tersebut (salah satu petani bunga tadi meninggalkan Dockerfile untuk Anda), lalu mengirimnya ke GKE.

Anda harus membuat, men-deploy, dan menguji Monolit ini terlebih dahulu, untuk memastikan kode sumbernya berfungsi dengan baik. Setelah itu, Anda harus memisahkan layanan dasar ini menjadi deployment microservice-nya masing-masing.

Beberapa standar FancyStore, Inc. yang harus diikuti adalah sebagai berikut:

  • Buat cluster Anda di .
  • Penamaan biasanya mengikuti format team-resource. Misalnya, sebuah instance dapat diberi nama fancystore-orderservice1.
  • Alokasikan ukuran resource yang hemat biaya. Perlu diperhatikan, semua project selalu dipantau dan penggunaan resource secara berlebihan akan mengakibatkan penghentian project yang terkait.
  • Gunakan jenis mesin e2-medium, kecuali diarahkan lain.

Tantangan Anda

Begitu Anda duduk di meja kerja dan membuka laptop, Anda menerima permintaan berikut untuk menyelesaikan tugas ini. Semoga berhasil!

Tugas 1. Mendownload kode monolit dan membangun container

  1. Login ke project baru Anda dan aktifkan Cloud Shell.

  2. Pertama-tama, Anda perlu membuat clone repositori git tim Anda. Skrip setup.sh tersedia di direktori root project yang perlu Anda jalankan untuk membangun container monolit.

  3. Setelah menjalankan skrip setup.sh, jalankan perintah berikut untuk memastikan Cloud Shell Anda menjalankan nodeJS versi terbaru:

nvm install --lts

Ada beberapa project berbeda yang dapat dibangun dan dikirim.

  1. Kirim build monolit (yang terletak di direktori monolith) ke Artifact Registry. Ada Dockerfile yang terletak di folder ~/monotlith-to-microservices/monolith yang dapat Anda gunakan untuk membangun container aplikasi.

  2. Anda perlu menjalankan Cloud Build (di folder monolit tersebut) untuk membangunnya, lalu mengirimnya ke Artifact Registry.

  3. Beri nama artefak sebagai berikut:

    • Repo: gcr.io/${GOOGLE_CLOUD_PROJECT}
    • Image name:
    • Image version: 1.0.0

Klik Periksa progres saya untuk memverifikasi tujuan. Mendownload kode monolit dan membangun container

Tugas 2. Membuat cluster kubernetes dan men-deploy aplikasi

Setelah image dibuat dan Anda berada di Artifact Registry, sekarang saatnya membuat cluster untuk men-deploy-nya.

Anda diminta untuk men-deploy semua resource di zona , jadi pertama-tama Anda perlu membuat cluster GKE untuk zona tersebut. Mulailah dengan cluster 3 node.

  1. Buat cluster Anda sebagai berikut:

    • Cluster name:
    • Region:
    • Node count: 3

Setelah image dibuat dan cluster Anda aktif dan berjalan, saatnya men-deploy aplikasi.

Anda perlu men-deploy image yang telah dibuat ke cluster Anda. Tindakan ini akan membuat aplikasi aktif dan berjalan, tetapi tidak dapat diakses hingga Anda mengeksposnya ke dunia luar. Tim Anda telah memberi tahu bahwa aplikasi berjalan di port 8080, tetapi Anda perlu mengeksposnya di port 80 yang lebih ramah konsumen.

  1. Buat dan ekspos deployment Anda sebagai berikut:

    • Cluster name:
    • Container name:
    • Container version: 1.0.0
    • Application port: 8080
    • Externally accessible port: 80
Catatan: Untuk tujuan lab ini, eksposur layanan telah disederhanakan. Biasanya, gateway API digunakan untuk mengamankan endpoint publik. Pelajari lebih lanjut praktik terbaik dalam artikel Panduan Praktik terbaik untuk microservice.
  1. Catat alamat IP yang ditetapkan dalam operasi deployment yang diekspos. Sekarang Anda seharusnya dapat mengunjungi alamat IP ini dari browser Anda.

Anda akan melihat hasil berikut:

Halaman web Fancy Store

Klik Periksa progres saya untuk memverifikasi tujuan. Membuat cluster kubernetes dan men-deploy aplikasi

Setelah Anda dapat membangun dan men-deploy aplikasi monolitik Fancy Store, Anda siap untuk mulai memecahnya menjadi microservice.

Memigrasikan monolit ke microservice

Setelah situs monolitik yang ada berjalan di GKE, Anda dapat mulai memecah setiap layanan menjadi microservice. Biasanya, upaya perencanaan harus dilakukan untuk menentukan layanan mana yang akan dipecah menjadi bagian yang lebih kecil. Ini umumnya terkait bagian tertentu dari aplikasi, misalnya domain bisnis.

Untuk tujuan Tantangan ini, mari kita lompati beberapa langkah dan anggap Anda telah berhasil memecah monolit ke dalam serangkaian microservice: Orders, Products, dan Frontend. Kode Anda sudah siap, dan sekarang waktunya men-deploy layanan Anda.

Tugas 3. Membuat microservice baru

Ada tiga layanan yang perlu dipecahkan ke dalam container masing-masing. Karena Anda memindahkan semua layanan ke dalam container, Anda perlu melacak informasi berikut untuk tiap layanan:

  • Folder root layanan (tempat Anda akan membangun container)
  • Repositori tempat Anda akan mengupload container
  • Nama & versi artefak container

Membuat versi microservice dalam container

Serangkaian layanan yang perlu dimasukkan ke dalam container adalah sebagai berikut.

  1. Buka root sumber yang disebutkan di bawah, lalu upload artefak yang dibuat ke Artifact Registry dengan metadata yang ditunjukkan:

Microservice Orders

Service root folder: ~/monolith-to-microservices/microservices/src/orders

GCR Repo: gcr.io/${GOOGLE_CLOUD_PROJECT}

Image name:

Image version: 1.0.0

Microservice Products

Service root folder: ~/monolith-to-microservices/microservices/src/products

GCR Repo: gcr.io/${GOOGLE_CLOUD_PROJECT}

Image name:

Image version: 1.0.0

  1. Setelah microservice ini dimasukkan ke dalam container, dan image-nya diupload ke Artifact Registry, deploy dan mengekspos layanan tersebut.

Klik Periksa progres saya untuk memverifikasi tujuan. Membuat versi Microservice pesanan dan produk dalam container

Tugas 4. Men-deploy microservice baru

Deploy container baru ini dengan mengikuti proses yang sama seperti yang Anda ikuti untuk monolit . Perhatikan bahwa layanan ini akan memproses pada port yang berbeda, jadi catat pemetaan port dalam tabel di bawah.

  1. Buat dan ekspos deployment Anda sebagai berikut:

Microservice Orders

Cluster name:

Container name:

Container version: 1.0.0

Application port: 8081

Externally accessible port: 80

Microservice Products

Cluster name:

Container name:

Container version: 1.0.0

Application port: 8082

Externally accessible port: 80

Catatan: Catat alamat IP layanan Orders dan Products setelah keduanya diekspos, karena Anda akan memerlukannya di langkah berikutnya.
  1. Anda dapat memverifikasi bahwa deployment berhasil dan layanan telah diekspos dengan membuka URL berikut di browser:

    • http://ORDERS_EXTERNAL_IP/api/orders
    • http://PRODUCTS_EXTERNAL_IP/api/products

Jika deployment berhasil, tiap layanan akan menampilkan string JSON.

Klik Periksa progres saya untuk memverifikasi tujuan. Men-deploy microservice baru

Tugas 5. Mengonfigurasi dan men-deploy microservice Frontend

Setelah mengekstrak microservice Orders dan Products, Anda perlu mengonfigurasi layanan Frontend agar mengarah ke microservice tersebut, lalu men-deploy-nya.

Mengonfigurasi Ulang Frontend

  1. Gunakan editor nano untuk mengganti URL lokal dengan alamat IP dari microservice Products yang baru:
cd ~/monolith-to-microservices/react-app nano .env

Saat editor terbuka, file Anda akan terlihat seperti berikut.

Output:

REACT_APP_ORDERS_URL=http://localhost:8081/api/orders REACT_APP_PRODUCTS_URL=http://localhost:8082/api/products
  1. Ganti REACT_APP_PRODUCTS_URL ke format baru sambil menggantinya dengan alamat IP microservice Orders dan Product agar sesuai dengan yang berikut:
REACT_APP_ORDERS_URL=http://<ORDERS_IP_ADDRESS>/api/orders REACT_APP_PRODUCTS_URL=http://<PRODUCTS_IP_ADDRESS>/api/products
  1. Tekan CTRL+O, ENTER, lalu CTRL+X untuk menyimpan file di editor nano.

  2. Sekarang, jalankan perintah berikut untuk membangun ulang aplikasi frontend sebelum memasukannya ke dalam container:

npm run build

Tugas 6. Membuat versi microservice Frontend dalam container

Dengan microservice Orders dan Products yang kini berada dalam container dan di-deploy, serta layanan Frontend yang dikonfigurasi untuk mengarah ke keduanya, langkah terakhir adalah memasukkan Frontend ke dalam container dan men-deploy-nya.

Gunakan Cloud Build untuk mengemas konten layanan Frontend dan mengirimkannya ke Artifact Registry, sebagai berikut:

  • Service root folder: ~/monolith-to-microservices/microservices/src/frontend
  • Repo: gcr.io/${GOOGLE_CLOUD_PROJECT}
  • Image name:
  • Image version: 1.0.0

Proses ini mungkin memerlukan waktu beberapa menit, jadi bersabarlah.

Klik Periksa progres saya untuk memverifikasi tujuan. Membuat versi microservice Frontend dalam container

Tugas 7. Men-deploy microservice Frontend

Deploy container ini dengan mengikuti proses yang sama seperti yang Anda ikuti untuk microservice "Orders" dan "Products".

  1. Buat dan ekspos deployment Anda sebagai berikut:

    • Cluster name:
    • Container name:
    • Container version: 1.0.0
    • Application port: 8080
    • Externally accessible port: 80
  2. Anda dapat memverifikasi bahwa deployment berhasil dan microservice telah diekspos dengan benar dengan mengakses alamat IP layanan frontend berikut di browser Anda:?.

Anda akan melihat halaman beranda Fancy Store, dengan link ke halaman Products dan Orders yang didukung oleh microservice baru Anda.

Klik Periksa progres saya untuk memverifikasi tujuan. Men-deploy microservice Frontend

Selamat!

Build_a_Website_on_Google_Cloud_Skill_WBG.png

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 10 Maret 2026

Lab Terakhir Diuji pada 10 Maret 2026

Hak cipta 2026 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.

Sebelum memulai

  1. Lab membuat project dan resource Google Cloud untuk jangka waktu tertentu
  2. Lab memiliki batas waktu dan tidak memiliki fitur jeda. Jika lab diakhiri, Anda harus memulainya lagi dari awal.
  3. Di kiri atas layar, klik Start lab untuk memulai

Gunakan penjelajahan rahasia

  1. Salin Nama Pengguna dan Sandi yang diberikan untuk lab tersebut
  2. Klik Open console dalam mode pribadi

Login ke Konsol

  1. Login menggunakan kredensial lab Anda. Menggunakan kredensial lain mungkin menyebabkan error atau dikenai biaya.
  2. Setujui persyaratan, dan lewati halaman resource pemulihan
  3. Jangan klik End lab kecuali jika Anda sudah menyelesaikan lab atau ingin mengulanginya, karena tindakan ini akan menghapus pekerjaan Anda dan menghapus project

Konten ini tidak tersedia untuk saat ini

Kami akan memberi tahu Anda melalui email saat konten tersedia

Bagus!

Kami akan menghubungi Anda melalui email saat konten tersedia

Satu lab dalam satu waktu

Konfirmasi untuk mengakhiri semua lab yang ada dan memulai lab ini

Gunakan penjelajahan rahasia untuk menjalankan lab

Menggunakan jendela Samaran atau browser pribadi adalah cara terbaik untuk menjalankan lab ini. Langkah ini akan mencegah konflik antara akun pribadi Anda dan akun Siswa, yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.