arrow_back

Cloud Functions: Qwik Start - Command Line

Gabung Login
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Cloud Functions: Qwik Start - Command Line

Lab 30 menit universal_currency_alt 1 Kredit show_chart Pengantar
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP080

Lab Mandiri Google Cloud

Ringkasan

Fungsi cloud merupakan sebuah kode pendek yang dijalankan untuk merespons sebuah peristiwa, misalnya permintaan HTTP, pesan dari layanan pesan, atau upload file. Peristiwa cloud adalah hal-hal yang terjadi di lingkungan cloud Anda. Hal-hal tersebut dapat berupa perubahan data dalam database, file yang ditambahkan ke sistem penyimpanan, atau instance virtual machine baru yang dibuat.

Karena dijalankan berdasarkan peristiwa, fungsi cloud hanya dijalankan saat sesuatu terjadi. Hal ini menjadikan fungsi cloud sebagai pilihan bagus untuk tugas-tugas yang harus dikerjakan dengan cepat atau yang tidak perlu dijalankan sepanjang waktu.

Sebagai contoh, Anda dapat menggunakan fungsi cloud untuk:

  • membuat thumbnail secara otomatis untuk gambar yang diupload ke Cloud Storage.
  • mengirimkan notifikasi ke telepon pengguna ketika ada pesan baru diterima di Cloud Pub/Sub.
  • memproses data dari database Cloud Firestore dan membuat laporan.

Anda dapat menulis kode dalam bahasa apa pun yang mendukung Node.js, dan Anda dapat men-deploy kode ke cloud hanya dengan beberapa klik. Setelah fungsi cloud Anda di-deploy, fungsi tersebut secara otomatis akan mulai dijalankan saat merespons peristiwa.

Lab praktik ini menunjukkan kepada Anda cara membuat, men-deploy, dan menguji fungsi cloud menggunakan Konsol Google Cloud.

Lab praktik ini menunjukkan kepada Anda cara membuat, men-deploy, dan menguji fungsi cloud menggunakan command line Google Cloud Shell.

Yang akan Anda lakukan

  • Membuat fungsi cloud sederhana
  • Men-deploy dan menguji fungsi
  • Melihat log

Penyiapan

Sebelum mengklik tombol Mulai 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 praktik ini dapat Anda gunakan untuk melakukan sendiri 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 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: Jika Anda sudah memiliki project atau akun pribadi Google Cloud, jangan menggunakannya untuk lab ini agar terhindar dari tagihan ekstra pada akun Anda.

Cara memulai lab dan login ke Google Cloud Console

  1. Klik tombol Start Lab. Jika Anda perlu membayar lab, jendela pop-up akan terbuka untuk memilih metode pembayaran. Di sebelah kiri adalah panel Lab Details dengan berikut ini:

    • Tombol Open Google Console
    • Waktu tersisa
    • Kredensial sementara yang harus Anda gunakan untuk lab ini
    • Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
  2. Klik Open Google Console. Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Login.

    Tips: Atur tab di jendela terpisah secara berdampingan.

    Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
  3. Jika perlu, salin Username dari panel Lab Details dan tempel ke dialog Sign in. Klik Next.

  4. Salin Password dari panel Lab Details dan tempel ke dialog Welcome. Klik Next.

    Penting: Anda harus menggunakan kredensial dari panel sebelah kiri. Jangan menggunakan kredensial Google Cloud Skills Boost. Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
  5. Klik halaman berikutnya:

    • Setujui persyaratan dan ketentuan.
    • Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
    • Jangan daftar uji coba gratis.

Setelah beberapa saat, Cloud Console akan terbuka di tab ini.

Catatan: Anda dapat melihat menu dengan daftar Produk dan Layanan Google Cloud dengan mengklik Menu navigasi di kiri atas. Ikon menu navigasi

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.

  1. Klik Activate Cloud Shell Ikon Activate Cloud Shell di bagian atas konsol Google Cloud.

Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke PROJECT_ID Anda. Output berisi baris yang mendeklarasikan PROJECT_ID untuk sesi ini:

Project Cloud Platform Anda dalam sesi ini disetel ke YOUR_PROJECT_ID

gcloud adalah alat command line untuk Google Cloud. Alat ini sudah terinstal di Cloud Shell dan mendukung pelengkapan command line.

  1. (Opsional) Anda dapat menampilkan daftar nama akun yang aktif dengan perintah ini:
