Add Talos-compatible Metrics Server addon
This commit is contained in:
parent
d46d14bb81
commit
88a48ac987
11
apps/metrics-server/Chart.yaml
Normal file
11
apps/metrics-server/Chart.yaml
Normal file
@ -0,0 +1,11 @@
|
||||
apiVersion: v2
|
||||
name: metrics-server
|
||||
description: Kubernetes Metrics Server wrapper chart
|
||||
type: application
|
||||
version: 1.0.0
|
||||
appVersion: "0.8.0"
|
||||
|
||||
dependencies:
|
||||
- name: metrics-server
|
||||
version: 3.13.0
|
||||
repository: https://kubernetes-sigs.github.io/metrics-server/
|
||||
21
apps/metrics-server/README.md
Normal file
21
apps/metrics-server/README.md
Normal file
@ -0,0 +1,21 @@
|
||||
# Metrics Server
|
||||
|
||||
Metrics Server provides the Kubernetes Metrics API for live resource usage,
|
||||
including `kubectl top` and future HPA/VPA resource metrics.
|
||||
|
||||
It is intentionally small and not scraped by Prometheus. Prometheus/Grafana
|
||||
remain the source for historical dashboards and alerting.
|
||||
|
||||
Talos kubelets use serving certificates that are not trusted by metrics-server
|
||||
unless kubelet server certificate rotation and CSR approval are configured.
|
||||
This deployment uses `--kubelet-insecure-tls` so it works with the current
|
||||
Talos configuration.
|
||||
|
||||
After syncing, verify:
|
||||
|
||||
```bash
|
||||
kubectl -n kube-system get deploy metrics-server
|
||||
kubectl get apiservice v1beta1.metrics.k8s.io
|
||||
kubectl top nodes
|
||||
kubectl top pods -n litellm
|
||||
```
|
||||
29
apps/metrics-server/application.yaml
Normal file
29
apps/metrics-server/application.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: metrics-server
|
||||
namespace: argocd
|
||||
annotations:
|
||||
argocd.argoproj.io/sync-wave: "-4"
|
||||
finalizers:
|
||||
- resources-finalizer.argocd.argoproj.io
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://git.mvzijl.nl/marco/veda.git
|
||||
targetRevision: applicationset-rewrite
|
||||
path: apps/metrics-server
|
||||
helm:
|
||||
releaseName: metrics-server
|
||||
valueFiles:
|
||||
- values.yaml
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: kube-system
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=false
|
||||
- ServerSideApply=true
|
||||
25
apps/metrics-server/values.yaml
Normal file
25
apps/metrics-server/values.yaml
Normal file
@ -0,0 +1,25 @@
|
||||
metrics-server:
|
||||
replicas: 1
|
||||
|
||||
defaultArgs:
|
||||
- --cert-dir=/tmp
|
||||
- --kubelet-preferred-address-types=InternalIP,Hostname,ExternalIP
|
||||
- --kubelet-use-node-status-port
|
||||
- --kubelet-insecure-tls
|
||||
- --metric-resolution=15s
|
||||
|
||||
podDisruptionBudget:
|
||||
enabled: false
|
||||
|
||||
metrics:
|
||||
enabled: false
|
||||
|
||||
serviceMonitor:
|
||||
enabled: false
|
||||
|
||||
resources:
|
||||
requests:
|
||||
cpu: 25m
|
||||
memory: 64Mi
|
||||
limits:
|
||||
memory: 128Mi
|
||||
Loading…
Reference in New Issue
Block a user