Kubernetes Cluster: Troubleshooting
Paket Kubernetes Cluster adalah produk yang sangat kompleks, yang mencakup berbagai langkah yang diperlukan untuk menyiapkan solusi. Di sini, setiap tindakan dapat gagal karena berbagai alasan, yang harus dianalisis untuk mencegah terjadinya masalah di masa depan. Di bawah ini, kami akan meninjau langkah-langkah pemecahan masalah utama selama berbagai tahap dan untuk beberapa file log:
K8s Installation
Pemasangan cluster Kubernetes adalah proses yang kompleks tetapi sepenuhnya otomatis, yang sudah termasuk mekanisme penanganan kesalahan. Platform ini secara otomatis memproses masalah yang paling umum dan menunjukkan penyebab akar mereka langsung di dashboard. Untuk masalah yang lebih kompleks, Anda bisa Kirim Laporan ke tim dukungan melalui widget yang sesuai.
Laporan semacam itu mencakup log instalasi, pesan kesalahan, dan semua informasi debug lain yang diperlukan.
Selain itu, paket ini secara otomatis memverifikasi semua komponen cluster setelah instalasi. Detail yang relevan dapat dilihat melalui file /var/log/k8s-health-check.log pada master node. Sebuah skrip utilitas khusus memeriksa kesehatan komponen berikut: Weave CNI Plugin, Ingres Controller, Metrics Server, Kubernetes Dashboard, Node Problem Detector, Monitoring Tools, Remote API, NFS Storage, Sample App.
Jika pemeriksa kesehatan gagal memverifikasi status Running dari sebuah komponen, notifikasi yang sesuai akan ditampilkan dalam frame keberhasilan instalasi. Di sini, peringatan semacam itu tidak selalu disebabkan oleh malfungsi cluster (mis. deployment masih mungkin dalam proses). Anda dapat menjalankan perintah kubectl get pods –all-namespaces untuk memeriksa status pods. Jika semuanya Running, cluster Anda baik-baik saja. Jika tidak, hubungi dukungan platform dan lampirkan log terkait K8s dari direktori /var/log.
Events Tracking
Anda dapat menggunakan kubectl atau Kubernetes Dashboard untuk melacak dan menganalisis peristiwa untuk namespace tertentu atau semuanya sekaligus (izin yang cukup diperlukan):
- Events di Kubernetes Dashboard
- contoh output dari perintah kubectl get events -n $namespace
Pod Logs
Setelah menjadwalkan pod(s) untuk berjalan di node bebas, Anda dapat mengikuti log yang sesuai melalui:
- Kubernetes Dashboard - navigasikan ke halaman pod dan klik tombol Logs di sudut kanan atas
- kubectl - gunakan perintah untuk pods management
Sebagai contoh, log ini dapat membantu menemukan penyebab utama dari peristiwa “Back-off restart failed container” untuk pods Anda.