Comments (16)
While I'm still not aware that someone is working on this, the things I mentioned before don't apply anymore. The k8s.io/client-go
dependency has been updated and backward-compatibility is not an issue anymore as those collectors can now be disabled when necessary.
from kube-state-metrics.
Closing here as #151 is merged.
from kube-state-metrics.
He mentioned that they're planning to release generators to generate the clients for deprecated APIs .. that's basically what https://github.com/ericchiang/k8s already does, however it is currently lacking the informer functionality that we heavily rely on.
That said, what I meant is that we can't wait for the generators to be released, and for now we'll have to move forward with what we have, which means whatever is the latest version of each resource. And if that causes problems for individual users, they'll have to turn off that collector via the available flags.
from kube-state-metrics.
We should do what we can get out of a 1.6 cluster, so aside from having to update client go this should be possible to be worked on.
from kube-state-metrics.
Definitely interesting! I am not aware of anyone working on this currently. A few caveats if you were to get started:
- It will require an upgrade of the vendored
k8s.io/client-go
library, which is pretty painless, but necessary. I was thinking of doing this some time soon, but if someone wants to take a go at it go ahead. (I probably won't get started before the holidays) - It will need to be done in a backward compatible way, as we currently have compatibility down to 1.2 and it would be nice if we can keep that. What that would mean is that collection for
StatefulSet
s is turned off if the cluster version is lower than1.5.0
.
from kube-state-metrics.
This is blocked by kubernetes/client-go#183
from kube-state-metrics.
@brancz looks like there is no easy way to support multiple kubernetes versions using a single client.
from kube-state-metrics.
I guess then we people will just have to disable the collector and that way we can provide backward compatibility on a best effort basis, but not for multiple versions of the same object. At least there is some light at the horizon, but it doesn't sound like we can wait for that.
from kube-state-metrics.
@brancz what light? Looks like there is only one proper solution, to have different kube-state-metrics releases to match kubernetes (api) versions.
There will be conflicts each time apis graduate or deprecated and deleted (from client-go too).
from kube-state-metrics.
Is this still blocked?
from kube-state-metrics.
Hoping #151 goes in and 0.6 gets released soon! Would love to have jobs/cronjob and statefulset metrics.
from kube-state-metrics.
@blakebarnett I was just about to mention my PR on this issue. I am also waiting for StatefulSet metrics. So I am hoping that someone reviews my PR as soon as possible
from kube-state-metrics.
I reviewed and merged #151, there is one more thing I would like to get into the next release, which is selecting which namespaces to gather the objects from. I don't think I'll get to implementing that before next week, but after that I'll do another release. It's coming! 🙂
from kube-state-metrics.
Shouldn't statefulset metrics have available_replicas
, the same as deployments? It's not as useful to know the intended number of replicas in prom_kube_statefulset_replicas
as it would be to know whether those replicas are actually up.
from kube-state-metrics.
You have kube_statefulset_status_replicas and kube_statefulset_replicas.
The first one is the available replicas and the second one is the intended replicas. Statefulsets work a bit differently under the hood that's why the naming is not exactly the same as with deployments
from kube-state-metrics.
The metric names are typically determined by the fields in the Kubernetes API objects.
from kube-state-metrics.
Related Issues (20)
- Resource relation metrics HOT 1
- kube_cronjob_status_active doesn't tell if a cronjob is running HOT 1
- Sharded kube state metrics returns stale metrics HOT 4
- custom metrics for resources w/ group="" broken, e.g. Node HOT 6
- Support metrics for Sidecar containers HOT 2
- Metric with type Gauge throwing errors with no reason. HOT 1
- Need help to troubleshoot/understand issue with KSM pods HOT 2
- Wanted to know the ETA or date for next version release as that has some security vulnerability fixes HOT 3
- Some job metrics are missing if job has no conditions HOT 4
- Duplicate sample for ingress path metrics HOT 2
- Duplicate samples for customResourceState metrics HOT 3
- Support for Gateway API metrics HOT 1
- kube-state-metrics doesn't produce metric for Custom Resources HOT 3
- Version is not applied to the container release binary HOT 2
- Version info missing in v2.13.0 HOT 2
- kube-state-metrics jsonnet format wrong HOT 4
- Use PartialObjectMetadata for ConfigMaps and Secrets HOT 1
- `CustomResourceState` does not produce metrics for the aggregation layer if there is no `CustomResourceDefinition` defined HOT 1
- Add metric(s) for KSM errors HOT 2
- Metric "kube_node_role" missing (AKS) HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kube-state-metrics.