Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Azure Application Gateway untuk Kontainer adalah layanan penyeimbangan beban lapisan aplikasi terkelola (lapisan 7) dan manajemen lalu lintas dinamis untuk beban kerja yang berjalan di Kubernetes. Ini merutekan permintaan masuk ke target backend di kluster Anda.
Saat Anda menggunakan Azure, keandalan adalah tanggung jawab bersama. Microsoft menyediakan berbagai kemampuan untuk mendukung ketahanan dan pemulihan. Anda bertanggung jawab untuk memahami cara kerja kemampuan tersebut dalam semua layanan yang Anda gunakan, dan memilih kemampuan yang Anda butuhkan untuk memenuhi tujuan bisnis dan tujuan waktu aktif Anda.
Artikel ini menjelaskan bagaimana Azure Application Gateway untuk Kontainer menangani kesalahan sementara, kegagalan zona ketersediaan, kegagalan di seluruh wilayah, dan pemeliharaan layanan. Ini juga menjelaskan opsi pencadangan dan pemulihan dan informasi utama tentang perjanjian tingkat layanan (SLA).
Rekomendasi implementasi produksi untuk keandalan
Application Gateway untuk Kontainer memiliki ketersediaan tinggi secara default. Untuk beban kerja produksi:
Untuk redundansi zona, sebarkan Application Gateway untuk Kontainer di wilayah yang mendukung zona ketersediaan. Layanan ini secara otomatis memiliki redundansi zona di wilayah tersebut.
Konfigurasikan kluster Kubernetes, sumber daya Kubernetes, dan beban kerja backend untuk ketahanan zona. Untuk panduan, lihat Ketahanan terhadap kegagalan zona ketersediaan.
Untuk ketahanan terhadap kegagalan di seluruh wilayah, sebarkan Application Gateway untuk Kontainer dan beban kerja dependennya di setiap wilayah, dan konfigurasikan manajemen lalu lintas lintas wilayah. Untuk panduan, lihat Solusi multiregion kustom untuk ketahanan.
Jika Anda mengonfigurasi grup keamanan jaringan (NSG) atau rute yang ditentukan pengguna (UDR) pada subnet asosiasi, ikuti panduan NSG dan panduan rute yang ditentukan pengguna.
Untuk contoh arsitektur dan panduan tentang topologi, arus lalu lintas, keandalan, keamanan, dan operasi, lihat Menyebarkan Application Gateway untuk Kontainer di Azure Kubernetes Service.
Gambaran umum arsitektur keandalan
Bagian ini menjelaskan beberapa aspek penting tentang cara kerja layanan yang paling relevan dari perspektif keandalan. Bagian ini memperkenalkan arsitektur logis, yang mencakup beberapa sumber daya dan fitur yang Anda sebarkan dan gunakan. Ini juga membahas arsitektur fisik, yang memberikan detail tentang cara kerja layanan di bawah sampul.
Arsitektur logika
Penyebaran Application Gateway for Containers mencakup sumber daya di Azure dan di kluster Kubernetes Anda.
- Sumber daya Azure:control plane mengatur konfigurasi proksi gateway berdasarkan konfigurasi Anda. data plane yang dikelola Azure berjalan di luar kluster Anda dan memproses lalu lintas aplikasi.
- Sumber daya Kubernetes: Anda menentukan perutean dan konfigurasi lainnya dengan menggunakan sumber daya Kubernetes. Pengontrol ALB berjalan di kluster Anda, mengawasi sumber daya tersebut, dan menyebarluaskan konfigurasi Anda ke Application Gateway untuk Kontainer di Azure.
Anda dapat memilih antara dua strategi penyebaran. Dengan strategi bring your own (BYO), Anda mengelola siklus hidup Application Gateway untuk Kontainer, asosiasi, dan sumber daya frontend melalui alat Azure. Dengan strategi yang dikelola oleh ALB Controller, ALB Controller mengelola siklus hidup sumber daya Azure berdasarkan sumber daya Kubernetes yang Anda tentukan.
Untuk deskripsi lengkap komponen, lihat Komponen Application Gateway for Containers.
Setelah Anda menyebarkan dan mengonfigurasi Application Gateway untuk Kontainer, application Gateway merutekan permintaan masuk ke target backend, yang mewakili aplikasi Anda yang berjalan dalam Kubernetes.
Jika Pengontrol ALB atau control plane tidak tersedia, data plane terus memproses lalu lintas dengan menggunakan konfigurasi terakhir yang berhasil diterapkan. Selama gangguan layanan, pembaruan konfigurasi tidak disebarluaskan, dan layanan tidak dapat memprogram konfigurasi yang diperlukan untuk peristiwa scale-out.
Arsitektur fisik
Azure mengelola dan secara otomatis menskalakan infrastruktur data plane berdasarkan lalu lintas aplikasi. Application Gateway untuk Kontainer selalu disebarkan dalam konfigurasi dengan ketersediaan tinggi: di wilayah yang mendukung zona ketersediaan, gateway bersifat redundan zona; di wilayah yang tidak mendukung zona ketersediaan, Azure menggunakan set ketersediaan.
Ketahanan terhadap kesalahan sementara
Kesalahan sementara adalah kegagalan yang bersifat sementara dan intermiten dalam komponen. Mereka sering terjadi di lingkungan terdistribusi seperti cloud, dan mereka adalah bagian normal dari operasi. Kesalahan sementara memperbaiki diri setelah waktu yang singkat. Penting bahwa aplikasi Anda dapat menangani kesalahan sementara, biasanya dengan mencoba kembali permintaan yang terpengaruh.
Semua aplikasi yang dihosting cloud harus mengikuti panduan penanganan kesalahan sementara Azure saat berkomunikasi dengan API, database, dan komponen lain yang dihosting cloud. Untuk informasi selengkapnya, lihat Rekomendasi untuk menangani kesalahan sementara.
Saat Anda menggunakan Application Gateway untuk Kontainer, pertimbangkan praktik terbaik berikut:
Menerapkan logika pengulangan. Konfigurasikan klien untuk mencoba kembali permintaan setelah kegagalan koneksi sementara.
Konfigurasikan pengecekan kesehatan dengan toleransi. Jika Anda mengonfigurasi pemeriksaan kesehatan kustom, atur ambang batas tidak sehat untuk mentolerir kesalahan sementara. Ambang batas tidak sehat menentukan jumlah pemeriksaan gagal berturut-turut yang memicu target backend untuk ditandai sebagai tidak sehat. Pemeriksaan kesehatan default menggunakan ambang batas tidak sehat sebesar tiga pemeriksaan, yang membantu mencegah satu kegagalan pemeriksaan sementara menandai backend sebagai tidak sehat.
Ketahanan terhadap kegagalan zona ketersediaan
Zona ketersediaan adalah grup pusat data yang terpisah secara fisik dalam wilayah Azure. Ketika satu zona gagal, layanan dapat melakukan failover ke salah satu zona yang tersisa.
Saat Anda menyebarkan Application Gateway untuk Kontainer di wilayah Azure yang mendukung zona ketersediaan, Microsoft secara otomatis mengonfigurasi sarana kontrol dan bidang data sebagai zona redundan di beberapa zona. Anda tidak memilih zona mana yang digunakan layanan.
Important
Microsoft mengelola redundansi zona untuk Application Gateway for Containers control plane dan data plane. Untuk mencapai ketahanan zona end-to-end, konfigurasikan kluster Kubernetes, sumber daya Kubernetes, dan beban kerja backend untuk menyediakan target yang sehat di seluruh zona.
Requirements
Dukungan wilayah: Untuk menggunakan redundansi zona, pilih wilayah yang mendukung Application Gateway untuk Kontainer dan zona ketersediaan. Periksa ketersediaan wilayah Application Gateway for Containers dan bandingkan dengan daftar wilayah yang mendukung zona ketersediaan.
Considerations
Tanggung jawab bersama dengan platform Kubernetes Anda: Microsoft mengelola pengalihan lalu lintas untuk Application Gateway untuk Kontainer selama kegagalan zona. Untuk Azure Kubernetes Service (AKS), Microsoft mengelola control plane Kubernetes. Anda bertanggung jawab untuk mengonfigurasi ketahanan zona untuk kumpulan simpul kluster dan sumber daya lain yang Anda kelola, dan untuk perilaku aplikasi Anda selama pemadaman zona.
Kluster: Konfigurasikan kumpulan simpul AKS dan sumber daya kluster terikat zona lainnya yang Anda kelola agar mencakup beberapa zona ketersediaan. AKS mengelola control plane; lihat Mengonfigurasi zona ketersediaan untuk kumpulan simpul AKS.
Beban kerja Anda: Anda bertanggung jawab untuk menyebarkan beberapa replika pod, menyebarkannya di seluruh zona, dan memastikan beban kerja backend yang sehat tersedia untuk melayani lalu lintas selama pemadaman zona. Anda dapat menggunakan kumpulan simpul yang mencakup zona ketersediaan, batasan penyebaran topologi, dan anti-afinitas pod.
Objek konfigurasi Kubernetes: Application Gateway untuk Kontainer menggunakan objek konfigurasi Kubernetes yang disimpan oleh API kluster. Ketersediaannya tergantung pada control plane Kubernetes dan konfigurasi yang Anda kelola di kluster Anda.
ALB Controller: Anda menyebarkan ALB Controller di kluster Kubernetes untuk menyelaraskan konfigurasi. Ini bukan bagian dari jalur data Application Gateway untuk Kontainer.
Pengontrol ALB menjalankan dua replika, dengan satu bertindak sebagai pemimpin dan yang lain sebagai sekunder. Jika pemimpin menjadi tidak tersedia, sekunder dapat menjadi pemimpin dan terus menyebarkan konfigurasi. Kedua replika mungkin berjalan di zona ketersediaan yang sama, tergantung pada bagaimana kluster menjadwalkannya. Anda bertanggung jawab untuk mengonfigurasi kluster dan pod pengontrol untuk ketahanan zona. Gunakan batasan spread topologi pod atau anti-afinitas pod untuk mendistribusikan replika di seluruh zona. Untuk informasi selengkapnya, lihat Mengonfigurasi zona ketersediaan untuk kumpulan simpul AKS.
Biaya
Dukungan zona ketersediaan untuk Application Gateway untuk Kontainer tidak dikenakan biaya tambahan di luar harga layanan standar. Untuk detail harga, lihat harga Azure Application Gateway.
Mengonfigurasi dukungan zona ketersediaan
Saat Anda menyebarkan gateway baru di wilayah yang didukung, gateway tersebut memiliki redundansi zona secara default. Anda tidak perlu mengaktifkan redundansi zona pada sumber daya Azure.
Anda bertanggung jawab untuk mengonfigurasi kluster Kubernetes, Pengontrol ALB, dan beban kerja backend untuk ketahanan zona.
Perilaku ketika semua zona sehat
Bagian ini menjelaskan apa yang diharapkan ketika Anda menyebarkan Application Gateway for Containers di wilayah yang mendukung zona ketersediaan dan semua zona yang digunakan oleh layanan beroperasi.
Operasi lintas zona: data plane Application Gateway for Containers yang dikelola Azure mendistribusikan permintaan masuk di seluruh infrastruktur di beberapa zona.
Anda bertanggung jawab untuk mengonfigurasi beban kerja backend Anda untuk berjalan di seluruh zona, dan menyediakan target yang sehat untuk menerima lalu lintas tersebut.
Replikasi data lintas zona: Application Gateway untuk Kontainer tidak menyimpan data aplikasi. Platform ini mengelola status konfigurasi melalui control plane redundan zona untuk memberikan durabilitas dan ketahanan.
Perilaku selama kegagalan zona
Bagian ini menjelaskan apa yang diharapkan ketika Anda menyebarkan Application Gateway untuk Kontainer di wilayah yang mendukung zona ketersediaan dan salah satu zona yang digunakan oleh layanan mengalami pemadaman.
Deteksi dan respons: Application Gateway untuk Kontainer mengalihkan lalu lintas ke infrastruktur di zona sehat yang tersisa selama pemadaman zona. Anda tidak perlu mengambil tindakan untuk redistribusi lalu lintas gateway.
Namun, Anda bertanggung jawab atas efek pemadaman pada kluster Kubernetes dan aplikasi backend Anda.
- Pemberitahuan: Microsoft tidak secara otomatis memberi tahu Anda saat zona tidak berfungsi. Namun, Anda dapat menggunakan Azure Service Health untuk memahami kesehatan keseluruhan layanan, termasuk kegagalan zona apa pun, dan Anda dapat menyiapkan pemberitahuan Service Health untuk memberi tahu Anda tentang masalah.
Permintaan aktif: Koneksi yang ada ke zona yang gagal diputus. Klien harus mencoba kembali permintaan dengan mengikuti panduan dalam Ketahanan terhadap kesalahan sementara. Koneksi baru dibuat ke infrastruktur di zona sehat yang tersisa.
Perkiraan kehilangan data: Application Gateway untuk Kontainer tidak menyimpan data aplikasi. Platform ini mengelola status konfigurasi melalui control plane redundan zona untuk memberikan durabilitas dan ketahanan.
Waktu henti yang diharapkan: Klien mungkin mengalami gangguan singkat ketika koneksi ke zona yang mengalami kegagalan terputus. Klien harus mengulangi permintaan untuk membuat koneksi baru ke infrastruktur di zona sehat yang tersisa.
Control plane yang dikelola Azure tetap tersedia selama pemadaman zona tunggal. Namun, kemampuan Anda untuk menerapkan pembaruan konfigurasi juga tergantung pada ketersediaan control plane Kubernetes dan Pengontrol ALB Anda.
Redistribusi: Application Gateway untuk Kontainer mengalihkan lalu lintas ke infrastruktur di zona sehat yang tersisa.
Pemulihan Zona
Application Gateway untuk Kontainer pulih sendiri dari masalah yang mendasari. Azure mengelola pemulihan infrastruktur gateway.
Uji kegagalan zona
Platform Application Gateway for Containers mengelola perutean lalu lintas dan respons terhadap kegagalan zona untuk gateway itu sendiri. Anda tidak perlu memulai atau mengelola respons gateway. Jika Anda memiliki kluster Kubernetes yang Anda kelola, Anda dapat menggunakan Azure Chaos Studio untuk menguji respons kluster terhadap kegagalan zona. Untuk informasi selengkapnya, lihat Menguji ketahanan Availability Zone.
Ketahanan terhadap kegagalan di seluruh wilayah
Application Gateway untuk Kontainer adalah layanan satu wilayah. Jika wilayah Azure tempat Anda menyebarkan gateway menjadi tidak tersedia, gateway tersebut tidak tersedia.
Solusi multiregion kustom untuk ketahanan
Application Gateway untuk Kontainer tidak menyediakan penyebaran multiregion bawaan atau solusi failover. Untuk merancang agar siap menghadapi gangguan di suatu wilayah, sebarkan dan konfigurasikan gateway terpisah dan kluster Kubernetes di setiap wilayah. Anda bertanggung jawab untuk mengarahkan lalu lintas antara gateway regional dan mengonfigurasi failover.
Konfigurasikan Application Gateway untuk Kontainer secara konsisten di seluruh wilayah. Untuk menyederhanakan penyebaran dan menjaga konfigurasi tetap selaras, tentukan infrastruktur Anda sebagai kode (IaC) dengan menggunakan alat seperti Bicep atau Terraform.
Pilih dan konfigurasikan layanan manajemen lalu lintas global, seperti Azure Front Door atau Azure Traffic Manager, untuk mengarahkan klien ke gateway regional Anda. Layanan ini menggunakan model perutean dan konfigurasi pemeriksaan kesehatan yang berbeda. Konfigurasikan layanan yang dipilih untuk mengarahkan lalu lintas menjauh dari gateway yang tidak tersedia, dan tinjau dokumentasinya untuk memahami perilaku perutean dan pertimbangan failover. Azure Front Door juga menyediakan kemampuan seperti perlindungan distributed denial-of-service (DDoS), kemampuan firewall aplikasi web (WAF), dan perutean berbasis aturan.
Sebarkan aplikasi backend Anda di setiap wilayah dan konfigurasikan untuk menyediakan workload yang tetap andal selama pemadaman. Jika aplikasi Anda bergantung pada data atau layanan Azure lainnya, rancang dan konfigurasikan layanan tersebut untuk ketersediaan multiregion juga. Tinjau panduan keandalan untuk setiap layanan untuk memahami opsi dan batasan multiregion-nya.
Pencadangan dan pemulihan
Application Gateway untuk Kontainer tidak menyimpan data aplikasi. Azure Resource Manager menyimpan konfigurasi sumber daya Azure milik gateway. Anda dapat membuat ulang sumber daya ini dengan menyebarkan ulang konfigurasinya.
Anda bertanggung jawab untuk menjaga konfigurasi dan sumber daya Kubernetes yang menentukan bagaimana gateway disebarkan dan merutekan lalu lintas:
Tentukan sumber daya Azure dan pengaturannya dalam infrastruktur sebagai kode (IaC), seperti Bicep atau Terraform, dan pertahankan definisi dalam kontrol versi. Anda dapat menggunakannya untuk menerapkan ulang sumber daya gateway.
Cadangkan sumber daya Kubernetes yang mengonfigurasi gateway, seperti
ApplicationLoadBalancer,Gateway, danHTTPRoutesumber daya. Pulihkan item tersebut ke kluster Anda saat Anda perlu membuat ulang konfigurasi perutean.Pertahankan konfigurasi terkait, termasuk aturan kustom dan kebijakan firewall aplikasi web, dalam kontrol versi atau melalui proses pencadangan konfigurasi standar Anda. Anda dapat menggunakan alur penyebaran untuk membuat ulang sumber daya Azure dan Kubernetes secara konsisten.
Ketahanan terhadap pemeliharaan layanan
Microsoft mengelola pemeliharaan untuk Application Gateway for Containers sambil mempertahankan ketersediaan tinggi layanan.
Ukuran subnet minimum /24 yang diperlukan untuk setiap asosiasi sudah memperhitungkan jendela pemeliharaan, jadi Anda tidak perlu mengalokasikan ruang alamat IP subnet tambahan untuk pemeliharaan.
Untuk informasi selengkapnya, lihat Penskalaan dan ketersediaan untuk Application Gateway untuk Kontainer.
Perjanjian tingkat layanan
Perjanjian tingkat layanan (SLA) untuk layanan Azure menjelaskan ketersediaan yang diharapkan dari setiap layanan dan kondisi yang harus dipenuhi solusi Anda untuk mencapai harapan ketersediaan tersebut. Untuk informasi selengkapnya, lihat SLA untuk layanan online.
Application Gateway for Containers SLA mengukur control plane dan data plane secara terpisah. Kedua plane diperhitungkan dalam perhitungan SLA secara keseluruhan.