全部产品
Search
文档中心

Serverless App Engine:Menyebar aplikasi secara bertahap

更新时间:Jan 08, 2026

Untuk melakukan upgrade aplikasi dengan beberapa instans, Anda dapat menggunakan rilis canary atau rilis bertahap. Topik ini menjelaskan rilis bertahap serta cara mengonfigurasinya dan melakukan rollback.

Prasyarat

Aplikasi memiliki lebih dari satu instans.

Informasi latar belakang

Rilis bertahap menyebar aplikasi dalam batch, hanya meng-upgrade sebagian instans pada setiap batch. Jika terjadi kegagalan selama rilis bertahap, Anda dapat menghentikan proses tersebut dan segera melakukan rollback. Setelah masalah teratasi, Anda dapat memulai kembali penyebaran.

Selama rilis bertahap, instans aplikasi disebar dalam batch dan didistribusikan secara merata di antara batch tersebut. Anda dapat memilih untuk meninjau setiap batch secara manual atau otomatis. Jika instans tidak dapat didistribusikan secara merata, batch awal berisi lebih sedikit instans, sedangkan batch akhir berisi lebih banyak.

Penting

Rilis bertahap hanya dapat digunakan ketika aplikasi memiliki lebih dari satu instans. Jika Anda menggunakan command line di IntelliJ IDEA untuk melakukan rilis bertahap pada aplikasi yang hanya memiliki satu instans, sistem akan melaporkan error.

Contoh skenario

Misalnya, sebuah aplikasi memiliki 10 instans aplikasi yang perlu di-upgrade dari versi V1 ke V2. Jika upgrade dilakukan dalam tiga batch, proses rilis bertahap ditampilkan pada .

Prosedur

Peringatan

Setelah Anda menyebar ulang aplikasi, aplikasi akan restart. Untuk mencegah error tak terduga seperti gangguan bisnis, kami menyarankan agar Anda menyebar aplikasi selama jam sepi.

  1. Pada halaman SAE Application List, pilih wilayah dan namespace di bagian atas, lalu klik ID aplikasi target untuk membuka halaman detail aplikasi.

  2. Pada halaman Basic Information aplikasi target, klik Deploy Application.

  3. Konfigurasikan parameter penyebaran.

    Catatan

    Metode penyebaran aplikasi didasarkan pada metode penyebaran yang Anda pilih saat pertama kali membuat aplikasi. Konfigurasikan parameter sesuai dengan metode yang dipilih.

    • Deployment with WAR Packages: Unggah paket WAR lain atau masukkan path paket WAR yang baru diterapkan, lalu konfigurasikan lingkungan runtime dan pengaturan lainnya.

    • Deployment with JAR Packages: Unggah paket JAR lain atau masukkan path paket JAR yang baru diterapkan, lalu konfigurasikan lingkungan runtime dan pengaturan lainnya.

    • Deployment with ZIP Packages: Unggah paket ZIP lain atau masukkan path paket ZIP yang baru diterapkan, lalu konfigurasikan lingkungan runtime dan pengaturan lainnya.

    • Image: Pada bagian Configure Image, klik Modify Image. Di panel Modify Image, pilih repository image atau versi gambar lainnya.

  4. Pada bagian Release Policy Settings, Anda dapat mengonfigurasi rilis bertahap.

    Configuration Item

    Description

    Release Policy

    Pilih Phased Release.

    Publish Batches

    Tentukan jumlah batch untuk rilis instans aplikasi.

    Interval Between Deployments In A Batch

    Interval penyebaran antar instans aplikasi dalam satu batch jika batch tersebut berisi lebih dari satu instans. Satuan: detik.

    Peak Volume

    Ini sesuai dengan parameter MaxSurge di Kubernetes (K8s). Parameter ini menentukan jumlah instans tambahan yang dapat dibuat melebihi jumlah instans yang diharapkan.

    Penting

    Fitur ini berada dalam invitational preview. Untuk meminta akses, hubungi tim kami di grup DingTalk (ID: 32874633).

    Catatan
    • Jika Minimum Alive Instances diatur ke 100% (artinya MaxUnavailable adalah 0), Peak Volume tidak boleh 0.

    • Jika Anda menggunakan persentase, nilainya dibulatkan ke atas. Misalnya, jika Anda mengatur nilai menjadi 25% dan terdapat 5 instans, maka Peak Volume adalah 2.

    Minimum Surviving Instances

    Jumlah minimum instans yang harus tetap aktif selama setiap rolling upgrade.

    Catatan
    • Kami menyarankan agar Anda mengatur Minimum Alive Instances ke 1 atau lebih untuk memastikan kelangsungan bisnis. Jika Anda mengatur parameter ini ke 0, aplikasi Anda akan terganggu selama upgrade.

    • Jika Anda menggunakan persentase, nilainya dibulatkan ke atas. Misalnya, jika Anda mengatur nilai menjadi 25% dan terdapat 5 instans, maka Minimum Alive Instances adalah 2.

  5. Setelah menyelesaikan konfigurasi, klik OK.

  6. Verifikasi bahwa konfigurasi telah diterapkan dengan salah satu cara berikut:

    • Metode 1: Pada halaman Change History aplikasi, Anda dapat melihat detail perubahan dan status rilis. Aplikasi diperbarui jika semua batch berhasil dieksekusi.

    • Metode 2: Pada tab Instance List di halaman Basic Information aplikasi, Anda dapat memeriksa status berjalan instans. Penyebaran berhasil jika Execution Status bernilai Running.

