Memahami dampak kegagalan di Google Distributed Cloud

Google Distributed Cloud dirancang untuk membatasi cakupan kegagalan dan memprioritaskan fungsi yang sangat penting bagi kelangsungan bisnis. Dokumen ini menjelaskan bagaimana fungsi cluster Anda akan terpengaruh saat terjadi kegagalan. Informasi ini dapat membantu Anda memprioritaskan area untuk dipecahkan jika Anda mengalami masalah.

Jika Anda memerlukan bantuan lainnya, hubungi Cloud Customer Care.

Fungsi inti Google Distributed Cloud mencakup kategori berikut:

  • Menjalankan beban kerja: Beban kerja yang ada dapat terus berjalan. Ini adalah pertimbangan paling penting untuk menjaga kelangsungan bisnis. Meskipun cluster Anda memiliki masalah, workload yang ada mungkin akan terus berjalan tanpa gangguan.
  • Mengelola beban kerja: Anda dapat membuat, memperbarui, dan menghapus beban kerja. Ini adalah pertimbangan terpenting kedua untuk menskalakan workload saat traffic meningkat, meskipun cluster memiliki masalah.
  • Mengelola cluster pengguna: Anda dapat mengelola node, mengupdate, mengupgrade, dan menghapus cluster pengguna. Hal ini kurang penting dibandingkan dengan pertimbangan siklus proses aplikasi. Jika ada kapasitas yang tersedia pada node yang ada, ketidakmampuan untuk memodifikasi cluster pengguna tidak memengaruhi beban kerja pengguna.
  • Mengelola cluster admin: Anda dapat mengupdate dan mengupgrade cluster admin.
    • Untuk deployment yang menggunakan cluster pengguna dan admin terpisah, ini adalah pertimbangan yang paling tidak penting karena cluster admin tidak menghosting workload pengguna apa pun. Jika cluster admin Anda mengalami masalah, beban kerja aplikasi Anda di cluster lain akan terus berjalan tanpa gangguan.
    • Jika Anda menggunakan model deployment lain, seperti hybrid atau mandiri, cluster admin akan menjalankan workload aplikasi. Jika cluster admin memiliki masalah dan bidang kontrol tidak aktif, Anda juga tidak dapat mengelola beban kerja aplikasi atau komponen cluster pengguna.

Bagian berikut menggunakan kategori fungsi inti ini untuk menjelaskan dampak dari jenis skenario kegagalan tertentu. Jika ada gangguan sebagai bagian dari skenario kegagalan, durasi (urutan) gangguan juga dicatat, jika memungkinkan.

Kegagalan node

Node di Google Distributed Cloud mungkin berhenti berfungsi atau tidak dapat dijangkau di jaringan. Bergantung pada kumpulan node dan cluster tempat mesin yang gagal menjadi bagian darinya, terdapat beberapa mode kegagalan yang berbeda.

Node bidang kontrol

Tabel berikut menguraikan perilaku untuk node yang merupakan bagian dari bidang kontrol di Google Distributed Cloud:

Menjalankan workload Mengelola workload Mengelola cluster pengguna Kelola cluster admin
Gangguan (durasi) Tidak ada gangguan Kemungkinan gangguan (tidak diketahui) Kemungkinan gangguan (tidak diketahui) Kemungkinan gangguan (tidak diketahui)
Penjelasan Jika kegagalan node memengaruhi node bidang kontrol tunggal di cluster pengguna yang tidak memiliki ketersediaan tinggi (HA), atau jika kegagalan tersebut memengaruhi tidak kurang dari setengah node bidang kontrol di cluster pengguna dengan ketersediaan tinggi (HA), maka akan terjadi gangguan. Kuorum bidang kontrol cluster pengguna hilang. Jika kegagalan node memengaruhi node bidang kontrol tunggal di cluster admin non-HA, atau jika kegagalan tersebut memengaruhi tidak kurang dari setengah node bidang kontrol di cluster admin dengan ketersediaan tinggi (HA), maka terjadi gangguan. Kuorum bidang kontrol cluster admin hilang. Jika kegagalan node memengaruhi node bidang kontrol tunggal di cluster admin non-HA, atau jika kegagalan tersebut memengaruhi tidak kurang dari setengah node bidang kontrol di cluster admin dengan ketersediaan tinggi (HA), maka terjadi gangguan. Kuorum bidang kontrol cluster admin hilang.
Pemulihan Untuk informasi selengkapnya, lihat cara memulihkan dari kehilangan kuorum. Untuk informasi selengkapnya, lihat cara memulihkan dari kehilangan kuorum. Untuk informasi selengkapnya, lihat cara memulihkan dari kehilangan kuorum.
Pencegahan Deploy cluster pengguna dalam mode HA untuk meminimalkan kemungkinan gangguan. Deploy cluster admin dalam mode HA untuk meminimalkan kemungkinan gangguan. Deploy cluster admin dalam mode HA untuk meminimalkan kemungkinan gangguan.

