Cloudeye verbindet sich mit Prometheus, um eine umfassende Überwachung der Huawei Cloud zu realisieren

Dieser Artikel wurde von der Huawei Cloud Community geteilt: „ Cloudeye verbindet sich mit Prometheus, um eine umfassende Überwachung der Huawei Cloud zu implementieren .“ Der Autor: Sie können einen Freund finden.

1. Hintergrund

Der Cloudeye-Dienst bietet uns eine dreidimensionale Überwachungsplattform für elastische Cloud-Server, Breitband und andere Ressourcen. Helfen Sie uns, die Ressourcennutzung und den Geschäftsbetriebsstatus in der Huawei Cloud vollständig zu verstehen. Nachdem Sie den Huawei Cloud Cloudeye-Dienst mit Prometheus verbunden haben, können Sie das Prometheus-Ökosystem nutzen, um Daten vom Cloudeye-Dienst besser zu überwachen und zu analysieren.

Bild.png

2. Einführung

Verbinden Sie mithilfe von cloudeye-exporter den Huawei Cloud Cloudeye-Dienst mit dem Prometheus-Container im Huawei Cloud CCE-Cluster (Kubernetes-Cluster). Verwenden Sie dann das Prometheus-System, um die Betriebs- und Wartungsüberwachung der Leistungsdaten von Cloud-Ressourcen durchzuführen.

Hinweis: Dieser Exporter gilt nur für Huawei Cloud-Standorte.

3. Praktische Demonstration

Prometheus wird als Operator im Kubernetes-Cluster eingesetzt. Daher ist es auch erforderlich, ein Cloudeye-Exporter-Container-Image zu erstellen und es dann zu containerisieren und im Kubernetes-Cluster bereitzustellen.

3.1 Besorgen Sie sich das Cloudeye-Exporter-Installationspaket

1. Laden Sie die neueste Version von cloudeye-exporter herunter

