IBM Cloud Docs
IPMI-Gerätesensormetriken erfassen

IPMI-Gerätesensormetriken erfassen

Zusätzlich zu den Metriken, die vom Überwachungsagenten automatisch erfasst werden, können Sie bei Bedarf weitere Metriken (z. B. Sensormesswerte) erfassen. Sie können den Prometheus IPMI Exporter verwenden, um die Sammlung von IPMI-Gerätesensormetriken (Intelligent Platform Management Interface) durchzuführen.

  • Das Prometheus-IPMI-Exportprogramm unterstützt lokale IPMI-Geräte und ferne Geräte, auf die über das Remote Management Control Protocol (RMCP) zugegriffen werden kann.
  • Wenn Sie RMCP für den Zugriff auf ferne Geräte verwenden, können Sie ein IPMI-Exportprogramm verwenden, um mehrere IPMI-Geräte zu überwachen. Sie geben dabei jedes Gerät durch die Übergabe des Zielhostnamen als Parameter an.
  • Das IPMI-Exportprogramm setzt dabei auf Tools aus der FreeIPMI-Suite.

Die folgenden Abbildungen zeigen verschiedene Konfigurationen, die Sie zur Überwachung von Sensormetriken von Hosts verwenden können, die in der IBM Cloud oder außerhalb der IBM Cloud verfügbar sein können:

: IPMI-Exporter und Kubernetes in verschiedenen

Sie können die folgenden Metriken erfassen, wenn Sie die IPMI-Exportkomponente in einem Server konfigurieren:

  • IPMI-Administrationsmetriken

    Die Metrik ipmi_up {collector="<NAME>"} meldet 1, wenn Daten von einem fernen Host erfolgreich erfasst wurden. Für die Erfassung von Daten auf einem lokalen Host wird der Wert 0 gemeldet.

    Die Metrik ipmi_scrape_duration_seconds gibt an, wie lange der Collector zum Abrufen der Daten benötigt wird.

  • Metriken für IPMI-Systemereignisprotokolle (SEL)

    Die Metrik ipmi_sel_entries_count meldet die Anzahl der Einträge im Systemereignisprotokoll.

    Die Metrik ipmi_sel_free_space_bytes gibt die Anzahl der freien Byte für neue Systemereignisprotokolleinträge an.

  • IPMI-Sensordaten

    Das IPMI-Exportprogramm erfasst zwei Metriken pro Sensortyp: Status und Wert. Der Wert 0 gibt einen normalen Status an. Der Wert 1 gibt einen Warnstatus an. Der Wert 2 gibt einen kritischen Status an. Der Wert NaN gibt an, dass keine Informationen verfügbar sind. Nachfolgend finden Sie die Metriken für verschiedenen Sensoren:

    Metriken für Temperatursensoren: ipmi_temperature_celsius, ipmi_temperature_state

    Metriken für Lüftergeschwindigkeitssensoren: ipmi_fan_speed_rpm, ipmi_fan_speed_state

    Metriken für Spannungssensoren: ipmi_voltage_state, ipmi_voltage_volts

  • Betriebszustand des IPMI-Chassis der Maschine

    Die Metrik ipmi_chassis_power_state informiert über den aktuellen Status des Chassis der Maschine. Sie hat den Wert 1, wenn die Stromversorgung eingeschaltet ist. Bei dem Wert 0 ist die Stromversorgung ausgeschaltet.

  • DCMI-Daten

    Die Metrik ipmi_dcmi_power_consumption_current_watts informiert über den Live-Stromverbrauch der Maschine in Watt.

  • BMC-Details

    Die Metrik 'ipmi_bmc_info' enthält in Form von Beschriftungen Informationen zu der Firmwarerevision und dem Hersteller und hat den Wert 1.

Weitere Informationen finden Sie unter Prometheus IPMI Exporter.

Führen Sie die folgenden Schritte aus, um einen Überwachungsagenten zum Sammeln von IPMI-Metriken von einem oder mehreren Hosts zu konfigurieren:

Einen Überwachungsagenten konfigurieren

Um 1 oder mehrere Hosts zu überwachen, müssen Sie einen Überwachungsagenten konfigurieren. Der Agent sammelt automatisch eine Reihe von Metriken, die Sie über die Überwachungsschnittstelle überwachen können.

Wählen Sie "Auswählen eines Agent-Typs nach Infrastruktur " und wählen Sie den Überwachungsagenten aus, den Sie für die Überwachung eines Hosts konfigurieren möchten.

Prometheus-Exportkomponente 'IPMI' konfigurieren

