Create a Kubernetes cluster

Periksa progres saya

/ 20

Configure and Install Jenkins

Periksa progres saya

/ 20

Create the production and canary deployments

Periksa progres saya

/ 30

Build for the 'new-feature' branch

Periksa progres saya

/ 10

Deploying a canary release

Periksa progres saya

/ 10

Deploying to production

Periksa progres saya

/ 10

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.

Tugas 2. Menyediakan Jenkins

Buat cluster Kubernetes dan aktifkan Jenkins untuk mengakses layanan Google Cloud dan Google Artifact Registry.

Membuat cluster Kubernetes

  1. Sekarang, jalankan perintah berikut untuk menyediakan cluster Kubernetes:
gcloud container clusters create jenkins-cd \ --num-nodes 2 \ --machine-type e2-standard-2 \ --scopes "https://www.googleapis.com/auth/source.read_write,cloud-platform"

Langkah ini memerlukan waktu beberapa menit hingga selesai. Cakupan tambahan memungkinkan Jenkins mengakses layanan Google Cloud dan Google Artifact Registry.

Membuat cluster Kubernetes

  1. Sekarang, jalankan perintah berikut untuk menyediakan cluster Kubernetes:
gcloud container clusters create jenkins-cd \ --num-nodes 2 \ --machine-type e2-standard-2 \ --scopes "https://www.googleapis.com/auth/source.read_write,cloud-platform"

Langkah ini dapat membutuhkan waktu beberapa menit. Cakupan ekstra memungkinkan Jenkins mengakses layanan Google Cloud dan Google Artifact Registry.

Klik Periksa progres saya untuk memverifikasi tugas yang telah dijalankan. Jika cluster Kubernetes berhasil dibuat, Anda akan melihat skor penilaian.

Membuat cluster Kubernetes (zona: )
  1. Sebelum melanjutkan, konfirmasi bahwa cluster Anda berjalan dengan menjalankan perintah berikut:
gcloud container clusters list

Memberi kredensial untuk cluster

  1. Dapatkan kredensial untuk cluster Anda:
gcloud container clusters get-credentials jenkins-cd
  1. Kubernetes Engine menggunakan kredensial ini untuk mengakses cluster yang baru disediakan. Pastikan Anda dapat menghubungkannya dengan menjalankan perintah berikut:
kubectl cluster-info

Tugas 3. Menyiapkan Helm

Helm adalah pengelola paket yang memudahkan konfigurasi dan deployment aplikasi Kubernetes. Setelah menginstal Jenkins, Anda dapat menyiapkan pipeline CI/CD.

Dalam tugas ini, Anda akan menggunakan Helm untuk menginstal Jenkins dari repositori Chart.

  1. Tambahkan repositori chart stabil Helm:
helm repo add jenkins https://charts.jenkins.io
  1. Pastikan repo selalu terbaru:
helm repo update

Tugas 4. Menginstal dan mengonfigurasi Jenkins

Saat menginstal Jenkins, file values dapat digunakan sebagai template untuk memberikan nilai yang diperlukan untuk penyiapan.

Anda akan menggunakan file values kustom untuk secara otomatis mengonfigurasi Kubernetes Cloud dan menambahkan plugin yang diperlukan berikut:

  • Kubernetes:latest
  • Workflow-multibranch:latest
  • Git:latest
  • Configuration-as-code:latest
  • Google-oauth-plugin:latest
  • Google-source-plugin:latest
  • Google-storage-plugin:latest

Tindakan ini memungkinkan Jenkins terhubung ke cluster dan project Google Cloud Anda.

  1. Gunakan Helm CLI untuk men-deploy chart dengan setelan konfigurasi Anda:
helm install cd jenkins/jenkins -f jenkins/values.yaml --wait

Pemrosesan perintah ini dapat membutuhkan waktu beberapa menit.

Klik Periksa progres saya untuk memverifikasi tugas yang telah dijalankan. Jika chart Jenkins telah berhasil dikonfigurasi, Anda akan melihat skor penilaian.

Mengonfigurasi dan menginstal Jenkins
  1. Setelah pemrosesan perintah tersebut selesai, pastikan pod Jenkins beralih ke status Running dan container berada dalam status READY:
kubectl get pods

Contoh Output:

NAME READY STATUS RESTARTS AGE cd-jenkins-7c786475dd-vbhg4 2/2 Running 0 1m
  1. Konfigurasi akun layanan Jenkins agar dapat melakukan deployment ke cluster:
