k3s cluster dashboard: kube-state-metrics + kubelet/cAdvisor scraping, fix empty-label relabel bug

This commit is contained in:
Adam Carr
2026-09-20 13:30:57 -07:00
parent e3f381f807
commit c284205db4
3 changed files with 181 additions and 0 deletions

View File

@@ -0,0 +1,71 @@
apiVersion: v1
kind: ServiceAccount
metadata:
name: kube-state-metrics
namespace: monitoring
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: kube-state-metrics
rules:
- apiGroups: [""]
resources: [pods, nodes, namespaces, services, endpoints, configmaps, secrets, persistentvolumeclaims, persistentvolumes, resourcequotas, limitranges]
verbs: [list, watch]
- apiGroups: [apps]
resources: [deployments, daemonsets, replicasets, statefulsets]
verbs: [list, watch]
- apiGroups: [batch]
resources: [jobs, cronjobs]
verbs: [list, watch]
- apiGroups: [autoscaling]
resources: [horizontalpodautoscalers]
verbs: [list, watch]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: kube-state-metrics
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: kube-state-metrics
subjects:
- kind: ServiceAccount
name: kube-state-metrics
namespace: monitoring
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kube-state-metrics
namespace: monitoring
spec:
replicas: 1
selector:
matchLabels: {app: kube-state-metrics}
template:
metadata:
labels: {app: kube-state-metrics}
spec:
serviceAccountName: kube-state-metrics
containers:
- name: kube-state-metrics
image: registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.17.0
ports: [{containerPort: 8080}]
resources:
requests: {cpu: 30m, memory: 64Mi}
limits: {memory: 512Mi}
---
apiVersion: v1
kind: Service
metadata:
name: kube-state-metrics
namespace: monitoring
labels: {app: kube-state-metrics}
spec:
selector: {app: kube-state-metrics}
ports:
- name: http-metrics
port: 8080
targetPort: 8080