Überprüfen Sie die Version der Plug-in-Releases ( https://github.com/huaweicloud/cloudeye-exporter/releases ), rufen Sie die Cloudeye-Exporter-Download-Adresse ab, laden Sie sie herunter, dekomprimieren Sie sie und installieren Sie sie.

mkdir cloudeye-exporter & cd cloudeye-exporter

wget https://github.com/huaweicloud/cloudeye-exporter/releases/download/v2.0.6/cloudeye-exporter.v2.0.6.tar.gz

2. Dekomprimieren

tar -xzvf cloudeye-exporter.v2.0.6.tar.gz

Bild.png

3.2 Containerbilder erstellen

1. Sie müssen eine Dockerfile-Datei schreiben. Centos wird hier als Basis-Image verwendet.

VON Centos  
KOPIEREN cloudeye-exporter logs.yml metric.yml /root/
ARBEITSVERZEICHNIS /root
CMD ["/root/cloudeye-exporter"]

2. Erstellen Sie Container-Images

docker build -t swr.cn-north-4.myhuaweicloud.com/k8s-solution/cloudeye-exporter:v2.0.6 --platform=linux/amd64 .

Bild.png
 

3. Schieben Sie zum Spiegellager

Es wird empfohlen, das Huawei Cloud SWR Mirror Warehouse zu verwenden

3.3 Konfigurieren Sie die Cloudeye-Exporter-Zugriffsauthentifizierung

1. Bearbeiten Sie die Datei „clouds.yml“, um die Informationen zur öffentlichen Cloud zu konfigurieren

Beim Start von cloudeye-exporter muss diese Konfigurationsdatei zur Zugriffsauthentifizierung von Cloud-Diensten verwendet werden.
global:
  port: „:8087“ # Abhörport: 8087 bedeutet, dass der Abhörport 8087 auf allen Netzwerkschnittstellen geöffnet wird. Sie können auch eine IP angeben, um den internen Zugriff einzuschränken. Beispiel: 192.168.1.100:8087
  scrape_batch_size: 300
Autor:
  auth_url: „https://iam.cn-north-4.myhuaweicloud.com/v3“
  Projektname: „cn-north-4“ # Huawei Cloud-Projektname, der unter „Huawei Cloud->Unified Identity Authentication Service->Projekt“ angezeigt werden kann.
  access_key: „“ # IAM-Benutzerzugriffsschlüssel. Informationen zur Eingabe des verschlüsselten AK SK über die Befehlszeile finden Sie in Kapitel 3.1, um zu vermeiden, dass AK SK in der Konfigurationsdatei im Klartext konfiguriert wird.
  geheimer Schlüssel: ""
  Region: „cn-north-4“ #Regions-ID

2. Erstellen Sie Kubernetes-Geheimnisse basierend auf dieser Konfigurationsdatei

kubectl create secret generic clouds-exporter --from-file=clouds.yml -n monitoring
Bei der Containerbereitstellung muss diese Konfiguration in Form von Geheimnissen im Cloudeye-Exporter bereitgestellt werden

3.4 Cloudeye-Exporter im CCE-Cluster (k8s-Cluster) bereitstellen

1. Stellen Sie zunächst die Last und den Dienst bereit

apiVersion: apps/v1
Art: Bereitstellung
Metadaten:
  Name: cloudeye-exporter
  Namensraum: Überwachung
  Etiketten:
    App: cloudeye-exporter
Spezifikation:
  Nachbildungen: 1
  Wähler:
    matchLabels:
      App: cloudeye-exporter
  Vorlage:
    Metadaten:
      Etiketten:
        App: cloudeye-exporter
    Spezifikation:
      Bände:
        - Name: Wolkenauge
          Geheimnis:
            SecretName: Clouds-Exporter
      imagePullSecrets:
        - Name: Standardgeheimnis
      Behälter:
      - Name: cloudeye-exporter
        Bild: swr.cn-north-4.myhuaweicloud.com/k8s-solution/cloudeye-exporter:v2.0.6
        Häfen:
          - ContainerPort: 8087
        Ressourcen:
          Grenzen:
            CPU: 500m
            Speicher: 1Gi
          Anfragen:
            CPU: 100m
            Speicher: 500Mi
        volumeMounts:
          - Name: Wolkenauge
            mountPath: „/root/clouds.yml“
            Unterpfad: cloud.yml

---
APIVersion: v1
Art: Service
Metadaten:
  Name: cloudeye-exporter
  Namensraum: Überwachung
  Etiketten:
    App: cloudeye-exporter
Spezifikation:
  Wähler:
    App: cloudeye-exporter
  Häfen:
  - Name: ces
    targetPort: 8087 #Business-Listening-Port
    Port: 8087
    Protokoll: TCP
  Typ: ClusterIP
2. Bestätigen Sie, ob cloudeye-exporter Indikatoren bereitstellt.

Erfolgreich bereitgestellt, überprüfen Sie die Pod-Informationen. Greifen Sie auf den Pod-Indikator-Endpunkt zu, um zu bestätigen, ob die Indikatorquelle Indikatoren verfügbar machen kann.

curl http://podIP:8087/metrics?services='SYS.VPC'

Bild.png
Die Cloudeye-Exporter-Pod-Instanz dient als Quelle für Prometheus-Crawling-Indikatoren und kann Überwachungsdaten offenlegen.

Überprüfen Sie den Dienst, um sicherzustellen, dass durch den Zugriff auf den Dienst Daten abgerufen werden können.

Bild.png

2. Passen Sie auf

Hinweis: cloudeye-exporter muss auf den Endpunkt des öffentlichen Netzwerks zugreifen: iam.huaweicloud.com . Wenn es sich bei der von Ihnen verwendeten Kuberntes-Plattform um einen CCE-Turbo-Cluster handelt, müssen Sie das öffentliche Netzwerk-Snat für das Container-Netzwerksegment konfigurieren. Andernfalls schlägt die Erfassung der Indikatordaten fehl.  

3.5 Prometheus stellt eine Verbindung zum Cloudeye-Exporter her, um Indikatoren zu erhalten

Ändern Sie die Dateikonfiguration prometheus.yml in prometheus. Weil Prometheus jetzt in der Prometheus-Operator-Form in k8s-Clustern bereitgestellt wird. Daher müssen wir ServiceMonitor schreiben, um Indikatoren zu erhalten.

1. Nehmen Sie als Beispiel die Überwachung der Huawei Cloud VPC- und ELB-Dienste

Die Erfassungsregeln cloudeye-exporter-servicemonitor.yaml lauten wie folgt:

API-Version: Monitoring.coreos.com/v1
Art: ServiceMonitor
Metadaten:
  Name: cloudeye-exporter
  Namensraum: Überwachung
  Etiketten:
    App: cloudeye-exporter
Spezifikation:
  Endpunkte:
    - Intervall: 1m
      scrapeTimeout: 1m
      Hafen: diese
      Schema: http
      Parameter:
        Dienste: ['SYS.VPC,SYS.ELB']
  NamespaceSelector:
    matchNames:
    - Überwachung
  Wähler:
    matchLabels:
      App: cloudeye-exporter

2. Erstellen Sie die oben genannten Crawling-Regeln im Cluster. Warten Sie einen Moment, um zu beobachten, dass Prometheus erfolgreich gecrawlt wurde

Bild.png

Bild.png

3. Zu diesem Zeitpunkt hat cloudeye-exporter erfolgreich eine Verbindung zu Prometheus hergestellt.

3.6 Verbindung zum Grafana-Markt herstellen

Die Huawei Cloud Community bietet mehrere vorgefertigte Dashboards für Cloud-Dienste. Wir können es nutzen.

https://github.com/huaweicloud/cloudeye-exporter/tree/v2.0.6/grafana_dashboard/templates

Beispiel: Verwenden Sie das Dashboard des VPC-Cloud-Dienstes.

1. Laden Sie die JSON-Datei des Dashboards auf grafana hoch

Bild.png

Klicken Sie nach Auswahl der Datenquelle auf Importieren.

2. Erkennen Sie Anomalien

Sie werden feststellen, dass das Dashboard keine Daten generiert

Bild.png

3. Lösung
Laut Huawei Cloud Community Statement: Wenn Sie die folgende Vorlage direkt verwenden müssen, müssen Sie die Prometheus-Konfiguration ändern und die Aufgabe zum Abrufen von Unternehmensprojektinformationen hinzufügen. Daher müssen wir auch den Servicemonitor ändern und eine Konfiguration hinzufügen, die auf dem ursprünglichen Cloudeye-Exporter-Servicemonitor basiert.
API-Version: Monitoring.coreos.com/v1
Art: ServiceMonitor
Metadaten:
  Name: cloudeye-exporter
  Namensraum: Überwachung
  Etiketten:
    App: cloudeye-exporter
Spezifikation:
  Endpunkte:
    - Intervall: 1m
      scrapeTimeout: 1m
      Hafen: diese
      Schema: http
      Parameter:
        Dienste: ['SYS.VPC,SYS.ELB']
    # Konfigurieren Sie diese Aufgabe, um Unternehmensprojektinformationen zur Verwendung im Dashboard der Huawei Cloud-Dienste zu erhalten
    - Intervall: 1m
      scrapeTimeout: 1m
      Hafen: diese
      Pfad: „/eps-info“
      Schema: http
  NamespaceSelector:
    matchNames:
    - Überwachung
  Wähler:
    matchLabels:
      App: cloudeye-exporter

Warten Sie nach dem Aktualisieren der oben genannten Indikatorerfassungsregeln im Cluster eine Weile.

4. Gehen Sie zur Prometheus-Seite, um zu sehen, dass die neue Crawling-Aufgabe erfolgreich ausgeführt wurde.

Bild.png

Bild.png

5. Beobachten Sie Grafana erneut

Gehen Sie an dieser Stelle zum Grafana-Frontend, um das Dashboard anzuzeigen: Das Huawei Cloud VPC-Cloud-Service-Dashboard wurde erfolgreich angezeigt.

Bild.png

6. Importieren Sie das ELB Grafana-Dashboard

Bild.png

Auch Huawei Cloud ELB-Überwachungsinformationen wurden erfolgreich angezeigt

4. Erweiterung

Derzeit unterstützte Grafana-Dashboards sind:

  • CSS für den Cloud-Suchdienst
  • Cloud-Standleitung DCAAS
  • Verteilter Cache-Dienst DCS
  • Elastischer Cloud-Server ECS
  • Elastischer Lastausgleich ELB
  • Relationale Datenbank RDS
  • Webanwendungs-Firewall WAF
  • Elastische öffentliche IP- und Bandbreiten-VPC

Klicken Sie hier, um zu folgen und so schnell wie möglich mehr über die neuen Technologien von Huawei Cloud zu erfahren~

 

Der Autor eines bekannten Open-Source-Projekts verlor seinen Job aufgrund von Manie – „Suche nach Geld online“ No Star, No Fix 2023 Die zehn besten technischen Errungenschaften der Welt werden veröffentlicht: ChatGPT, Hongmeng Operating System, China Space Station und andere ausgewählte ByteDance wurden von OpenAI „verboten“. Google kündigt die beliebteste Chrome-Erweiterung im Jahr 2023 an Akademiker Ni Guangnan: Ich hoffe, dass inländische SSD importierte HDD ersetzen wird, um Xiaomi-Mobiltelefon BL zu entsperren? Stellen Sie zunächst eine Interviewfrage für Java-Programmierer. Arm hat mehr als 70 chinesische Ingenieure entlassen und plant, sein chinesisches Softwaregeschäft neu zu organisieren. OpenKylin 2.0 enthüllt | UKUI 4.10 Doppeldiamantendesign, schön und hochwertig! Manjaro 23.1 veröffentlicht, Codename „Vulcan“
{{o.name}}
{{m.name}}

Supongo que te gusta

Origin my.oschina.net/u/4526289/blog/10323193
Recomendado
Clasificación