Node load balancer

Tabel berikut menguraikan perilaku untuk node yang menghosting load balancer di Google Distributed Cloud. Panduan ini hanya berlaku untuk load balancer yang dipaketkan dengan mode lapisan 2. Untuk load balancing manual, lihat mode kegagalan load balancer eksternal Anda:

Menjalankan workload Mengelola workload Mengelola cluster pengguna Kelola cluster admin
Gangguan (durasi) Kemungkinan gangguan (bervariasi) Kemungkinan gangguan (bervariasi) Kemungkinan gangguan (bervariasi) Kemungkinan gangguan (bervariasi)
Penjelasan Jika beban kerja eksternal mengandalkan load balancer bidang data untuk berkomunikasi dengan workload dalam cluster dan Anda hanya memiliki satu node load balancer, maka akan terjadi gangguan. Alamat IP virtual bidang kontrol dari cluster pengguna berada pada satu node load balancer. Jika nodepool load balancer cluster pengguna tidak memiliki nilai HA, akan terjadi gangguan. Alamat IP virtual bidang kontrol dari cluster admin berada pada satu node load balancer. Jika nodepool load balancer cluster admin tidak memiliki nilai HA, akan terjadi gangguan. Alamat IP virtual bidang kontrol dari cluster admin berada pada satu node load balancer. Jika nodepool load balancer cluster admin tidak memiliki nilai HA, akan terjadi gangguan.
Pemulihan

Jika ada beberapa node load balancer, Failover MetalLB terjadi dalam beberapa detik.

Jika bukan memiliki ketersediaan tinggi (HA), pertimbangkan untuk men-deploy node load balancer tambahan.

Jika HA, failover akan bersifat otomatis dan berlangsung dalam hitungan detik.

Jika tidak memiliki ketersediaan tinggi (HA), pertimbangkan untuk men-deploy node load balancer tambahan

Jika HA, failover akan bersifat otomatis dan berlangsung dalam hitungan detik.

Jika bukan memiliki ketersediaan tinggi (HA), pertimbangkan untuk men-deploy node load balancer tambahan.

Jika HA, failover akan bersifat otomatis dan berlangsung dalam hitungan detik.

Jika bukan memiliki ketersediaan tinggi (HA), pertimbangkan untuk men-deploy node load balancer tambahan.

Pencegahan Untuk meminimalkan kemungkinan gangguan, deploy node pool load balancer dalam mode HA. Untuk meminimalkan kemungkinan gangguan, deploy node pool load balancer dalam mode HA. Untuk meminimalkan kemungkinan gangguan, deploy node pool load balancer dalam mode HA. Untuk meminimalkan kemungkinan gangguan, deploy node pool load balancer dalam mode HA.

Node pekerja

Tabel berikut menguraikan perilaku untuk worker node di Google Distributed Cloud:

Menjalankan workload Mengelola workload Mengelola cluster pengguna Kelola cluster admin
Gangguan (durasi) Kemungkinan gangguan (urutan detik) Tidak ada gangguan Tidak ada gangguan Tidak ada gangguan
Penjelasan

Pods yang berjalan pada node yang gagal akan terganggu, dan otomatis dijadwal ulang ke node responsif lainnya dengan waktu tunggu penghapusan default 5 menit.

Jika aplikasi pengguna memiliki kapasitas workload cadangan dan tersebar di beberapa node, gangguan tidak dapat diamati oleh klien yang menerapkan percobaan ulang.

Pods otomatis dimulai ulang pada node yang responsif.