gcloud auth list
  1. Klik Authorize.

  2. Output Anda sekarang akan terlihat seperti ini:

Output:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net Untuk menyetel akun aktif, jalankan: $ gcloud config set account `ACCOUNT`
  1. (Opsional) Anda dapat menampilkan daftar project ID dengan perintah ini:
gcloud config list project

Output:

[core] project = <project_ID>

Contoh output:

[core] project = qwiklabs-gcp-44776a13dea667a6 Catatan: Untuk mendapatkan dokumentasi gcloud yang lengkap di Google Cloud, baca panduan ringkasan gcloud CLI.

Tugas 1. Membuat fungsi

Pertama, Anda akan membuat fungsi sederhana bernama helloWorld. Fungsi ini menulis pesan ke log Cloud Functions. Fungsi ini dipicu oleh peristiwa cloud function dan menerima fungsi callback yang digunakan untuk menandakan penyelesaian fungsi tersebut.

Untuk lab ini, peristiwa fungsi cloud-nya adalah peristiwa topik cloud pub/sub. Pub/sub adalah layanan pesan yang memisahkan pengirim pesan dari penerima pesan. Saat pesan dikirim atau diposting, langganan diperlukan agar penerima pesan dapat memperoleh pemberitahuan dan menerima pesan tersebut. Untuk mempelajari pub/sub lebih lanjut, di dalam Panduan Cloud Pub/Sub, lihat Google Cloud Pub/Sub: Layanan Pesan dengan Skala Google.

Untuk mempelajari parameter peristiwa dan parameter callback lebih lanjut, di dalam Dokumentasi Cloud Functions, lihat Fungsi Latar Belakang.

Untuk membuat fungsi cloud:

  1. Di Cloud Shell, jalankan perintah berikut untuk menetapkan region default:
gcloud config set compute/region {{{project_0.default_region |REGION}}}
  1. Buat direktori untuk kode fungsi:
mkdir gcf_hello_world
  1. Pindah ke direktori gcf_hello_world:
cd gcf_hello_world
  1. Buat dan buka index.js untuk mengedit:
nano index.js
  1. Salin kode berikut ke file index.js:
/** * Background Cloud Function to be triggered by Pub/Sub. * This function is exported by index.js, and executed when * the trigger topic receives a message. * * @param {object} data The event payload. * @param {object} context The event metadata. */ exports.helloWorld = (data, context) => { const pubSubMessage = data; const name = pubSubMessage.data ? Buffer.from(pubSubMessage.data, 'base64').toString() : "Hello World"; console.log(`My Cloud Function: ${name}`); };
  1. Keluar dari nano (Ctrl+x) dan simpan (Y) file tersebut.

Tugas 2. Membuat bucket Cloud Storage

  • Gunakan perintah berikut untuk membuat bucket Cloud Storage baru bagi fungsi Anda:
gsutil mb -p [PROJECT_ID] gs://[BUCKET_NAME]
  • PROJECT_ID adalah ID Project di panel detail lab di sisi kiri lab ini:

  • BUCKET_NAME adalah nama yang Anda berikan pada bucket. Anda dapat menggunakan ID Project sebagai nama bucket untuk memastikan nama yang unik secara global:

Untuk mempelajari penamaan bucket lebih lanjut, di dalam Dokumentasi Cloud Storage, lihat Panduan penamaan bucket.

Menguji Tugas yang Telah Diselesaikan

Klik Check my progress untuk memverifikasi tugas yang telah dijalankan. Jika berhasil menyelesaikan tugas, Anda akan diberi skor penilaian.

Membuat bucket Cloud Storage.

Tugas 3. Men-deploy fungsi

Ketika men-deploy fungsi baru, Anda harus menentukan --trigger-topic, --trigger-bucket, atau --trigger-http. Saat update di-deploy ke fungsi yang ada, fungsi tersebut akan menyimpan pemicu yang ada kecuali jika ditentukan lain.

Untuk lab ini, Anda akan menetapkan --trigger-topic sebagai hello_world.

  1. Deploy fungsi ini ke topik pub/sub yang bernama hello_world, dan ganti [BUCKET_NAME] dengan nama bucket Anda:
gcloud functions deploy helloWorld \ --stage-bucket [BUCKET_NAME] \ --trigger-topic hello_world \ --runtime nodejs20 Catatan: Jika Anda menerima OperationError, abaikan peringatan dan jalankan kembali perintah tersebut.

