Beban kerja Kubernetes untuk ketersediaan tinggi

Halaman ini merekomendasikan strategi workload container Kubernetes yang membuat aplikasi Anda lebih toleran terhadap kesalahan di lingkungan multi-zona dengan air gap Google Distributed Cloud (GDC). GDC mendukung aplikasi container native Kubernetes yang banyak digunakan dan didukung di Google Kubernetes Engine (GKE).

Halaman ini ditujukan bagi developer dalam grup operator aplikasi, yang bertanggung jawab untuk membuat workload aplikasi bagi organisasi mereka. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Audiens untuk GDC yang terisolasi dari internet.

Pertimbangan Kubernetes untuk aplikasi HA

Mencapai ketersediaan tinggi (HA) di Kubernetes tidak hanya terbatas pada bidang kontrol. Anda juga harus mendesain dan men-deploy workload container di lingkungan air-gap Google Distributed Cloud (GDC) dengan tangguh. Kubernetes menawarkan beberapa mekanisme canggih untuk meminimalkan periode nonaktif dan menyediakan layanan dengan ketersediaan tinggi, bahkan saat menghadapi masalah infrastruktur atau selama pemeliharaan rutin. Topik berikut adalah strategi utama yang perlu dipertimbangkan untuk HA:

  • Mempertahankan ketersediaan dengan replika dan penskalaan otomatis: Anda harus memiliki instance aplikasi yang berjalan dalam jumlah yang cukup untuk menyediakan HA.

    • ReplicaSet: Resource ReplicaSet mempertahankan sekumpulan replika pod identik yang stabil dan berjalan pada waktu tertentu. Jika pod gagal atau dihentikan, pengontrol ReplicaSet akan otomatis membuat pod baru untuk menggantikannya. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Kubernetes tentang ReplicaSet.

    • Horizontal Pod Autoscaler (HPA): Meskipun ReplicaSet mempertahankan jumlah replika yang tetap, HPA secara otomatis menyesuaikan jumlah ini berdasarkan metrik yang diamati seperti pemakaian CPU atau penggunaan memori. Hal ini memungkinkan aplikasi Anda menangani lonjakan beban. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Kubernetes tentang Penskalaan Otomatis Pod Horizontal.

  • Minimalkan waktu henti dengan PodDisruptionBudget (PDB): Untuk mengetahui informasi selengkapnya, lihat Menentukan Anggaran Gangguan untuk Aplikasi Anda di dokumentasi Kubernetes.

  • Sebarkan risiko Anda dengan aturan anti-afinitas: Untuk mengetahui informasi selengkapnya, lihat dokumentasi Kubernetes tentang Afinitas dan anti-afinitas.

  • Pemeriksaan kondisi dengan pemeriksaan keaktifan, kesiapan, dan startup: Untuk mengetahui informasi selengkapnya, lihat dokumentasi Kubernetes tentang Mengonfigurasi Pemeriksaan Keaktifan, Kesiapan, dan Startup.

  • Endpoint stabil dan load balancing dengan layanan: Untuk mengetahui informasi selengkapnya, lihat dokumentasi Kubernetes Layanan.

  • Update dan rollback yang lancar dengan deployment: Untuk mengetahui informasi selengkapnya, lihat dokumentasi Kubernetes tentang Mengembalikan Deployment.

  • Menetapkan permintaan dan batas untuk resource: Untuk mengetahui informasi selengkapnya, lihat dokumentasi Kubernetes Pengelolaan Resource untuk Pod dan Container.

Langkah berikutnya