Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Input Plugin Request: Kubernetes #1774

Closed
jchauncey opened this issue Sep 15, 2016 · 1 comment · Fixed by #1847
Closed

Input Plugin Request: Kubernetes #1774

jchauncey opened this issue Sep 15, 2016 · 1 comment · Fixed by #1847
Labels
feat Improvement on an existing feature such as adding a new setting/mode to an existing plugin
Milestone

Comments

@jchauncey
Copy link

Proposal:

Right now it is possible to gather some kubernetes metrics via the prometheus url within kubernetes api. However, we have found that the metrics we receive from that endpoint are not particularly useful because they are not in the correct unit. For example, they only report CPU usage as usage in seconds.

Our current solution also has a scalability issue: Since we run the telegraf daemon in a daemonset (runs on every node of the cluster) we eventually knock over the API server because we are polling it too often.

Desired behavior:

Instead we should poll the local kubelet api. It contains a /stats handler that contains the following useful urls:

  • /stats/summary
  • /stats/container

Both of these endpoints contain detailed information about the pods and containers running on a particular host. This gives us the advantage of being able to scale a kubernetes installation to hundreds of nodes each one running telegraf without killing the API server.

Use case: [Why is this important (helps with prioritizing requests)]

Right now Deis ships telegraf as part of our default monitoring solution. By getting this change into telegraf it would allow us to install deis as part of a kubernetes fleet of dozens or even hundreds of nodes without having change the telegraf configuration.

I will begin work on this plugin fairly soon but I wanted to get this formality out of the way first =).

@sparrc
Copy link
Contributor

sparrc commented Sep 16, 2016

sounds good 👍

@sparrc sparrc added the feat Improvement on an existing feature such as adding a new setting/mode to an existing plugin label Sep 16, 2016
@nhaugo nhaugo added this to the 1.1.0 milestone Sep 28, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 4, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 4, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 4, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 12, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 14, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 14, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 14, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 17, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 17, 2016
jchauncey pushed a commit to jchauncey/telegraf that referenced this issue Oct 17, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feat Improvement on an existing feature such as adding a new setting/mode to an existing plugin
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants