Prometheus mithilfe von Helm bereitstellen - Amazon EKS

Unterstützung für die Verbesserung dieser Seite beitragen

Um zu diesem Benutzerhandbuch beizutragen, klicken Sie auf den Link Diese Seite auf GitHub bearbeiten, der sich im rechten Bereich jeder Seite befindet.

Prometheus mithilfe von Helm bereitstellen

Als Alternative zur Verwendung von Amazon Managed Service für Prometheus können Sie Prometheus mit Helm in Ihrem Cluster bereitstellen. Wenn Sie Helm bereits installiert haben, können Sie Ihre Version mit dem helm version-Befehl überprüfen. Helm ist ein Paket-Manager für Kubernetes-Cluster. Weitere Informationen zu Helm und zur Installation finden Sie unter Bereitstellung von Anwendungen mit Helm in Amazon EKS.

Nachdem Sie Helm für Ihren Amazon-EKS-Cluster konfiguriert haben, können Sie damit die folgenden Schritte ausführen, um Prometheus bereitzustellen.

  1. Erstellen Sie einen Prometheus-Namespace.

    kubectl create namespace prometheus
  2. Fügen Sie das prometheus-community-Diagramm-Repository hinzu.

    helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
  3. Stellen Sie Prometheus bereit.

    helm upgrade -i prometheus prometheus-community/prometheus \ --namespace prometheus \ --set alertmanager.persistence.storageClass="gp2" \ --set server.persistentVolume.storageClass="gp2"
    Anmerkung

    Wenn Sie bei der Ausführung dieses Befehls die Fehlermeldung Error: failed to download "stable/prometheus" (hint: running helm repo update may help) erhalten, führen Sie helm repo update prometheus-community aus, und versuchen Sie dann erneut, den Befehl aus Schritt 2 auszuführen.

    Wenn Sie die Fehlermeldung Error: rendered manifests contain a resource that already exists erhalten, führen Sie helm uninstall your-release-name -n namespace aus, und versuchen Sie dann, den Befehl aus Schritt 3 erneut auszuführen.

  4. Stellen Sie sicher, dass alle Pods im prometheus-Namespace den Status READY haben.

    kubectl get pods -n prometheus

    Eine Beispielausgabe sieht wie folgt aus.

    NAME READY STATUS RESTARTS AGE prometheus-alertmanager-59b4c8c744-r7bgp 1/2 Running 0 48s prometheus-kube-state-metrics-7cfd87cf99-jkz2f 1/1 Running 0 48s prometheus-node-exporter-jcjqz 1/1 Running 0 48s prometheus-node-exporter-jxv2h 1/1 Running 0 48s prometheus-node-exporter-vbdks 1/1 Running 0 48s prometheus-pushgateway-76c444b68c-82tnw 1/1 Running 0 48s prometheus-server-775957f748-mmht9 1/2 Running 0 48s
  5. Verwenden Sie kubectl, um die Prometheus-Konsole auf Ihren lokalen Computer weiterzuleiten.

    kubectl --namespace=prometheus port-forward deploy/prometheus-server 9090
  6. Richten Sie einen Web-Browser auf http://localhost:9090 , um die Prometheus-Konsole anzuzeigen.

  7. Wählen Sie eine Metrik aus dem Menü - insert metric at cursor (Metrik bei Cursor eingeben) und danach Execute (Ausführen). Wählen Sie die Registerkarte Graph (Diagramm) aus, um die Metrik im Zeitverlauf anzuzeigen. Das folgende Image zeigt container_memory_usage_bytes im Zeitverlauf.

    Prometheus-Metriken
  8. Wählen Sie in der oberen Navigationsleiste Status, dann Targets (Ziele).

    Prometheus-Konsole

    Es werden alle Kubernetes-Endpunkte angezeigt, die über die Service-Erkennung mit Prometheus verbunden sind.