ARC109

Ringkasan
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.
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.
Skenario tantangan
Anda baru saja memulai peran sebagai analis data junior. Sejauh ini, Anda telah membantu tim membuat, mengelola, dan mengakses resource data backend.
Anda diharapkan memiliki keterampilan dan pengetahuan untuk tugas seperti ini.
Tantangan Anda
Anda diminta membantu tim pengembangan yang baru dibentuk untuk mengerjakan beberapa tugas awal dalam project baru seputar mengekspos layanan backend sebagai API. Anda telah diminta untuk membantu tim dalam upaya mereka menggunakan API Gateway, dan Anda menerima permintaan untuk menyelesaikan tugas-tugas berikut:
- Mengembangkan sistem backend menggunakan fungsi Cloud Run.
- Men-deploy dan mengelola API yang mengekspos layanan backend dengan gateway yang terkelola sepenuhnya.
- Berlangganan pesan yang dipublikasikan di topik Pub/Sub untuk bereaksi terhadap peristiwa.
Setiap tugas dijelaskan di bawah ini. Semoga berhasil!
Tugas 1. Membuat fungsi Cloud Run
Catatan: Cloud Run Functions (generasi ke-2) bergantung pada Cloud Run Admin API. Cloud Run Admin API telah diaktifkan untuk Anda di awal lab ini. Namun, mungkin perlu waktu beberapa menit agar semua layanan yang diaktifkan dapat diterapkan. Jika Anda mengalami masalah saat men-deploy Cloud Run Function, tunggu beberapa menit lalu coba lagi.
Buat fungsi Cloud Run baru (generasi ke-2
) bernama gcfunction
di region menggunakan Node.js 22
dan mengizinkan pemanggilan tanpa autentikasi. Untuk saat ini, cukup buat fungsi menampilkan "Halo Dunia!" saat dipanggil.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat fungsi Cloud Run.
Tugas 2. Membuat Gateway API
Setelah fungsi Cloud Run di-deploy, konfigurasi API Gateway untuk memproksi permintaan ke backend.
Buat file bernama openapispec.yaml
(menggunakan kode di bawah), yang mereferensikan fungsi Cloud Run yang di-deploy di Tugas 1.
Gunakan openapispec.yaml
saat men-deploy API Gateway dengan properti berikut:
Nama |
Nilai |
Nama Tampilan |
API gcfunction (jika diminta) |
ID API |
gcfunction-api |
Pilih akun layanan |
Akun layanan default Compute Engine |
Lokasi |
|
Nama Konfigurasi |
gcfunction-api |
swagger: '2.0'
info:
title: gcfunction API
description: Sample API on API Gateway with a Google Cloud Run functions backend
version: 1.0.0
schemes:
- https
produces:
- application/json
x-google-backend:
address: https://gcfunction-{{{ project_0.startup_script.project_number | PROJECT_NUMBER }}}.{{{project_0.default_region | REGION}}}.run.app
paths:
/gcfunction:
get:
summary: gcfunction
operationId: gcfunction
responses:
'200':
description: A successful response
schema:
type: string
Catatan: Operasi Create Gateway akan memerlukan waktu beberapa menit (~10 menit) untuk diselesaikan. Untuk memeriksa status proses pembuatan dan deployment, Anda dapat mengklik ikon Notifikasi (ikon lonceng) di menu navigasi utama atas untuk menampilkan notifikasi status. Pastikan status ikon untuk Creating gateway "gcfunction API" memiliki tanda centang hijau di sampingnya sebelum melanjutkan.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat Gateway API.
Tugas 3. Membuat Topik Pub/Sub dan Memublikasikan Pesan melalui Backend API
Tim pengembangan ingin backend API memublikasikan pesan ke topik Pub/Sub baru bernama demo-topic
.
Buat topik Pub/Sub baru (demo-topic
) dan kirim pesan ke topik tersebut di fungsi Cloud Run yang di-deploy sebelumnya. Pastikan opsi untuk membuat langganan default tetap diaktifkan saat membuat topik.
Gunakan cuplikan di bawah untuk mengupdate file package.json
dan kode index.js
dalam fungsi Cloud Run yang di-deploy di Tugas 1.
package.json
{
"dependencies": {
"@google-cloud/functions-framework": "^3.0.0",
"@google-cloud/pubsub": "^3.4.1"
}
}
index.js
/**
* Responds to any HTTP request.
*
* @param {!express:Request} req HTTP request context.
* @param {!express:Response} res HTTP response context.
*/
const {PubSub} = require('@google-cloud/pubsub');
const pubsub = new PubSub();
const topic = pubsub.topic('demo-topic');
const functions = require('@google-cloud/functions-framework');
exports.helloHttp = functions.http('helloHttp', (req, res) => {
// Send a message to the topic
topic.publishMessage({data: Buffer.from('Hello from Cloud Run functions!')});
res.status(200).send("Message sent to Topic demo-topic!");
});
Deploy ulang fungsi Cloud Run setelah file index.js
dan package.json
diperbarui.
Selanjutnya, panggil fungsi Cloud Run melalui API Gateway. Jika dilakukan dengan benar, pesan akan dipublikasikan ke topik demo-topic
yang telah Anda buat dalam tugas ini.
Catatan: Diperlukan waktu beberapa menit (~5 menit) agar pesan yang dipublikasikan muncul di bagian Messages pada langganan setelah memanggil endpoint API Gateway.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat Topik Pub/Sub dan Memublikasikan Pesan melalui Backend API.
Selamat!
Anda telah menyelesaikan tantangan untuk men-deploy dan mengelola API yang mengekspos layanan backend dengan gateway yang terkelola sepenuhnya.
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 1 April 2025
Lab Terakhir Diuji pada 1 April 2025
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.