Rollback aplikasi

Saat Anda melakukan upgrade instans aplikasi menggunakan rilis grayscale atau rilis bertahap, status upgrade tetap In Progress hingga semua instans di-upgrade.

Saat memantau upgrade aplikasi, jika terjadi error yang menyebabkan instans pada batch pertama berhenti merespons, klik Roll Back Immediately pada halaman Change Details untuk memastikan kelangsungan bisnis. Tindakan ini akan mengembalikan instans yang telah di-upgrade ke versi sebelumnya dan memulihkan konfigurasi sebelumnya.

Jika terjadi error—seperti deployment package yang tidak tersedia atau health check yang gagal—selama proses penyebaran, upgrade aplikasi akan gagal. SAE akan menghentikan penyebaran saat ini dan melakukan rollback.

Upgrade aplikasi di SAE akan timeout setelah sekitar 30 menit. Jika terjadi timeout, SAE akan menjeda proses perubahan. Anda kemudian dapat membuka halaman Change Details untuk secara manual menghentikan proses rilis dan melakukan rollback aplikasi.

Hentikan rilis

Untuk menghentikan perubahan yang sedang berlangsung, klik Terminate Release pada halaman Change Details.

Penting

Menghentikan rilis dapat menyebabkan beberapa versi aplikasi berjalan secara bersamaan:

  • Instans yang sudah diterapkan: Instans ini terus berjalan dalam status saat ini dan tidak dikembalikan (rollback).

  • Instans yang sedang diterapkan: Penyebaran instans ini tetap berlanjut. Setelah penyebaran selesai, instans tersebut menjalankan versi baru dari rilis ini.

  • Instans yang belum diterapkan (termasuk semua instans dalam batch yang belum dieksekusi): Instans ini terus berjalan dalam status saat ini. Proses rilis tidak dilanjutkan untuk instans tersebut.

  • Instans baru dari Auto Scaling: Instans baru yang dibuat oleh Auto Scaling menggunakan versi baru dari rilis ini.

Setelah Anda menghentikan rilis, segera sebar ulang aplikasi atau lakukan rollback ke versi sebelumnya. Hal ini memastikan bahwa semua instans aplikasi menjalankan versi yang sama.

Informasi lebih lanjut

Setelah Anda menyebar aplikasi di SAE, Anda dapat melakukan operasi berikut pada aplikasi tersebut.

Operation

References

Operasi manajemen lifecycle, seperti memperbarui, menskalakan, memulai, menghentikan, dan menghapus aplikasi

Operasi untuk meningkatkan performa aplikasi, seperti auto scaling, bind CLB instance, serta start dan stop batch

Operasi terkait status berjalan aplikasi, seperti manajemen log, manajemen pemantauan, melihat event aplikasi, dan melihat catatan perubahan