Jika cluster tidak memiliki kapasitas cadangan, gangguan mungkin akan berlangsung hingga node baru ditambahkan ke cluster.

Pemulihan Jika cluster tidak memiliki kapasitas cadangan, Anda harus men-deploy lebih banyak node yang tersebar di beberapa zona kegagalan dan memindahkan workload yang gagal ke node baru.
Pencegahan

Men-deploy node yang tersebar di berbagai zona kegagalan.

Deploy workload dengan beberapa replika yang tersebar di berbagai zona kegagalan untuk meminimalkan kemungkinan gangguan.

Kegagalan penyimpanan

Penyimpanan di Google Distributed Cloud mungkin berhenti berfungsi atau tidak dapat dijangkau di jaringan. Bergantung pada penyimpanan yang gagal, ada beberapa mode kegagalan yang berbeda.

etcd

Konten direktori /var/lib/etcd dan /var/lib/etcd-events mungkin rusak jika terjadi penurunan node yang tidak disengaja atau kegagalan penyimpanan yang mendasarinya. Tabel berikut menguraikan perilaku fungsi inti karena kegagalan etcd:

Menjalankan workload Mengelola workload Mengelola cluster pengguna Kelola cluster admin
Gangguan (durasi) Tidak ada gangguan Kemungkinan gangguan (tidak diketahui) Kemungkinan gangguan (tidak diketahui) Kemungkinan gangguan (tidak diketahui)
Penjelasan Jika beban kerja yang ada tidak bergantung pada bidang kontrol Kubernetes, beban kerja tersebut akan terus berfungsi tanpa gangguan. Jika etcd gagal pada satu cluster pengguna bidang kontrol, atau gagal pada setidaknya setengah node bidang kontrol di cluster pengguna dengan ketersediaan tinggi (HA), gangguan akan terjadi. Kuorum bidang kontrol cluster pengguna hilang. Jika etcd gagal pada cluster admin bidang kontrol tunggal, atau gagal pada setidaknya setengah node bidang kontrol di cluster admin dengan ketersediaan tinggi (HA), gangguan akan terjadi. Kuorum bidang kontrol dari cluster admin hilang. Jika etcd gagal pada cluster admin bidang kontrol tunggal, atau gagal pada setidaknya setengah node bidang kontrol di cluster admin dengan ketersediaan tinggi (HA), gangguan akan terjadi. Kuorum bidang kontrol dari cluster admin hilang.
Pemulihan Untuk informasi selengkapnya, lihat cara memulihkan dari kehilangan kuorum. Untuk informasi selengkapnya, lihat cara memulihkan dari kehilangan kuorum. Untuk informasi selengkapnya, lihat cara memulihkan dari kehilangan kuorum.
Pencegahan Untuk meminimalkan kemungkinan gangguan, deploy cluster pengguna dalam mode HA. Untuk meminimalkan kemungkinan gangguan, deploy cluster admin dalam mode HA. Untuk meminimalkan kemungkinan gangguan, deploy cluster admin dalam mode HA.

Aplikasi pengguna PersistentVolume

Tabel berikut menguraikan perilaku fungsi inti akibat kegagalan PersistentVolume:

Menjalankan workload Mengelola workload Mengelola cluster pengguna Kelola cluster admin
Gangguan (durasi) Kemungkinan gangguan (tidak diketahui) Tidak ada gangguan Tidak ada gangguan Tidak ada gangguan
Penjelasan Workload yang menggunakan PersistentVolume are affected. yang gagal
Pemulihan
Pencegahan Untuk meminimalkan kemungkinan gangguan, deploy workload pengguna dalam mode HA.

Disk Fluent Bit rusak

Kerusakan disk Fluent Bit tidak memengaruhi fungsi inti apa pun, tetapi berdampak pada kemampuan untuk mengumpulkan dan memeriksa log di Google Cloud.

Peristiwa SIGSEGV terkadang dapat diamati dari log stackdriver-log-forwarder. Error ini mungkin disebabkan oleh log buffering yang rusak pada disk.

Fluent Bit memiliki mekanisme untuk menyaring dan meninggalkan potongan yang rusak. Fitur ini tersedia dalam versi fluent-bit (v1.8.3) yang digunakan di Google Distributed Cloud.

Dari LoadBalancer IP