kubectl create clusterrolebinding jenkins-deploy --clusterrole=cluster-admin --serviceaccount=default:cd-jenkins

Anda akan menerima output berikut:

clusterrolebinding.rbac.authorization.k8s.io/jenkins-deploy created
  1. Jalankan perintah berikut untuk menyiapkan penerusan port ke UI Jenkins dari Cloud Shell:
export POD_NAME=$(kubectl get pods --namespace default -l "app.kubernetes.io/component=jenkins-master" -l "app.kubernetes.io/instance=cd" -o jsonpath="{.items[0].metadata.name}") kubectl port-forward $POD_NAME 8080:8080 >> /dev/null &
  1. Sekarang, pastikan Layanan Jenkins telah dibuat dengan benar:
kubectl get svc

Contoh Output:

NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE cd-jenkins 10.35.249.67 8080/TCP 3h cd-jenkins-agent 10.35.248.1 50000/TCP 3h kubernetes 10.35.240.1 443/TCP 9h

Anda akan menggunakan Plugin Kubernetes, sehingga node builder akan otomatis diluncurkan saat diperlukan jika master Jenkins memintanya. Setelah menyelesaikan tugasnya, node builder akan otomatis dinonaktifkan dan resource-nya akan ditambahkan kembali ke resource pool cluster.

Perhatikan bahwa layanan ini mengekspos port 8080, dan 50000 untuk tiap pod yang sesuai dengan selector. Tindakan ini akan mengekspos UI web Jenkins dan port registrasi builder/agen di dalam cluster Kubernetes. Selain itu, layanan jenkins-ui diekspos menggunakan ClusterIP sehingga tidak dapat diakses dari luar cluster.

Tugas 5. Terhubung ke Jenkins

Ambil sandi admin dan login ke antarmuka Jenkins.

  1. Chart Jenkins akan otomatis membuat sandi admin untuk Anda. Untuk mengambilnya, jalankan:
printf $(kubectl get secret cd-jenkins -o jsonpath="{.data.jenkins-admin-password}" | base64 --decode);echo
  1. Untuk membuka antarmuka pengguna Jenkins, di panel tindakan Cloud Shell, klik Web Preview (Ikon Web Preview) Preview on port 8080:

  2. Jika diminta, login dengan nama pengguna admin dan sandi yang dibuat otomatis.

Jenkins sekarang sudah selesai disiapkan di cluster Kubernetes Anda. Jenkins akan menggerakkan pipeline CI/CD otomatis Anda di bagian berikutnya.

Tugas 6. Memahami aplikasi

Dalam tugas ini, Anda akan men-deploy aplikasi contoh, gceme, di pipeline continuous deployment. Aplikasi ini ditulis dalam bahasa Go dan berada di direktori sample-app repo. Saat Anda menjalankan program biner gceme di instance Compute Engine, aplikasi akan menampilkan metadata instance dalam kartu info.

Aplikasi akan meniru microservice dengan mendukung dua mode operasi.

  • Di mode backend: gceme memproses port 8080, lalu menampilkan metadata instance Compute Engine dalam format JSON.
  • Di mode frontend: gceme mengkueri layanan gceme backend dan merender JSON yang dihasilkan di antarmuka pengguna.

diagram arsitektur gceme

Tugas 7. Men-deploy aplikasi

Deploy aplikasi ke dalam dua lingkungan berbeda:

  • Produksi: Situs live yang diakses oleh pengguna Anda.
  • Canary: Situs berkapasitas lebih kecil yang hanya menerima sebagian dari traffic pengguna Anda. Gunakan lingkungan ini untuk memvalidasi software dengan traffic live sebelum dirilis ke semua pengguna.
  1. Di Google Cloud Shell, buka direktori aplikasi contoh:
cd sample-app
  1. Buat namespace Kubernetes untuk mengisolasi deployment secara logis:
kubectl create ns production
  1. Buat deployment produksi dan canary, serta layanan menggunakan perintah kubectl apply:
kubectl apply -f k8s/production -n production kubectl apply -f k8s/canary -n production kubectl apply -f k8s/services -n production

Klik Periksa progres saya untuk memverifikasi tugas yang telah dijalankan. Jika deployment berhasil dibuat, Anda akan melihat skor penilaian.

Membuat deployment produksi dan canary

