K8S-monitor
📔心得 之前都介紹docker監控container,這次來點不一樣的,直接裝在k8s裡面去監控pod的一些指標。 基本的指標像是cpu, mem, pod數量, node數量等等,都能透過kube-state-metrics完成,而如果想要監控一些流量的指標,像是tcp連線數,tw數等,則是需要另外在服務的pod裡另外寫node-exporter的container,組成side-car的形式,讓exporter將指標送往prometheus。 在撰寫的過程,遇到比較大的難題是prometheus的config檔撰寫,一開始打算使用docker-compose的方式起monitor服務,然後去call k8s cluster取得相關指標,但常常call不到服務,可能是因為minikube的關係,在本地也跑docker,最後改成直接安裝在k8s裡面,另外建立一個namespace放監控相關的服務,有機會在測試kind以及k3s。 demo用的deploy使用skaffold這本地開發k8s的神器,搭配kustomize可讓我依據所需測試的環境下去做自動佈署,有機會再另外介紹這工具。 之後預計會再新增prometheus adapter,讓我的prometheus metrics可以成為我hpa的擴縮判斷,因為基本的hpa指標只有cpu以及mem,如果可以依照網路流量變大,幫我擴展pod,當流量變小時幫我縮pod,讓我能自定義指標,相信使用k8s的效益會更大。 🔗詳細專案位置 –> https://github.com/sz9751210/k8s-monitor ...