Sie können die IPMI-Exportkomponente auf einem oder mehreren Hosts installieren, um IPMI-Metriken zu sammeln.

Führen Sie für jeden Host, für den Sie IPMI-Metriken sammeln möchten, die folgenden Schritte aus, um die IPMI-Exportkomponente zu installieren. Führen Sie zum Beispiel die folgenden Schritte für einen Linux-basierten Host aus:

  1. Laden Sie von einem lokalen Terminal den Prometheus IPMI-Exporter herunter.

  2. Erstellen Sie auf dem Server aus der ssh-Sitzung heraus das Verzeichnis /usr/sysdig. Führen Sie die folgenden Befehle aus:

    cd /usr
    
    mkdir sysdig
    
  3. Kopieren Sie die Datei auf den Server. Führen Sie in dem Verzeichnis, in dem die Datei verfügbar ist, den folgenden Befehl aus:

    scp ipmi_exporter-v1.2.0.linux-amd64.tar.gz  root@<IP_ADDRESS>:/usr/sysdig/
    

    Dabei steht <IP_ADDRESS> für die öffentliche IP-Adresse des Servers.

    Wenn der Befehl fehlschlägt, überprüfen Sie, ob Ihre VPN-Verbindung noch geöffnet ist.

  4. Dekomprimieren Sie die Datei. Führen Sie die folgenden Befehle aus:

    cd /usr/sysdig/
    
    tar -xvf ipmi_exporter-v1.2.0.linux-amd64.tar.gz
    
  5. Installieren Sie die FreeIPMI-Suite. Führen Sie die folgenden Befehle aus:

    sudo apt-get update
    
    sudo apt-get install freeipmi
    
  6. Konfigurieren Sie die Datei ipmi_local.yml.

    • Sie können die Datei aktualisieren, um Sensoren auszuschließen, die Sie nicht überwachen möchten.

    Wechseln Sie in das Verzeichnis, in das Sie das IPMI-Exportprogramm extrahiert haben:

    cd ipmi_exporter-v1.2.0.linux-amd64/
    

    Überprüfen Sie die Konfigurationsdatei. Führen Sie den Befehl more ipmi_local.yml aus. Es sollte eine Datei mit etwa dem folgenden Inhalt angezeigt werden.

    # Configuration file for ipmi_exporter
    
    # This is an example config for scraping the local host.
    # In most cases, this should work without using a config file at all.
    modules:
            default:
                    # Available collectors are bmc, ipmi, chassis, dcmi, and sel
                    collectors:
                    - bmc
                    - ipmi
                    - dcmi
                    - chassis
                    - sel
                    # Got any sensors you don't care about? Add them here.
                    exclude_sensor_ids:
                    # - 2
    
  7. Wenn die IPMI-Exportkomponente auf einem Host installiert ist, von dem Sie Sensormetriken von mehreren Hosts sammeln möchten, konfigurieren Sie die Datei ipmi_remote.yml. Sehen IPMI-Remote-Beispieldatei.

  8. Führen Sie die IPMI-Exportkomponente aus.

    ./ipmi_exporter --config.file=ipmi_local.yml &
    
  9. Stellen Sie sicher, dass das IPMI-Exportprogramm ausgeführt wird. Führen Sie den folgenden Befehl aus:

    ps -aux | grep ipmi
    

    Sie sollten sehen, dass das IPMI-Exportprogramm ausgeführt wird.

Netzeinstellungen konfigurieren

Wenn Sie IPMI-Metriken von fernen Servern sammeln möchten, führen Sie die folgenden Schritte aus:

  1. Aktivieren Sie die Firewall, um den Zugriff auf das IPMI-Exportprogramm (ipmi_exporter) zuzulassen.

  2. [Optional] Aktualisieren Sie die VPC-Regeln.

    Wenn Sie private Endpunkte verwenden, fügen Sie der Sicherheitsgruppe für Port 9290 eine eingehende Regel mit source type = Security Group hinzu und wählen Sie die Sicherheitsgruppe für den Server.

Überwachungsagenten zum Sammeln von IPMI-Metriken aktualisieren

Sie müssen den Überwachungsagenten konfigurieren, um die Erfassung von IPMI-Metriken zu aktivieren.

Wählen Sie eine der folgenden Optionen basierend auf dem Typ des konfigurierten Überwachungsagenten:

Kubernetes-Überwachungsagent

Führen Sie den folgenden Befehl aus, um die Konfigurationszuordnung zu bearbeiten und Informationen über die Hosts hinzuzufügen, auf denen die IPMI-Exportkomponente konfiguriert ist:

kubectl edit configmap sysdig-agent -n ibm-observe

Ändern Sie die YAML-Datei, um die Prometheus-Konfiguration der IPMI-Exportkomponente hinzuzufügen:

log:
  file_priority: error
configmap: true
### Agent tags
# tags: linux:ubuntu,dept:dev,local:nyc

#### Software related config ####

# Collector address
# collector: 192.168.1.1

# Collector TCP port
# collector_port: 6666

# Whether collector accepts ssl
# ssl: true

# collector certificate validation
# ssl_verify_certificate: true

#######################################
# new_k8s: true
# k8s_cluster_name: production
security:
  k8s_audit_server_url: 0.0.0.0
  k8s_audit_server_port: 7765
k8s_cluster_name: <CLUSTER_NAME>/<CLUSTER_ID>
tags: ibm.containers-kubernetes.cluster.id:<CLUSTER_ID>
collector: <INGESTION_ENDPOINT>
collector_port: 6443
ssl: true
ssl_verify_certificate: true
sysdig_capture_enabled: false
promscrape_fastproto: true
use_promscrape: true
prom_service_discovery: true
prometheus:
  enabled: true
  log_errors: true
  max_metrics: 200000
  max_metrics_per_process: 200000
  max_tags_per_metric: 100
  ingest_raw: true
  ingest_calculated: false
prometheus.yaml:
----
global:
  scrape_interval: 10s
scrape_configs:
- job_name: ipmi
  metrics_path: /metrics
  static_configs:
  - targets:
    - '<IP_ADDRESS_OF_REMOTE_SERVER_WHERE_IPMI_EXPORTER_IS_RUNNING>:9290'
    - '<IP_ADDRESS_OF_REMOTE_SERVER_WHERE_IPMI_EXPORTER_IS_RUNNING>:9290'
    - '<IP_ADDRESS_OF_REMOTE_SERVER_WHERE_IPMI_EXPORTER_IS_RUNNING>:9290'

Wo

  • <IP_ADDRESS_OF_REMOTE_SERVER> steht für die IP-Adresse eines Servers, den Sie überwachen wollen.
  • <INGESTION_ENDPOINT> steht für den Aufnahmeendpunkt der IBM Cloud Monitoring-Instanz, z. B. ingest.us-south.monitoring.cloud.ibm.com. Siehe Collector-Endpunkte.
  • <IP_ADDRESS_OF_REMOTE_SERVER>:9290 steht für die IP-Adresse des Servers, den Sie überwachen wollen.

Wenn Sie die Datei speichern, werden die Änderungen übernommen.

Linux-Serviceüberwachungsagent

Führen Sie die folgenden Schritte aus, um den Überwachungsagenten zum Sammeln von IPMI-Metriken zu aktualisieren:

  1. Verbinden Sie sich per SSH mit dem Host, auf dem der Überwachungsagent ausgeführt wird. Wechseln Sie dann in das Verzeichnis /opt/draios/etc/ und führen Sie den folgenden Befehl aus:

    cd /opt/draios/etc/
    
  2. Aktualisieren Sie die Datei /opt/draios/etc/dragent.yaml, um Scraping über Fernzugriff zu aktivieren.

    Hängen Sie den folgenden Abschnitt an die Datei dragent.yaml an:

    customerid: xxxxxxxxxx
    collector: ingest.us-south.monitoring.cloud.ibm.com
    collector_port: 6443
    ssl: true
    sysdig_capture_enabled: false
    use_promscrape: true
    promscrape_fastproto: false
    prom_service_discovery: true
    prometheus:
      enabled: true
      process_filter:
        - include:
            port: 9290
            conf:
              port: 9290
              path: "/metrics"
    
  3. Starten Sie den Überwachungsagenten erneut. Führen Sie den folgenden Befehl aus:

    service dragent restart
    

Prüfen, ob IPMI-Metriken abgerufen werden

  1. Starten Sie die Überwachungsbenutzerschnittstelle.

  2. Erstellen Sie ein Dashboard.

  3. Fügen Sie für jede der folgenden Abfragen ein Fenster hinzu:

Beispielabfragen des IPMI-Exporters
Metrik PromQL-Abfrage Optionen
IPMI aktiv ipmi_up number (auto)
Spannung ipmi_voltage_volts number (auto)
Temperatur Celsius ipmi_temperature_celsius number (auto)
Lüfterdrehzahl U/min ipmi_fan_speed_rpm number (auto)

Sie können zum Beispiel ein Dashboard erstellen, das wie folgt aussieht:

caption-side=bottom"
Beispiel