Secara default, hanya satu replika frontend yang di-deploy. Gunakan perintah kubectl scale untuk memastikan setidaknya ada 4 replika yang selalu berjalan.

  1. Tingkatkan skala frontend lingkungan produksi dengan menjalankan perintah berikut:
kubectl scale deployment gceme-frontend-production -n production --replicas 4
  1. Selanjutnya, konfirmasi bahwa ada 5 pod yang berjalan untuk frontend, yaitu 4 pod untuk traffic produksi dan 1 pod untuk rilis terbatas (perubahan pada rilis terbatas hanya memengaruhi 1 dari 5 (20%) pengguna):
kubectl get pods -n production -l app=gceme -l role=frontend
  1. Konfirmasi pula bahwa Anda memiliki 2 pod untuk backend, yaitu 1 pod untuk produksi dan 1 pod untuk canary:
kubectl get pods -n production -l app=gceme -l role=backend
  1. Ambil IP eksternal untuk layanan produksi:
kubectl get service gceme-frontend -n production Catatan: Perlu waktu beberapa menit sebelum Anda dapat melihat alamat IP eksternal load balancer.

Contoh Output:

NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE gceme-frontend LoadBalancer 10.79.241.131 104.196.110.46 80/TCP 5h

Tempel External IP ke browser untuk melihat kartu info yang ditampilkan di kartu. Anda akan mendapatkan halaman serupa berikut:

Backend yang melayani permintaan ini

  1. Sekarang, simpan IP load balancer layanan frontend di suatu variabel lingkungan untuk digunakan nanti:
export FRONTEND_SERVICE_IP=$(kubectl get -o jsonpath="{.status.loadBalancer.ingress[0].ip}" --namespace=production services gceme-frontend)
  1. Konfirmasi bahwa kedua layanan dapat berfungsi dengan membuka alamat IP eksternal frontend di browser Anda.

  2. Periksa output versi layanan dengan menjalankan perintah berikut (harus terbaca 1.0.0):

curl http://$FRONTEND_SERVICE_IP/version

Anda telah berhasil men-deploy aplikasi contoh. Selanjutnya, Anda akan menyiapkan pipeline untuk men-deploy perubahan Anda secara berkelanjutan dan andal.

Tugas 8. Membuat pipeline Jenkins

Dalam tugas ini, Anda menyiapkan repositori Git di server Git khusus dan membuat pipeline Jenkins:

  • Mendorong kode sumber aplikasi contoh ke server Git
  • Menambahkan kredensial akun layanan ke Jenkins
  • Mengonfigurasi Jenkins Cloud untuk Kubernetes
  • Membuat tugas Jenkins Multibranch Pipeline

Mendorong kode sumber aplikasi contoh ke server Git

  1. Di Cloud Shell, dapatkan alamat IP eksternal server Git Anda:
export GIT_SERVER_IP=$(gcloud compute instances describe git-server --zone={{{project_0.default_zone}}} --format='get(networkInterfaces[0].accessConfigs[0].natIP)') echo "Git Server IP: ${GIT_SERVER_IP}"
  1. Inisialisasi direktori sample-app sebagai repositori Git:
cd ~/continuous-deployment-on-kubernetes/sample-app git init git config --global user.email "student@qwiklabs.net" git config --global user.name "Student" git branch -m master
  1. Tambahkan repositori jarak jauh yang mengarah ke server Git mandiri Anda:
git remote add origin http://giteaadmin:GiteaPassword123@${GIT_SERVER_IP}:3000/giteaadmin/sample-app.git
  1. Tambahkan, commit, dan dorong file ke cabang master:
git add . git commit -m "Initial commit" git push -u origin master

Menambahkan kredensial akun layanan

Konfigurasikan kredensial Anda untuk mengizinkan Jenkins mengakses cluster dan men-deploy resource.

  1. Di antarmuka pengguna Jenkins, klik Manage Jenkins di panel kiri, lalu klik Credentials (di bawah Security).

  2. Di bagian Stores scoped to Jenkins, klik System.

Halaman Credentials

  1. Klik Global credentials (unrestricted).

  2. Klik Add Credentials.

  3. Untuk Kind, pilih Google Service Account from metadata dan klik Next.

  4. Di kolom ID, masukkan Project ID Anda () lalu klik Create.

Catatan: Project ID Anda dapat ditemukan di panel DETAIL KONEKSI lab.

Kredensial global telah ditambahkan.

Halaman Global credentials (unrestricted)

