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:
Sie können die folgenden Metriken erfassen, wenn Sie die IPMI-Exportkomponente in einem Server konfigurieren:
-
IPMI-Administrationsmetriken
Die Metrik
ipmi_up {collector="<NAME>"}
meldet1
, wenn Daten von einem fernen Host erfolgreich erfasst wurden. Für die Erfassung von Daten auf einem lokalen Host wird der Wert0
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 Wert1
gibt einen Warnstatus an. Der Wert2
gibt einen kritischen Status an. Der WertNaN
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 Wert1
, wenn die Stromversorgung eingeschaltet ist. Bei dem Wert0
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:
-
Laden Sie von einem lokalen Terminal den Prometheus IPMI-Exporter herunter.
-
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
-
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.
-
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
-
Installieren Sie die FreeIPMI-Suite. Führen Sie die folgenden Befehle aus:
sudo apt-get update
sudo apt-get install freeipmi
-
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
-
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. -
Führen Sie die IPMI-Exportkomponente aus.
./ipmi_exporter --config.file=ipmi_local.yml &
-
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:
-
Aktivieren Sie die Firewall, um den Zugriff auf das IPMI-Exportprogramm (
ipmi_exporter
) zuzulassen. -
[Optional] Aktualisieren Sie die VPC-Regeln.
Wenn Sie private Endpunkte verwenden, fügen Sie der Sicherheitsgruppe für Port
9290
eine eingehende Regel mitsource 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:
-
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/
-
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"
-
Starten Sie den Überwachungsagenten erneut. Führen Sie den folgenden Befehl aus:
service dragent restart
Prüfen, ob IPMI-Metriken abgerufen werden
-
Erstellen Sie ein Dashboard.
-
Fügen Sie für jede der folgenden Abfragen ein Fenster hinzu:
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:
