kube-state-metrics: kube-state-metric ingress and CertificateSigningRequest errors for latest versions

What happened: I am trying to deploy k-s-m on k8s cluster v1.18.12. I tried to deploy v2.0.0-beta but got below error:

E1217 13:39:35.373974       1 reflector.go:127] k8s.io/kube-state-metrics/internal/store/builder.go:358
: Failed to watch *v1.CertificateSigningRequest: failed to list *v1.CertificateSigningRequest: the server could not find the requested resource
E1217 13:40:01.637635       1 reflector.go:127] k8s.io/kube-state-metrics/internal/store/builder.go:358
: Failed to watch *v1.Ingress: failed to list *v1.Ingress: the server could not find the requested resource
E1217 13:40:23.154926       1 reflector.go:127] k8s.io/kube-state-metrics/internal/store/builder.go:358
: Failed to watch *v1.CertificateSigningRequest: failed to list *v1.CertificateSigningRequest: the server could not find the requested resource
E1217 13:40:47.816256       1 reflector.go:127] k8s.io/kube-state-metrics/internal/store/builder.go:358
: Failed to watch *v1.Ingress: failed to list *v1.Ingress: the server could not find the requested resource 

I think it is because of the compatibility issue https://github.com/kubernetes/kube-state-metrics#compatibility-matrix… So I tried v2.0.0-alpha.1 & v.1.9.7 but then I am getting errors regarding access permissions:

E1217 16:00:29.348705       1 reflector.go:127] k8s.io/kube-state-metrics/internal/store/builder.go:359
: Failed to watch *v1beta1.Ingress: failed to list *v1beta1.Ingress: ingresses.extensions is forbidden:
 User "system:serviceaccount:kube-system:kube-state-metrics" cannot list resource "ingresses" in API group "extensions" at the cluster scope
E1217 16:01:21.888976       1 reflector.go:127] k8s.io/kube-state-metrics/internal/store/builder.go:359
: Failed to watch *v1beta1.Ingress: failed to list *v1beta1.Ingress: ingresses.extensions is forbidden:
 User "system:serviceaccount:kube-system:kube-state-metrics" cannot list resource "ingresses" in API group "extensions" at the cluster scope
E1217 16:02:18.873008       1 reflector.go:127] k8s.io/kube-state-metrics/internal/store/builder.go:359
: Failed to watch *v1beta1.Ingress: failed to list *v1beta1.Ingress: ingresses.extensions is forbidden:
 User "system:serviceaccount:kube-system:kube-state-metrics" cannot list resource "ingresses" in API group "extensions" at the cluster scope

I am using manifests from here https://github.com/kubernetes/kube-state-metrics/tree/master/examples/autosharding

What you expected to happen: kube-state-metrics to run without errors (error logs?).

How to reproduce it (as minimally and precisely as possible):

Anything else we need to know?: N/A

Environment:

  • kube-state-metrics version: v2.0.0-beta, v2.0.0-alpha.1, v1.9.7
  • Kubernetes version (use kubectl version):
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.3", GitCommit:"b3cbbae08ec52a7fc73d334838e18d17e8512749", GitTreeState:"clean", BuildDate:"2019-11-13T11:23:11Z", GoVersion:"go1.12.12", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.12", GitCommit:"7cd5e9086de8ae25d6a1514d0c87bac67ca4a481", GitTreeState:"clean", BuildDate:"2020-11-12T09:11:15Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}
  • Cloud provider or hardware configuration: using aws and cluster is deployed using kops Version 1.18.2 (git-84495481e4).

  • Other info: I am using kustomize Version: {KustomizeVersion:3.1.0 GitCommit:95f3303493fdea243ae83b767978092396169baf BuildDate:2019-07-26T18:11:16Z GoOs:darwin GoArch:amd64} to deploy the manifests.

Could you help me in figuring the best version to use for k8s v1.18.12 ? (and/or what is going wrong above with k-s-m versions? Maybe updating the cluster-role ? ) Thank you~

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Reactions: 4
  • Comments: 16 (7 by maintainers)

Most upvoted comments

@c002910 I think you need to look at this note in our README https://github.com/kubernetes/kube-state-metrics#compatibility-matrix

Note: The v2.0.0-alpha.2+ and master releases of kube-state-metrics work on Kubernetes v1.17 and v1.18 excluding Ingress or CertificateSigningRequest resource metrics. If you require those metrics and are on an older Kubernetes version, use v2.0.0-alpha.1 or v1.9.7 kube-state-metrics release.