Bagaimana API7 Gateway Mengatasi Pengecualian dengan Strategi Ketersediaan Tinggi
April 8, 2024
Ketersediaan tinggi merupakan sasaran desain penting untuk deployment gateway API. Gateway menangani perutean permintaan antara aplikasi dan layanan, tetapi ketersediaan end-to-end juga harus memperhitungkan topologi gateway, jaringan, layanan upstream, dan operasi.
Artikel ini membahas API7 Enterprise, platform manajemen API enterprise yang dibangun di atas Apache APISIX, serta mekanisme data plane yang dirancang untuk mengurangi dampak gangguan control plane atau jaringan. Hasil ketersediaan tetap bergantung pada deployment dan infrastruktur yang dikelola pelanggan.
Arsitektur Ketersediaan Tinggi Tingkat Perusahaan
Seperti dibahas dalam solusi ketersediaan tinggi enterprise API7, komponen stateless dapat mendukung pemulihan kegagalan dan penjadwalan sumber daya. Karakteristik desain ini dapat meningkatkan ketahanan, tetapi ketersediaan yang dicapai dalam produksi bergantung pada topologi, dependensi infrastruktur, dan operasi pelanggan.

Strategi Ketersediaan Tinggi API7 Enterprise
Berbasis Apache APISIX, API7 Gateway menggunakan mekanisme pemulihan konfigurasi yang ditujukan untuk mempertahankan konfigurasi yang dapat digunakan dan mengurangi risiko interupsi dalam kondisi tidak normal. Mekanisme tersebut bekerja dalam tiga tahap:
-
Pemulihan konfigurasi saat startup;
-
Sinkronisasi konfigurasi penuh dan penyimpanan lokal;
-
Perubahan konfigurasi dinamis dan persistensi.
Ini dirancang untuk mengatasi keadaan ekstrem di mana data plane tidak dapat terhubung ke control plane karena ketidakpastian yang signifikan (seperti DNS, jaringan, control plane, dll.).
Pemulihan Konfigurasi saat Startup
Jika koneksi ke control plane gagal ketika instance API7 Gateway dimulai, gateway mencoba mengambil konfigurasi terbaru dari penyimpanan lokal. Snapshot lokal yang valid dapat membantu instance kembali merutekan trafik dengan konfigurasi sebelumnya; keberhasilan pemulihan tetap bergantung pada snapshot tersebut dan infrastruktur di sekitarnya.
Dalam kasus yang lebih ekstrem, Anda dapat mengubah file konfigurasi lokal instance, yang dapat digunakan sebagai konfigurasi startup API7 Gateway.
Sinkronisasi Konfigurasi Penuh dan Penyimpanan Lokal
Setelah terhubung ke pusat konfigurasi, API7 Gateway menyinkronkan informasi konfigurasi dan menyimpannya sebagai JSON di sistem file lokal. Ketika koneksi kemudian terputus, gateway yang sedang berjalan dapat menggunakan konfigurasi dalam memori atau lokal, bergantung pada validitas konfigurasi dan dependensi deployment lainnya.
Perubahan Konfigurasi Dinamis dan Persistensi
Ketika control plane mengirim pembaruan konfigurasi, API7 Gateway menerapkan perubahan dan memperbarui file konfigurasi lokal. Persistensi ini dapat mempersingkat pemulihan setelah restart, tetapi tidak menghilangkan setiap kemungkinan interupsi layanan.
Desain untuk Menangani Situasi Ekstrem
API7 Gateway menyertakan persistensi konfigurasi dan logika pemulihan untuk kondisi seperti isolasi jaringan, kegagalan control plane, dan keterbatasan sumber daya lokal. Mekanisme ini dapat meningkatkan ketahanan gateway; kelangsungan bisnis end-to-end juga bergantung pada kapasitas data plane yang redundan, load balancing, layanan upstream, dan operasi pelanggan.
Kesimpulan
Pemulihan dan sinkronisasi konfigurasi, penyimpanan lokal, serta persistensi dapat membantu API7 Gateway menggunakan konfigurasi terakhir yang tersedia saat control plane tidak tersedia atau instance dimulai ulang. Hasilnya bergantung pada arsitektur dan operasi yang dikelola pelanggan dan bukan merupakan komitmen uptime untuk API7 Enterprise.
API7 Enterprise menyediakan mekanisme ketersediaan tinggi untuk deployment yang dikelola pelanggan. Mekanisme ini dapat mengurangi dampak kegagalan, tetapi ketersediaan layanan yang dicapai bergantung pada arsitektur deployment, dependensi infrastruktur, dan operasi pelanggan.



