Penyebaran tanpa waktu henti di Azure Spring Apps

Catatan

Paket Basic, Standard, dan Enterprise memasuki periode pensiun pada 17 Maret 2025. Untuk informasi selengkapnya, lihat pengumuman penghentian Azure Spring Apps.

Artikel ini berlaku untuk:✅ Java ✅ C#

Artikel ini berlaku untuk:✅ Basic/Standard ✅ Enterprise

Artikel ini menjelaskan dukungan penyebaran tanpa waktu henti di Azure Spring Apps.

Mencapai penyebaran tanpa waktu henti adalah tujuan mendasar untuk aplikasi penting. Aplikasi Anda harus tersedia bahkan ketika rilis baru diluncurkan selama jam kerja. Dengan dukungan penyebaran waktu henti nol di Azure Spring Apps, Anda dapat menyelesaikan proses penyebaran dari awal hingga akhir tanpa gangguan beban kerja.

Tanpa waktu henti dengan strategi penerapan biru-hijau

Anda dapat mencapai waktu henti nol dengan strategi penyebaran biru-hijau di Azure Spring Apps. Penyebaran biru-hijau menghilangkan waktu tidak aktif dengan menjalankan dua versi penyebaran secara bersamaan, dengan hanya salah satu penyebaran yang melayani lalu lintas produksi pada satu waktu. Penyebaran biru-hijau memberikan waktu henti nol dengan memungkinkan Anda beralih ke versi penyebaran lain jika ada yang mengganggu penyebaran langsung.

Saat Anda melakukan sakelar biru-hijau, Azure Spring Apps melakukan operasi yang mendasar berikut:

  • Jika klien Eureka diaktifkan untuk suatu penyebaran, akan mengubah dan menetapkan status registri Eureka menjadi UP untuk instans dalam penyebaran production.
  • Jika klien Eureka diaktifkan untuk suatu penyebaran, akan mengubah dan menetapkan status registri Eureka menjadi OUT_OF_SERVICE untuk instans dalam penyebaran staging.
  • Jika titik akhir publik diaktifkan untuk aplikasi, perbarui aturan masuk untuk merutekan lalu lintas publik ke instans dalam production penyebaran.

Catatan

Untuk penyebaran biru-hijau, Anda dapat mencapai waktu henti nol bahkan untuk penyebaran replika tunggal.

Tidak ada waktu henti dengan strategi pembaruan bergulir

Untuk penyebaran dengan jumlah replika dua atau lebih tinggi, Anda dapat mencapai waktu henti nol dengan strategi pembaruan bergulir dari Azure Spring Apps. Saat Anda menyebarkan versi baru ke penyebaran yang ada, atau memulai ulang penyebaran, Azure Spring Apps menggunakan pembaruan bergulir Kubernetes yang mendasar untuk melakukan pembaruan.

Pembaruan bergulir memungkinkan pembaruan penyebaran berlangsung dengan waktu henti nol dengan memperbarui instans secara bertahap dengan instans baru. Aplikasi Anda terus melayani lalu lintas produksi saat melakukan pembaruan bergulir jika jumlah replika penyebaran adalah dua atau lebih. Untuk informasi selengkapnya, lihat Melakukan Pembaruan Bergulir.

Peringatan

Untuk penyebaran replika tunggal, dapat terjadi downtime selama pembaruan penyebaran. Untuk memastikan ketersediaan aplikasi, kami sarankan Anda menyebarkan dengan setidaknya dua replika untuk beban kerja produksi Anda.

Catatan

Untuk memulai atau mematikan aplikasi Anda dengan lancar, Anda harus mengonfigurasi probe kesehatan untuk penyebaran aplikasi Anda. Untuk informasi selengkapnya, lihat Cara mengonfigurasi pemeriksaan kesehatan dan periode penghentian yang anggun untuk aplikasi yang dihosting di Azure Spring Apps. Kubernetes memeriksa pemeriksaan ini selama proses pembaruan bergulir, dan pengontrol Nginx ingress merutekan lalu lintas ke instans yang memiliki readiness probe sukses.

Saat Anda mengurangi jumlah instans aplikasi Anda, Azure Spring Apps menggunakan Hook Siklus Hidup Kontainer Kubernetes yang mendasar untuk mematikan pod secara tertib.

Di hook, Azure Spring Apps melakukan operasi berikut untuk mematikan kontainer aplikasi:

  • Jika klien Eureka diaktifkan, menggantikan dan mengatur status registri Eureka instans ke OUT_OF_SERVICE.
  • Tunggu beberapa detik untuk terus melayani lalu lintas apa pun dari Nginx atau aplikasi lain sebelum Kubernetes mematikan kontainer aplikasi.

Langkah selanjutnya