arrow_back

Perform Foundational Infrastructure Tasks in Google Cloud: Challenge Lab

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

Perform Foundational Infrastructure Tasks in Google Cloud: Challenge Lab

Lab 1 jam 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

GSP315

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 misi 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 mendaftar di Quest Perform Foundational Infrastructure Tasks in Google Cloud di Google Cloud Skills Boost. Apakah Anda siap menghadapi tantangan ini?

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.

Skenario tantangan

Anda baru saja mendapatkan peran sebagai junior cloud engineer di Jooli inc. Sejauh ini, Anda telah membantu tim membuat dan mengelola resource Google Cloud.

Anda diharuskan memiliki keterampilan dan pengetahuan untuk menyelesaikan tugas ini, jadi tidak akan ada panduan langkah demi langkah.

Tantangan Anda

Sekarang Anda diminta membantu tim pengembangan yang baru dibentuk dengan beberapa tugas awal di project baru seputar menyimpan dan mengatur foto, yang disebut project kenangan. Anda telah diminta untuk membantu tim project kenangan dengan konfigurasi awal untuk lingkungan pengembangan aplikasi; Anda menerima permintaan untuk menyelesaikan tugas-tugas berikut:

  • Membuat bucket untuk menyimpan foto.
  • Membuat topik Pub/Sub yang akan digunakan oleh Cloud Function yang Anda buat.
  • Membuat Cloud Function.
  • Menghapus akses cloud engineer sebelumnya dari project kenangan.

Beberapa standar Jooli Inc. yang harus diikuti:

  • Membuat semua resource di region dan zona , kecuali jika ada arahan lain.
  • Menggunakan VPC project.
  • Pemberian nama mengikuti format tim-resource. Misalnya, suatu instance dapat diberi nama kraken-webserver1
  • Mengalokasikan ukuran resource yang hemat biaya. Perlu diperhatikan, semua project selalu dipantau dan penggunaan resource secara berlebihan akan mengakibatkan penghentian project yang terkait (dan kemungkinan project Anda). Ini adalah satu-satunya panduan dari tim pemantauan: kecuali jika ada arahan lain, gunakan e2-micro untuk VM Linux kecil dan e2-medium untuk Windows atau aplikasi lainnya, seperti node Kubernetes.

Setiap tugas dijelaskan secara mendetail di bawah ini. Semoga berhasil!

Tugas 1. Membuat bucket

Anda harus membuat bucket bernama untuk penyimpanan foto. Pastikan resource dibuat di region dan zona .

Klik Check my progress untuk memverifikasi tujuan. Membuat bucket bernama

Tugas 2. Membuat topik Pub/Sub

Buat topik Pub/Sub bernama untuk Cloud Function guna mengirim pesan.

Klik Periksa progres saya untuk memverifikasi tujuan. Membuat topik Pub/Sub bernama

Tugas 3. Membuat Cloud Function untuk menghasilkan thumbnail

Buat Cloud Function yang akan menghasilkan thumbnail dari gambar yang ditambahkan ke bucket . Pastikan Cloud Function menggunakan lingkungan Generasi ke-2. Pastikan resource dibuat di region dan zona .

  1. Membuat Cloud Function bernama
Catatan: Cloud Function perlu dijalankan setiap kali objek dibuat di bucket yang telah dibuat di Tugas 1. Selama proses ini, Cloud Function mungkin akan meminta izin Anda untuk mengaktifkan API. Aktifkan tiap API yang diperlukan jika diminta.
  1. Pastikan Anda menetapkan Titik entri (Fungsi yang akan dieksekusi) ke dan Pemicu ke Cloud Storage.

  2. Tambahkan kode berikut ke index.js:

