Halaman ini menjelaskan penggunaan objek StatefulSet di Google Kubernetes Engine (GKE). Anda juga dapat mempelajari cara Men-deploy aplikasi stateful.
Tentang StatefulSet
StatefulSet mewakili sekumpulan Pod dengan identitas yang unik dan persisten, serta nama host yang stabil dan dipertahankan oleh GKE, terlepas dari tempatnya dijadwalkan. Informasi status dan data tangguh lainnya untuk setiap Pod StatefulSet tertentu dipertahankan dalam volume persisten yang terkait dengan setiap Pod di StatefulSet. Pod StatefulSet dapat dimulai ulang kapan saja.
Untuk aplikasi stateless, gunakan Deployment.
StatefulSet berfungsi dengan cara yang sama di GKE dan di Kubernetes. Dokumen ini menjelaskan pertimbangan khusus GKE. Untuk mempelajari cara kerja StatefulSet, lihat dokumentasi Kubernetes tentang StatefulSet.
Merencanakan jaringan untuk StatefulSet
StatefulSet menyediakan penyimpanan persisten dalam bentuk PersistentVolume dan identitas jaringan (nama host) yang unik. Tabel berikut menyertakan peringatan yang harus diperhatikan operator aplikasi saat mengonfigurasi StatefulSet:
Peringatan jaringan | Deskripsi | Praktik terbaik |
---|---|---|
Service GKE, bukan alamat IP tetap |
Meskipun replika Pod memiliki indeks ordinal yang unik, mendukung volume per replika, dan identitas jaringan (nama host), alamat IP yang ditetapkan ke replika dapat berubah jika GKE menjadwalkan ulang atau mengeluarkan Pod. |
Untuk mengurangi masalah jaringan, arsitektur harus menggunakan resource Service Kubernetes. Untuk informasi selengkapnya, lihat Jenis Service Kubernetes. |
Service Headless |
Saat diinisialisasi, StatefulSet akan dipasangkan dengan layanan headless yang cocok. |
Pastikan `metadata.name` di Service Anda cocok dengan kolom |
Penemuan peer |
Aplikasi stateful memerlukan jumlah minimum (kuorum) replika agar dapat berfungsi dengan ketersediaan penuh. |
Karena Pod dapat mengalami error, dijadwalkan ulang, atau dikeluarkan, setiap replika di StatefulSet harus dapat keluar dan bergabung kembali ke kuorum. Aplikasi yang memerlukan peering harus memiliki kemampuan untuk menemukan peer lain melalui Service headless di Kubernetes. |
Health check berdasarkan pemeriksaan kesiapan dan pemeriksaan keaktifan |
Aplikasi Anda harus memiliki pemeriksaan kesiapan, keaktifan, dan proses mulai sistem yang dikonfigurasi dengan benar, jika memungkinkan. Memilih waktu tunggu untuk setiap pemeriksaan bergantung pada persyaratan aplikasi Anda. |
Untuk pemeriksaan kesiapan, ikuti praktik terbaik berikut guna mengonfigurasi aplikasi Anda untuk menandai kesiapan saat aplikasi siap menyalurkan traffic:
|
Untuk membaca pemeriksaan lebih lanjut, lihat Mengonfigurasi Pemeriksaan Keaktifan, Kesiapan, dan Proses Mulai Sistem.
Menggunakan StatefulSet
Untuk mempelajari cara men-deploy StatefulSet di cluster GKE dan berinteraksi dengannya, lihat dokumentasi Kubernetes tentang dasar-dasar StatefulSet.
Langkah selanjutnya
- Pelajari cara men-deploy aplikasi stateful
- Pelajari cara mengupdate StatefulSet menggunakan update rolling
- Pelajari lebih lanjut cara men-deploy workload di GKE
- Baca lebih lanjut StatefulSet di dokumentasi Kubernetes
- Ikuti tutorial cara mengupgrade cluster yang menjalankan workload stateful