Collecting Kubernetes metrics in golang

2/28/2019

I am using GKE platform to implement a Kubernetes scheduler. I am using Prometheus Grafana to monitor the applications.

For implementing a scheduler in golang, I need to get the metrics as an input to the scheduler.

Please suggest me some methods to do so.

Also please suggest proper documentations so that I can easily understand the things.

I am a newbie, so I don't know anything it.

Your help will be appreciated.

-- amit
go
google-kubernetes-engine
kubernetes
prometheus

1 Answer

3/5/2019

First, I would encourage you to read some relevant documentation about Kubernetes monitoring architecture which explains a lot of useful information about main concepts of Kubernetes metrics. Since you have used Prometheus as a main monitoring cluster agent, you might be operating with some specific metrics exposed by the application in your Kubernetes cluster infrastructure; therefore when you plan to implement custom scheduler it should be the main factor to adapt these metrics in order to define the further scheduler behavior. The good example to achieve this goal can be Sysdig monitoring tool, as it can perform automatic collection of Prometheus metrics and propagate these metrics across applications in the cluster.

You can also visit Custom scheduler project on GitHub based on Sysdig monitoring metrics and driven by open-source community enthusiasts.

-- mk_sta
Source: StackOverflow