Prometheus is een open-source systeemmonitoring- en waarschuwings toolkit die zeer geschikt is voor het verzamelen van data van je Kubernetes-cluster.
Prometheus is bijvoorbeeld erg handig om te combineren met Grafana, of de Lens-applicatie; Beide maken het visualiseren van je Kubernetes-data eenvoudiger. In het geval van Lens pikt na installatie van Prometheus Lens zelfs automatisch de Prometheus-installatie op en hoef je niets in te stellen voor het gebruik ervan.
In deze handleiding leggen we uit hoe je Prometheus installeert op een Kubernetes-cluster. Hiervoor maken we gebruik van de 'Operator'-versie van Prometheus. Een Kubernetes Operator verzorgt automatisch delen van de deployment en configuratie van software, in dit geval van Prometheus en de bijbehorende componenten.
Voor de stappen in deze handleiding gebruiken we de Helm-package manager. Installeer de Helm-packagemanager eerst op je Kubernetes-cluster als je dat nog niet gedaan hebt.
Stap 1
Maak eerst een nieuwe namespace aan voor Prometheus:
kubectl create ns prometheus
Stap 2
Voeg de officiële Prometheus Helm-repository toe aan je cluster:
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts helm repo update
Stap 3
Installeer vervolgens de Prometheus Operator in de Prometheus-namespace met het commando:
helm install prometheus-operator prometheus-community/kube-prometheus-stack --namespace prometheus
- helm install installeert de chart
- prometheus-operator is de naam die we zelf aan de Helm 'release' meegeven; dit maakt het herkennen ervan wat makkelijker dan met de naam 'kube-prometheus-stack'
- prometheus-community/kube-prometheus-stack is de repository en chart die je installeert
- --namespace prometheus installeert de Helm release in de Prometheus namespace
- optioneel kun je een eigen values.yaml file gebruiken om wijzigingen door te voeren en er bij de installatie naar verwijzen met de toevoeging -f values.yaml (zie ook onze documentatie over het bewerken van Helm-charts voor installatie voor meer opties)
Je krijgt nu een output te zien die vergelijkbaar is met de volgende:
LAST DEPLOYED: Mon Jun 19 11:11:11 2023
NAMESPACE: prometheus
REVISION: 1
NOTES:
kube-prometheus-stack has been installed. Check its status by running:
kubectl --namespace prometheus get pods -l "release=prometheus-operator"
Visit https://github.com/prometheus-operator/kube-prometheus for instructions on how to create & configure Alertmanager and Prometheus instances using the Operator.
NAME READY STATUS RESTARTS AGE
prometheus-operator-kube-state-metrics-69b8c745bd-cvmvg 1/1 Running 0 23s
prometheus-operator-prometheus-node-exporter-8hfww 1/1 Running 0 24s
prometheus-operator-prometheus-node-exporter-9757r 1/1 Running 0 24s
prometheus-operator-prometheus-node-exporter-w6nk9 1/1 Running 0 24s
Daarmee is de installatie van Prometheus voltooid! Bezoek https://github.com/prometheus-operator/kube-prometheus als je enkel met Prometheus aan de slag wilt, of neem een kijkje in onze Grafana of Lens-handleiding als je Prometheus wil combineren met een van beide.
Informatie over je Helm-release kun je opvragen met het commando:
helm list -n prometheus