Apa itu Cloud Deployment ?
Leyun Cloud Asia – Cloud Deploy adalah layanan terkelola yang mengotomatiskan proses pengiriman dan pengelolaan aplikasi ke berbagai lingkungan cloud dengan target sesuai urutan promosi yang telah ditentukan. Layanan ini dirancang untuk memfasilitasi continuous delivery (CD) dan continuous deployment, memastikan bahwa aplikasi selalu up-to-date dan dapat di-deploy dengan cepat dan efisien.
Cara kerja pipeline Cloud Deploy adalah sebagai berikut:
Pipeline Cloud Deploy berfungsi untuk mengatur dan mengelola urutan deployment aplikasi Anda ke berbagai lingkungan target. Berikut adalah langkah-langkah cara kerja pipeline Cloud Deploy:
1. Membuat Pipeline Pengiriman:
– Anda membuat file konfigurasi YAML yang mendefinisikan pipeline pengiriman.
– Dalam file ini, Anda menentukan urutan promosi untuk deployment aplikasi ke berbagai target.
2. Konfigurasi Skaffold:
– Anda memerlukan konfigurasi Skaffold yang digunakan Cloud Deploy untuk operasi render dan deploy.
3. Menentukan Target:
– Target deployment dapat ditentukan dalam file konfigurasi pipeline atau dalam file terpisah.
– Beberapa pipeline pengiriman dapat menggunakan target yang sama, tetapi satu target tertentu hanya dapat digunakan satu kali dalam pipeline yang sama.
4. Mendaftarkan Pipeline:
– Anda mendaftarkan pipeline pengiriman ke layanan Cloud Deploy.
5. Manajemen Deployment:
– Setelah pipeline terdaftar, Cloud Deploy mengelola deployment aplikasi Anda ke target sesuai urutan promosi yang telah ditentukan.
6. Memulai Pipeline:
– Proses CI (Continuous Integration) Anda memanggil Cloud Deploy untuk memulai pipeline pengiriman.
– Panggilan ini membuat resource release yang mewakili manifes yang dirender untuk setiap target menggunakan skaffold.yaml dan referensi image container.
7. Membuat dan Mengelola Rollout:
– Cloud Deploy secara otomatis membuat resource rollout untuk mengaitkan rilis dengan target pertama dan mendepoy aplikasi ke target tersebut.
8. Promosi Rilis:
– Untuk men-deploy aplikasi ke target berikutnya, Anda memanggil Cloud Deploy untuk mempromosikannya.
– Setiap panggilan promosi menyebabkan Cloud Deploy membuat peluncuran baru ke target berikutnya sesuai urutan yang ditentukan.
9. Persetujuan (Opsional):
– Jika persetujuan diperlukan sebelum promosi, properti `requireApproval` dalam definisi target harus diaktifkan.
– Cloud Deploy akan mengirim pesan Pub/Sub untuk meminta persetujuan sebelum melanjutkan.
10. Monitoring dan Audit:
– Selama eksekusi pipeline, Cloud Deploy mengumpulkan metrik dan detail audit untuk pemantauan dan pelacakan.
Dengan mengikuti langkah-langkah ini, pipeline Cloud Deploy memastikan bahwa aplikasi Anda terdeploy dengan lancar dan efisien ke semua target yang telah ditentukan.
Target bisa ditentukan dalam file konfigurasi pipeline pengiriman yang sama atau dalam file terpisah. Beberapa pipeline pengiriman dapat berbagi target yang sama, tetapi satu target hanya dapat digunakan satu kali dalam pipeline pengiriman yang sama.
Notifikasi dan Rollback di Cloud Deploy
Cloud Deploy menyediakan notifikasi Pub/Sub untuk berbagai peristiwa, termasuk:
– Render: Mulai, berhasil, dan gagal.
– Deploy: Mulai, berhasil, dan gagal.
– Persetujuan: Persetujuan diperlukan, disetujui, dan ditolak.
Notifikasi ini dikirim melalui topik Pub/Sub. Untuk informasi lebih lanjut, lihat bagian Menggunakan notifikasi Cloud Deploy.
Rollback
Cloud Deploy memungkinkan rollback aplikasi yang telah di-deploy ke target mana pun. Rollback memicu peluncuran pada rilis terakhir yang berhasil di-deploy, menggunakan parameter yang sama seperti deployment yang berhasil sebelumnya. Detail lebih lanjut dapat ditemukan di bagian Me-roll back deployment.
Integrasi Cloud Deploy dengan Alat Google Cloud
Cloud Deploy mendukung berbagai alat di pipeline CI/CD Anda, baik upstream maupun downstream. Berikut adalah alur kerja sumber ke produksi menggunakan alat Google Cloud:
1. Pengembangan Sumber Aplikasi:
– Gunakan Cloud Code untuk membuat sumber aplikasi Anda. Cloud Code memperluas IDE populer seperti VS Code, IntelliJ, dan Cloud Shell untuk mempermudah proses build dan deploy aplikasi ke Google Cloud.
2. Pengelolaan Loop Pengembangan Lokal:
– Gunakan Skaffold untuk mengelola loop pengembangan lokal. Cloud Deploy menggunakan Skaffold, melalui Cloud Build, untuk merender dan men-deploy manifes Anda.
3. Pembangunan Aplikasi:
– Gunakan Cloud Build untuk menyiapkan pipeline CI yang dipicu oleh commit ke repositori kode sumber. Cloud Build menghasilkan artefak, termasuk image container yang dapat di-deploy, dan memanggil Cloud Deploy untuk membuat rilis dan menjalankan pipeline pengiriman.
4. Penyimpanan Artifact Registry:
– Simpan artefak di Artifact Registry. Cloud Deploy mengambil image container dari sini untuk di-deploy ke target.
5. Konfigurasi Pipeline Pengiriman:
– Atur pipeline pengiriman di Cloud Deploy untuk mengambil image container dan men-deploy-nya ke berbagai target seperti GKE, Cloud Run, atau GKE Enterprise.
6. Pengelolaan Aplikasi:
– GKE: Lingkungan yang dikelola Google Cloud untuk menjalankan aplikasi dalam container di Kubernetes.
– Cloud Run: Menjalankan container di lingkungan serverless.
– GKE Enterprise: Memberikan pengalaman pengembangan dan operasi yang konsisten untuk lingkungan cloud dan lokal.
7. Pemantauan Performa:
– Gunakan kemampuan observasi Google Cloud untuk pemantauan dan logging terintegrasi aplikasi Anda.
Dengan menggunakan alat-alat ini, Anda dapat mengelola proses dari pengembangan sumber aplikasi hingga deployment dan pemantauan performa secara efisien di lingkungan Google Cloud.
Cloud Deploy adalah layanan terkelola yang mengotomatiskan proses pengiriman dan pengelolaan aplikasi ke berbagai lingkungan cloud dengan target sesuai urutan promosi yang telah ditentukan. Layanan ini dirancang untuk memfasilitasi continuous delivery (CD) dan continuous deployment, memastikan bahwa aplikasi selalu up-to-date dan dapat di-deploy dengan cepat dan efisien.
Beberapa Pilihan layanan terkelola otomatis untuk pengiriman dan pengelolaan aplikasi ke berbagai cloud dapat anda temukan di Leyun Asia. Partner yang bekerjasama dengan kami :