const functions = require('@google-cloud/functions-framework'); const crc32 = require("fast-crc32c"); const { Storage } = require('@google-cloud/storage'); const gcs = new Storage(); const { PubSub } = require('@google-cloud/pubsub'); const imagemagick = require("imagemagick-stream"); functions.cloudEvent('{{{ project_0.startup_script.function }}}', cloudEvent => { const event = cloudEvent.data; console.log(`Event: ${event}`); console.log(`Hello ${event.bucket}`); const fileName = event.name; const bucketName = event.bucket; const size = "64x64" const bucket = gcs.bucket(bucketName); const topicName = "{{{ project_0.startup_script.topic }}}"; const pubsub = new PubSub(); if ( fileName.search("64x64_thumbnail") == -1 ){ // doesn't have a thumbnail, get the filename extension var filename_split = fileName.split('.'); var filename_ext = filename_split[filename_split.length - 1]; var filename_without_ext = fileName.substring(0, fileName.length - filename_ext.length ); if (filename_ext.toLowerCase() == 'png' || filename_ext.toLowerCase() == 'jpg'){ // only support png and jpg at this point console.log(`Processing Original: gs://${bucketName}/${fileName}`); const gcsObject = bucket.file(fileName); let newFilename = filename_without_ext + size + '_thumbnail.' + filename_ext; let gcsNewObject = bucket.file(newFilename); let srcStream = gcsObject.createReadStream(); let dstStream = gcsNewObject.createWriteStream(); let resize = imagemagick().resize(size).quality(90); srcStream.pipe(resize).pipe(dstStream); return new Promise((resolve, reject) => { dstStream .on("error", (err) => { console.log(`Error: ${err}`); reject(err); }) .on("finish", () => { console.log(`Success: ${fileName} → ${newFilename}`); // set the content-type gcsNewObject.setMetadata( { contentType: 'image/'+ filename_ext.toLowerCase() }, function(err, apiResponse) {}); pubsub .topic(topicName) .publisher() .publish(Buffer.from(newFilename)) .then(messageId => { console.log(`Message ${messageId} published.`); }) .catch(err => { console.error('ERROR:', err); }); }); }); } else { console.log(`gs://${bucketName}/${fileName} is not an image I can handle`); } } else { console.log(`gs://${bucketName}/${fileName} already has a thumbnail`); } });
  1. Tambahkan kode berikut ke package.json:
{ "name": "thumbnails", "version": "1.0.0", "description": "Create Thumbnail of uploaded image", "scripts": { "start": "node index.js" }, "dependencies": { "@google-cloud/functions-framework": "^3.0.0", "@google-cloud/pubsub": "^2.0.0", "@google-cloud/storage": "^5.0.0", "fast-crc32c": "1.0.4", "imagemagick-stream": "4.1.1" }, "devDependencies": {}, "engines": { "node": ">=4.3.2" } }

Pastikan thumbnail telah berhasil dibuat.

Klik Check my progress untuk memverifikasi tujuan. Memverifikasi Cloud Function

Tugas 4. Menguji Infrastruktur

Anda harus mengupload satu gambar berformat JPG atau PNG ke dalam bucket

  1. Upload gambar berformat PNG atau JPG ke dalam bucket .
Catatan: Sebagai alternatif, download gambar ini https://storage.googleapis.com/cloud-training/gsp315/map.jpg ke mesin Anda. Lalu upload gambar tersebut ke dalam bucket.
  1. Setelah itu, gambar thumbnail akan segera ditampilkan (gunakan REFRESH dalam detail bucket).

Tugas 5. Menghapus cloud engineer sebelumnya

Anda akan melihat bahwa ada dua pengguna yang ditentukan di dalam project.

  • Yang satu adalah akun Anda ( dengan peran Pemilik).
  • Satunya lagi adalah akun cloud engineer sebelumnya ( dengan peran Viewer).
  1. Hapus akses cloud engineer sebelumnya dari project.

Klik Check my progress untuk memverifikasi tujuan. Menghapus cloud engineer sebelumnya

Selamat!

Badge keahlian Perform Foundational Infrastructure Tasks in Google Cloud

Mendapatkan badge keahlian Anda berikutnya

Lab mandiri ini adalah bagian dari Quest badge keahlian Perform Foundational Infrastructure Tasks in Google Cloud. Dengan menyelesaikan Quest badge keahlian ini, Anda akan mendapatkan badge di atas sebagai pengakuan atas pencapaian Anda. Bagikan badge di resume atau platform media sosial Anda, dan umumkan pencapaian Anda menggunakan hashtag #GoogleCloudBadge.

Quest keahlian ini adalah bagian dari jalur pembelajaran Perform Foundational Infrastructure Tasks in Google Cloud dan Cloud Architect. Jika Anda sudah menyelesaikan Quest badge keahlian lain di jalur pembelajaran Anda, telusuri katalog Google Cloud Skills Boost untuk melihat lebih dari 20 Quest badge keahlian lainnya yang dapat Anda ikuti.

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 19 September 2023

Lab Terakhir Diuji pada 19 September 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.