Jika semua alamat IP dalam kumpulan yang ditetapkan saat ini sudah terisi, layanan LoadBalancer yang baru dibuat tidak dapat memperoleh alamat IP LoadBalancer. Skenario ini memengaruhi kemampuan klien layanan untuk berkomunikasi dengan layanan LoadBalancer.

Untuk memulihkan dari kehabisan alamat IP ini, tetapkan lebih banyak alamat IP ke kumpulan alamat dengan mengubah resource khusus cluster.

Masa berlaku sertifikat

Google Distributed Cloud membuat certificate authority (CA) yang ditandatangani sendiri selama proses penginstalan cluster. CA memiliki masa berlaku 10 tahun dan bertanggung jawab untuk membuat sertifikat, yang akan habis masa berlakunya setelah satu tahun. Ganti sertifikat secara rutin untuk mencegah periode nonaktif cluster. Anda dapat merotasi sertifikat dengan mengupgrade cluster, yang merupakan metode yang direkomendasikan. Jika tidak dapat mengupgrade cluster, Anda dapat melakukan rotasi CA on demand. Untuk informasi lebih lanjut tentang sertifikat cluster, lihat sertifikat dan persyaratan IKP dalam dokumentasi Kubernetes.

Jika masa berlaku sertifikat cluster telah berakhir, sertifikat harus diperpanjang secara manual.

Menjalankan workload Mengelola workload Mengelola cluster pengguna Kelola cluster admin
Gangguan (durasi) Tidak Ada Gangguan Kemungkinan gangguan (tidak diketahui) Kemungkinan gangguan (tidak diketahui) Kemungkinan gangguan (tidak diketahui)
Penjelasan Jika workload pengguna tidak terhubung dengan komponen bidang kontrol kubernetes, tidak akan ada gangguan. Jika certificate authority untuk cluster pengguna tidak berlaku lagi, akan terjadi gangguan. Jika certificate authority untuk cluster admin sudah tidak berlaku, akan terjadi gangguan. Jika certificate authority untuk cluster pengguna tidak berlaku lagi, berarti terjadi gangguan.
Pemulihan

Ikuti langkah-langkah untuk memperpanjang sertifikat secara manual di cluster pengguna.

Ikuti langkah-langkah untuk memperpanjang sertifikat secara manual di cluster pengguna.

Ikuti langkah-langkah untuk memperpanjang sertifikat secara manual di cluster pengguna.

Pencegahan Penyiapan pemantauan masa berlaku sertifikat. Contoh metrik kubelet_certificate_manager_server_expiration_seconds dapat ditemukan di daftar metrik.

Upgrade gagal

Menjalankan workload Mengelola workload Mengelola cluster pengguna Kelola cluster admin
Gangguan (durasi) Tidak Ada Gangguan Tidak Ada Gangguan Kemungkinan gangguan (tidak diketahui) Kemungkinan gangguan (tidak diketahui)
Penjelasan

Jika upgrade gagal pada bidang kontrol cluster pengguna, workload yang ada TIDAK akan terganggu.

Jika upgrade gagal pada node pekerja tertentu, workload pada node tersebut akan terkuras dan dipindahkan ke node responsif lainnya jika ada kapasitas ekstra pada node yang responsif.

Upgrade akan berhenti jika salah satu node bidang kontrol gagal diupgrade. Cluster masih berfungsi jika upgrade gagal jika cluster pengguna memiliki ketersediaan tinggi. Jika upgrade gagal di bidang kontrol cluster admin, akan terjadi gangguan hingga upgrade selesai. Jika upgrade gagal di bidang kontrol cluster admin, akan terjadi gangguan hingga upgrade selesai.
Pemulihan Upgrade dapat dicoba lagi. Untuk mengetahui informasi selengkapnya, lihat cara mendiagnosis masalah upgrade dan melanjutkan. Upgrade dapat dicoba lagi. Untuk mengetahui informasi selengkapnya, lihat cara mendiagnosis masalah upgrade dan melanjutkan.
Pencegahan Untuk mengetahui informasi selengkapnya, lihat cara membuat cadangan sebelum mengupgrade. Untuk mengetahui informasi selengkapnya, lihat cara membuat cadangan sebelum mengupgrade.

Langkah selanjutnya