how to log kubernetes events to elasticsearch

posted in: kubernetes | 0

halo sobat sekolahlinux, kali ini saya coba memberikan sedikit tutorial tentang bagaimana caranya log kubernetes event dikirim ke elasticsearch, ini berguna untuk kita tahu penyebab kenapa sebuah pod restart, misal dalam case saya pod ini restart karena OOM, log event pada dasarnya tidak akan dikirimkan jika kita hanya menggunakan fluentd atau fluentbit atau filebeat, kita memerlukan beberapa plugin tambahan, yaitu metricbeat dan juga kube-state-metric untuk dapat mengirimkan log events kubernetes ke elasticsearch, disini saya menggunakan helm metricbeat dari repo elastic dan juga helm kube-state-metric dari bitnami, yuk kita langsung saja untuk proses installasinya, pada tutorial kali ini saya menggunakan helm v3 ya teman-teman

install kube-state-metric

add helm repo bitnami untuk install kube-state-metric chart

selanjutnya inspect values kube-state-metric

lalu selanjutnya sesuaikan pengaturan kube-state-metrics.yaml sesuai dengan yg kalian inginkan, kalau di case saya, saya merubah service typenya yg sebelumnya ClusterIP menjadi NodePort, kurang lebih menjadi seperti dibawah part yang saya ubah

dan jika sudah kita install kube-state-metrics dengan perintah dibawah, pada saat saya menginstall saya menggunakan versi latest, yaitu versi chart 1.1.3

install metricbeat

add helm repo elastic untuk install metricbeat chart

selanjutnya inspect values metricbeat

lalu selanjutnya sesuaikan pengaturan metricbeat.yaml di metricbeatconfig untuk daemonset menjadi seperti dibawah

dan pada bagian elastic endpointnya menjadi seperti dibawah

lalu selanjutnya sesuaikan pengaturan metricbeat.yaml di metricbeatconfig untuk deployment menjadi seperti dibawah

dan pada bagian elastic endpointnya menjadi seperti dibawah

lalu pada bagian clusterRoleRules saya menambakan beberapa rules menjadi seperti dibawah ini

dan jika sudah kita install metricbeat dengan perintah dibawah, pada saat saya menginstall saya menggunakan versi latest, yaitu versi chart 7.10.1

Simulasi OOM Pod

selanjutnya kita coba buat sebuah simulasi oom Pod, manifestnya kurang lebih seperti dibawah oom.yaml

lalu apply manifest diatas

maka pods statusnya akan seperti dibawah ini

selanjutnya describe pods diatas dengan perintah dibawah

lalu jika kita melakukan describe pada pod percobaan maka kurang lebih outputnya akan ada part seperti dibawah ini

selanjutnya buka kibana dan kita mencari value OOMKilled sesuai dengan reason dari hasil describe diatas maka hasilnya akan seperti dibawah ini

 

nah sekian tutorial kali ini, semoga bermanfaat ya, jika ada yang kurang paham silahkan ditanyakan di kolom comment atau bisa ke linkedin saya

link referensi:

 

Leave a Reply

Your email address will not be published. Required fields are marked *