Jika diminta, masukkan Y untuk mengizinkan pemanggilan fungsi baru yang tidak diautentikasi.

  1. Verifikasi status fungsi tersebut:
gcloud functions describe helloWorld

Status ACTIVE menunjukkan bahwa fungsi telah di-deploy.

entryPoint: helloWorld eventTrigger: eventType: providers/cloud.pubsub/eventTypes/topic.publish failurePolicy: {} resource: ... status: ACTIVE ...

Setiap pesan yang dipublikasikan dalam topik akan memicu eksekusi fungsi. Isi pesan tersebut kemudian diteruskan sebagai data input.

Menguji Tugas yang Telah Diselesaikan

Klik Check my progress untuk memverifikasi tugas yang telah dijalankan. Jika berhasil menyelesaikan tugas, Anda akan menerima skor penilaian.

Men-deploy fungsi.

Tugas 4. Menguji fungsi

Setelah Anda men-deploy fungsi dan mengetahui bahwa ia aktif, uji apakah fungsi tersebut menulis pesan ke log cloud setelah mendeteksi suatu peristiwa.

  • Masukkan perintah berikut guna membuat pengujian pesan untuk fungsi tersebut:
DATA=$(printf 'Hello World!'|base64) && gcloud functions call helloWorld --data '{"data":"'$DATA'"}'

Alat cloud akan menampilkan ID eksekusi untuk fungsi tersebut, yang berarti pesan telah ditulis dalam log.

Contoh output:

executionId: 3zmhpf7l6j5b

Lihat log untuk mengonfirmasi bahwa ada pesan log dengan ID eksekusi tersebut.

Tugas 5. Melihat log

  • Periksa log untuk melihat pesan Anda dalam histori log:
gcloud functions logs read helloWorld

Jika fungsi berhasil dieksekusi, pesan dalam log akan muncul seperti berikut:

LEVEL: D NAME: helloWorld EXECUTION_ID: 4bgl3jw2a9i3 TIME_UTC: 2023-03-23 13:45:31.545 LOG: Function execution took 912 ms, finished with status: 'ok' LEVEL: I NAME: helloWorld EXECUTION_ID: 4bgl3jw2a9i3 TIME_UTC: 2023-03-23 13:45:31.533 LOG: My Cloud Function: Hello World! LEVEL: D NAME: helloWorld EXECUTION_ID: 4bgl3jw2a9i3 TIME_UTC: 2023-03-23 13:45:30.633 LOG: Function execution started Catatan: Log akan membutuhkan waktu sekitar 10 menit untuk muncul. Cara alternatif untuk melihat log adalah dengan membuka Logging > Logs Explorer.

Aplikasi Anda telah di-deploy, diuji, dan Anda dapat melihat log-nya.

Tugas 6. Menguji pemahaman Anda

Di bawah ini terdapat beberapa pertanyaan pilihan ganda untuk memperkuat pemahaman Anda tentang konsep lab ini. Jawab pertanyaan tersebut sebaik mungkin.

Selamat!

Selesaikan Quest

Lab mandiri ini merupakan bagian dari quest Baseline: Deploy & Develop, Baseline: Infrastructure, dan Optimizing your Google Cloud Costs. Quest adalah serangkaian lab terkait yang membentuk jalur pembelajaran. Dengan menyelesaikan quest ini, Anda mendapatkan badge sebagai pengakuan atas pencapaian Anda. Anda dapat memperlihatkan badge atau beberapa badge kepada publik dan menautkannya di resume online atau akun media sosial Anda. Daftarkan diri Anda dalam Quest apa pun yang berisi lab ini dan segera dapatkan kredit penyelesaian. Lihat Katalog Google Cloud Skills Boostuntuk melihat semua Quest yang tersedia.

Mengikuti lab berikutnya

Lab ini juga merupakan bagian dari rangkaian lab yang disebut Qwik Start. Lab ini dirancang agar Anda dapat mencoba berbagai fitur yang tersedia dengan Google Cloud. Telusuri "Qwik Start" di katalog lab untuk menemukan lab berikutnya yang ingin Anda ikuti.

Langkah berikutnya/Pelajari lebih lanjut

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 Agustus 2023

Lab Terakhir Diuji pada 10 Agustus 2023

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