Mengonfigurasi Jenkins Cloud untuk Kubernetes

  1. Di antarmuka pengguna Jenkins, pilih Manage Jenkins > Clouds (atau System > Clouds).
  2. Klik New cloud.
  3. Di kolom Cloud name, ketik kubernetes, pilih Kubernetes untuk Type, lalu klik Create.
  4. Di kolom Jenkins URL, masukkan http://cd-jenkins:8080.
  5. Di kolom Jenkins tunnel, masukkan cd-jenkins-agent:50000.
  6. Klik Save.

Membuat tugas Jenkins

Buka antarmuka pengguna Jenkins dan ikuti langkah-langkah ini untuk mengonfigurasi tugas Multibranch Pipeline:

  1. Klik Jenkins > New Item di panel kiri.

  2. Masukkan nama item sample-app, pilih opsi Multibranch Pipeline, lalu klik OK.

  3. Di halaman berikutnya, pada bagian Branch Sources, pilih Git dari drop-down Add source.

  4. Di kolom Project Repository, masukkan URL clone repositori Anda:

http://{{{project_0.startup_script.git_server_ip}}}:3000/giteaadmin/sample-app.git Catatan: Jika variabel tidak terisi otomatis, Anda dapat memasukkan http://[GIT_SERVER_IP]:3000/giteaadmin/sample-app.git dengan mengganti [GIT_SERVER_IP] dengan IP Server Git Anda.
  1. Pada Credentials, biarkan disetel ke - none -.

  2. Di bagian Scan Multibranch Pipeline Triggers, centang kotak Periodically if not otherwise run dan setel nilai Interval ke 1 minute.

  3. Biarkan semua opsi lainnya pada nilai default dan klik Save.

Setelah Anda menyelesaikan langkah-langkah ini, tugas bernama Branch indexing akan berjalan. Tugas meta ini mengidentifikasi cabang di repositori Anda dan memastikan tidak ada perubahan pada cabang yang ada. Jika Anda mengklik sample-app di menu navigasi, tugas master akan terlihat.

Catatan: Eksekusi pertama tugas master mungkin gagal hingga Anda membuat beberapa perubahan kode di langkah berikutnya.

Anda telah berhasil membuat pipeline Jenkins! Selanjutnya, Anda membuat lingkungan pengembangan untuk integrasi berkelanjutan.

Tugas 9. Membuat lingkungan pengembangan

Cabang pengembangan adalah sekumpulan lingkungan yang digunakan oleh developer Anda untuk menguji perubahan kode sebelum mengirimkannya untuk diintegrasikan ke situs live. Lingkungan ini adalah versi skala kecil dari aplikasi Anda, tetapi perlu di-deploy menggunakan mekanisme yang sama dengan lingkungan aktif.

Membuat cabang pengembangan

Untuk membuat lingkungan pengembangan dari cabang fitur, Anda dapat mengirimkan cabang ke server Git dan membiarkan Jenkins men-deploy lingkungan.

Catatan: Jika Anda melihat error di Cloud Shell, tekan CTRL+C, lalu jalankan perintah di bawah.
  • Buat cabang pengembangan, lalu kirimkan ke server Git:
git checkout -b new-feature

Mengubah definisi pipeline

Jenkinsfile yang mendefinisikan pipeline tersebut ditulis menggunakan sintaksis Jenkins Pipeline Groovy. Dengan menggunakan Jenkinsfile, seluruh pipeline build dapat diekspresikan dalam satu file yang aktif bersama kode sumber Anda. Pipeline mendukung fitur-fitur canggih, seperti paralelisasi, dan memerlukan persetujuan pengguna secara manual.

Agar pipeline dapat bekerja seperti yang diharapkan, Anda harus memodifikasi Jenkinsfile untuk menetapkan project ID.

  1. Buka Jenkinsfile di editor terminal, misalnya vi:
vi Jenkinsfile
  1. Mulai editor:
i
  1. Tambahkan PROJECT_ID ke nilai REPLACE_WITH_YOUR_PROJECT_ID. (PROJECT_ID Anda adalah Project ID yang ditemukan di bagian CONNECTION DETAILS pada lab. Anda juga dapat menjalankan gcloud config get-value project untuk menemukannya.

  2. Ubah nilai CLUSTER_ZONE menjadi . Anda bisa mendapatkan nilai ini dengan menjalankan gcloud config get compute/zone.

PROJECT = "REPLACE_WITH_YOUR_PROJECT_ID" APP_NAME = "gceme" FE_SVC_NAME = "${APP_NAME}-frontend" CLUSTER = "jenkins-cd" CLUSTER_ZONE = "{{{project_0.default_zone}}}" IMAGE_TAG = "gcr.io/${PROJECT}/${APP_NAME}:${env.BRANCH_NAME}.${env.BUILD_NUMBER}" JENKINS_CRED = "${PROJECT}"
  1. Simpan file Jenkinsfile: tekan tombol Esc, lalu (untuk pengguna vi):
:wq

Memodifikasi situs

Untuk menunjukkan perubahan aplikasi, Anda akan mengubah warna kartu gceme dari biru menjadi oranye.

  1. Buka html.go:
vi html.go
  1. Mulai editor:
i
  1. Ganti dua instance <div class="card blue"> dengan kode berikut:
<div class="card orange">
  1. Simpan file html.go: tekan tombol Esc, lalu:
:wq
  1. Buka main.go:
vi main.go
  1. Mulai editor:
i
  1. Versi ditentukan di baris ini:
const version string = "1.0.0"

Perbarui kode menjadi berikut:

const version string = "2.0.0"
  1. Simpan file main.go sekali lagi: tekan tombol Esc, lalu:
:wq

Tugas 10. Memulai deployment

Dalam tugas ini, Anda akan men-deploy lingkungan pengembangan.

  1. Commit dan kirim perubahan Anda:
git add Jenkinsfile html.go main.go git commit -m "Version 2.0.0" git push origin new-feature

Tindakan ini akan memulai build lingkungan pengembangan Anda.

Setelah perubahan dikirimkan ke repositori Git, buka antarmuka pengguna Jenkins tempat Anda dapat melihat bahwa build untuk cabang new-feature telah dimulai. Diperlukan waktu hingga satu menit hingga perubahan mulai berlaku.

  1. Setelah build berjalan, klik panah bawah di sebelah build di menu navigasi kiri, lalu pilih Console output:

Panel navigasi

  1. Lacak output build selama beberapa menit dan perhatikan pesan kubectl --namespace=new-feature apply... sebagai awalnya. Cabang new-feature kini di-deploy ke cluster.
Catatan: Dalam skenario pengembangan, Anda tidak akan menggunakan load balancer yang ditampilkan kepada publik. Untuk membantu mengamankan aplikasi, Anda dapat menggunakan proxy kubectl. Proxy tersebut mengautentikasi dirinya sendiri dengan Kubernetes API dan menjalankan proxy permintaan dari komputer lokal Anda ke layanan di cluster tanpa mengekspos layanan Anda ke Internet.

Jika Anda tidak melihat apa pun di Build Executor, jangan khawatir. Cukup buka halaman beranda Jenkins > sample app. Pastikan pipeline new-feature telah dibuat.

  1. Setelah semuanya diatasi, mulai proxy di latar belakang:
kubectl proxy &
  1. Jika terhenti, tekan CTRL+C untuk keluar. Verifikasi bahwa aplikasi Anda dapat diakses dengan mengirimkan permintaan ke localhost dan proxy kubectl akan meneruskannya ke layanan Anda:
curl \ http://localhost:8001/api/v1/namespaces/new-feature/services/gceme-frontend:80/proxy/version

Anda akan melihatnya merespons dengan 2.0.0 yang merupakan versi yang berjalan sekarang.

Jika Anda menerima error serupa:

{ "kind": "Status", "apiVersion": "v1", "metadata": { }, "status": "Failure", "message": "no endpoints available for service \"gceme-frontend:80\"", "reason": "ServiceUnavailable", "code": 503
  1. Hal ini berarti endpoint frontend Anda belum diterapkan. Tunggu sebentar, lalu coba kembali perintah curl. Lanjutkan jika Anda mendapatkan output berikut:
2.0.0

Anda telah menyiapkan lingkungan pengembangan. Selanjutnya, bangun hal yang telah dipelajari dalam modul sebelumnya dengan men-deploy rilis terbatas untuk menguji fitur baru.

Klik Periksa progres saya untuk memverifikasi tugas yang telah dijalankan. Jika berhasil memulai build untuk cabang new-feature, Anda akan melihat skor penilaian.

Melakukan build untuk cabang new-feature

Tugas 11. Men-deploy rilis terbatas

Anda telah memverifikasi bahwa aplikasi Anda menjalankan kode terbaru di lingkungan pengembangan. Selanjutnya, deploy kode tersebut ke lingkungan canary.

  1. Buat cabang canary, lalu kirim ke server Git:
git checkout -b canary git push origin canary
  1. Di Jenkins, Anda akan melihat bahwa pipeline canary telah dimulai. Setelah selesai, Anda dapat memeriksa URL layanan untuk memastikan versi baru Anda menyajikan sebagian traffic. Anda akan melihat sekitar 1 dari 5 permintaan (tanpa urutan tertentu) menampilkan versi 2.0.0:
export FRONTEND_SERVICE_IP=$(kubectl get -o \ jsonpath="{.status.loadBalancer.ingress[0].ip}" --namespace=production services gceme-frontend) while true; do curl http://$FRONTEND_SERVICE_IP/version; sleep 1; done
  1. Jika Anda tetap melihat versi 1.0.0, coba jalankan kembali perintah di atas. Setelah Anda memverifikasi bahwa cara di atas berfungsi dengan baik, akhiri perintah dengan menekan CTRL+C.

Selesai. Anda telah men-deploy rilis terbatas. Berikutnya, Anda akan men-deploy versi baru ke produksi.

Klik Periksa progres saya untuk memverifikasi tugas yang telah dijalankan. Jika berhasil men-deploy rilis terbatas, Anda akan melihat skor penilaian.

Men-deploy rilis terbatas

Tugas 12. Melakukan deployment ke produksi

Setelah rilis terbatas berhasil dan belum ada pelanggan yang mengeluh, lakukan deployment ke seluruh fleet produksi Anda.

  1. Buat cabang canary, lalu kirim ke server Git:
git checkout master git merge canary git push origin master

Di Jenkins, Anda akan melihat pipeline master telah dimulai.

Klik Periksa progres saya untuk memverifikasi tugas yang telah dijalankan. Jika berhasil memulai pipeline master, Anda akan melihat skor penilaian.

Melakukan deployment ke produksi
  1. Setelah selesai (prosesnya mungkin memerlukan waktu beberapa menit), Anda dapat memeriksa URL layanan untuk memastikan versi baru, 2.0.0, menyajikan semua traffic.
export FRONTEND_SERVICE_IP=$(kubectl get -o \ jsonpath="{.status.loadBalancer.ingress[0].ip}" --namespace=production services gceme-frontend) while true; do curl http://$FRONTEND_SERVICE_IP/version; sleep 1; done
  1. Sekali lagi, jika Anda melihat instance 1.0.0, coba jalankan kembali perintah di atas. Untuk menghentikan perintah ini, tekan CTRL+C.

Contoh output:

gcpstaging9854_student@qwiklabs-gcp-df93aba9e6ea114a:~/continuous-deployment-on-kubernetes/sample-app$ while true; do curl http://$FRONTEND_SERVICE_IP/version; sleep 1; done 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 2.0.0 ^C

Anda juga dapat membuka situs tempat aplikasi gceme menampilkan kartu info. Warna kartu berubah dari biru menjadi oranye.

  1. Berikut adalah perintah untuk mendapatkan alamat IP eksternal. Tempel External IP ke tab baru untuk melihat kartu info yang ditampilkan.
kubectl get service gceme-frontend -n production

Contoh output:

Backend yang melayani halaman permintaan ini

Tugas 13. Menguji pemahaman Anda

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

Selesai!

Bagus, Anda telah berhasil men-deploy aplikasi ke produksi!

Selamat!

Bagian ini adalah akhir dari lab praktik seputar deployment dan penggunaan Jenkins di Kubernetes Engine untuk mengaktifkan pipeline Continuous Delivery/Continuous Deployment. Anda telah men-deploy alat DevOps penting di Kubernetes Engine dan mengonfigurasinya untuk penggunaan produksi. Anda telah mempelajari alat command line kubectl dan konfigurasi deployment dalam file YAML, serta telah belajar sedikit tentang penyiapan pipeline Jenkins untuk proses pengembangan/deployment. Berbekal pengalaman langsung ini, Anda diharapkan dapat dengan yakin menerapkan alat ini di lingkungan DevOps Anda sendiri.

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: 20 Mei 2026

Lab Terakhir Diuji: 26 Februari 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 dapat memberi tahu Anda melalui email saat konten tersedia

Bagus!

Kami dapat 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.