Collecte des mesures du détecteur d'unité IPMI
En plus de l'ensemble des métriques qui sont collectées automatiquement par l'agent de surveillance, vous pouvez collecter d'autres métriques telles que les métriques de capteur. Vous pouvez utiliser l'Prometheus IPMI Exporter pour
collecter des métriques de capteur d'unité IPMI (Intelligent Platform Management Interface).
- L'exportateur Prometheus IPMI Exporter prend en charge les unités IPMI locales et les unités distantes auxquelles vous pouvez accéder en utilisant le protocole RMCP (Remote Management Control Protocol).
- Lorsque vous utilisez RMCP pour accéder aux unités distantes, vous pouvez utiliser un exportateur IPMI pour surveiller plusieurs unités IPMI. Vous identifiez chaque unité en transmettant le nom d'hôte cible en tant que paramètre.
- L'exportateur IPMI s'appuie sur les outils de la suite FreeIPMI.
Les figures suivantes illustrent différentes configurations que vous pouvez utiliser pour surveiller les métriques de capteur à partir d'hôtes pouvant être disponibles dans IBM Cloud ou en dehors d'IBM Cloud :
Vous pouvez collecter les métriques suivantes lorsque vous configurez l'exportateur IPMI sur un serveur :
-
Métriques d'administration IPMI
L'indicateur
ipmi_up {collector="<NAME>"}signale1lorsque les données d'un hôte distant sont collectées avec succès. Elle indique0pour la collecte de données dans un hôte local.La métrique
ipmi_scrape_duration_secondsindique la durée nécessaire au collecteur pour extraire les données. -
Métriques de journal des événements du système IPMI (SEL)
La métrique
ipmi_sel_entries_countindique le nombre d'entrées dans le journal des événements du système.La métrique
ipmi_sel_free_space_bytesindique le nombre d'octets disponibles pour les entrées de journal des événements de système. -
Données du capteur IPMI
L'exportateur IPMI collecte 2 métriques par type de capteur : état et valeur. La valeur
0signale un état normal. La valeur1signale un état d'avertissement. La valeur2signale un état critique. La valeur des informations de rapportsNaNn'est pas disponible. Par exemple, consultez les métriques pour les différents capteurs :Métriques de capteur de température :
ipmi_temperature_celsius,ipmi_temperature_stateMétriques de capteur de vitesse de ventilateur :
ipmi_fan_speed_rpm,ipmi_fan_speed_stateMétriques de capteur de tension :
ipmi_voltage_state,ipmi_voltage_volts -
Etat d'alimentation du châssis IPMI de la machine
La métrique
ipmi_chassis_power_stateindique l'état en cours du châssis de la machine. Sa valeur est1lorsque le châssis est sous tension. Sa valeur est0lorsque le châssis est hors tension. -
Données DCMI
La métrique
ipmi_dcmi_power_consumption_current_wattsindique la consommation d'énergie réelle de la machine en watts. -
Détails de BMC
La métrique ipmi_bmc_info indique les informations sur la révision et le fabricant du microprogramme sur des étiquettes et a la valeur
1.
Pour plus d'informations, consultez Prometheus IPMI Exporter.
Pour configurer un agent de surveillance afin de collecter des métriques IPMI à partir d'un ou plusieurs hôtes, procédez comme suit :
Configuration d'un agent de surveillance
Pour surveiller un ou plusieurs hôtes, vous devez configurer un agent de surveillance. L'agent collecte automatiquement un ensemble de métriques que vous pouvez surveiller via l'interface utilisateur de surveillance.
Voir Choix d'un type d'agent par infrastructure et choisissez l'agent de surveillance que vous souhaitez configurer pour surveiller un hôte.
Configuration de l'exportateur IPMI Prometheus
Vous pouvez installer l'exportateur IPMI dans un ou plusieurs hôtes pour collecter des métriques IPMI.
Pour chaque hôte devant collecter des métriques IPMI, procédez comme suit pour installer l'exportateur IPMI. Par exemple, pour un hôte Linux :
-
Depuis un terminal local, téléchargez l'exportateur IPMI Prometheus.
-
Dans le serveur, à partir de la session
ssh, créez le répertoire/usr/sysdig. Exécutez les commandes suivantes :cd /usrmkdir sysdig -
Copiez le fichier sur le serveur. Dans le répertoire où le fichier est disponible, exécutez la commande suivante :
scp ipmi_exporter-v1.2.0.linux-amd64.tar.gz root@<IP_ADDRESS>:/usr/sysdig/Où
<IP_ADDRESS>est l'adresse IP publique du serveur.Si la commande échoue, vérifiez que votre connexion VPN est toujours ouverte.
-
Décompressez le fichier. Exécutez les commandes suivantes :
cd /usr/sysdig/tar -xvf ipmi_exporter-v1.2.0.linux-amd64.tar.gz -
Installez la suite FreeIPMI. Exécutez les commandes suivantes :
sudo apt-get updatesudo apt-get install freeipmi -
Configurez le fichier
ipmi_local.yml.- Vous pouvez mettre à jour le fichier pour exclure les capteurs que vous ne souhaitez pas surveiller.
Accédez au répertoire dont vous avez extrait l'exportateur IPMI :
cd ipmi_exporter-v1.2.0.linux-amd64/Vérifiez le fichier de configuration. Exécutez la commande :
more ipmi_local.ymlVous devez voir un fichier avec un contenu similaire.# 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 -
Si l'exportateur IPMI est installé sur un hôte à partir duquel vous prévoyez de collecter des métriques de capteur de plusieurs hôtes, configurez le fichier
ipmi_remote.yml. Voir Exemple de fichier d'exemple distant IPMI. -
Exécutez l'exportateur IPMI.
./ipmi_exporter --config.file=ipmi_local.yml & -
Vérifiez que l'exportateur IPMI est en cours d'exécution. Exécutez la commande suivante :
ps -aux | grep ipmiVous devriez voir l'exportateur IPMI s'exécuter.
Configurer les paramètres réseau
Si vous souhaitez collecter des métriques IPMI à partir de serveurs distants, procédez comme suit :
-
Activez le pare-feu pour autoriser l'accès à
ipmi_exporter. -
[Facultatif] Mettre à jour les règles VPC
Si vous utilisez des noeuds finaux privés, ajoutez une règle entrante au groupe de sécurité pour le port
9290avecsource type = Security Groupet choisissez le groupe de sécurité pour le serveur.
Mise à jour de l'agent de surveillance pour collecter les mesures IPMI
Vous devez configurer l'agent de surveillance pour activer la collecte de métriques IPMI.
Choisissez l'une des options suivantes en fonction du type d'agent de surveillance que vous avez configuré :
Agent de surveillance Kubernetes
Exécutez la commande suivante pour éditer la mappe de configuration et ajouter des informations sur les hôtes sur lesquels l'exportateur IPMI est configuré :
kubectl edit configmap sysdig-agent -n ibm-observe
Modifiez le fichier yaml de sorte à ajouter la configuration Prometheus de l'exportateur IPMI :
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'
Où
<IP_ADDRESS_OF_REMOTE_SERVER>est l'adresse IP d'un serveur que vous souhaitez surveiller.<INGESTION_ENDPOINT>est le noeud final d'ingestion d'instance IBM Cloud Monitoring, par exemple,ingest.us-south.monitoring.cloud.ibm.com. Voir Noeuds finaux de collecteur.<IP_ADDRESS_OF_REMOTE_SERVER>:9290est l'adresse IP du serveur que vous souhaitez surveiller.
Lorsque vous enregistrez le fichier, les modifications sont appliquées.
Agent de surveillance du service Linux
Procédez comme suit pour mettre à jour l'agent de surveillance afin de collecter des métriques IPMI :
-
Accédez via SSH à l'hôte où l'agent de surveillance s'exécute. Accédez ensuite au répertoire
/opt/draios/etc/et exécutez la commande suivante :cd /opt/draios/etc/ -
Mettez à jour le fichier
/opt/draios/etc/dragent.yamlpour activer le raclage à distance.Ajoutez la section suivante à la fin du fichier
dragent.yaml: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" -
Redémarrez l'agent de surveillance. Exécutez la commande suivante :
service dragent restart
Vérifiez que vous obtenez des mesures IPMI
-
Créez un tableau de bord.
-
Ajoutez un panneau pour chacune des requêtes suivantes :
| Métrique | Requête PromQL | Options |
|---|---|---|
| IPMI en cours d'exéc | ipmi_up |
number (auto) |
| Tension | ipmi_voltage_volts |
number (auto) |
| Température en Celsius | ipmi_temperature_celsius |
number (auto) |
| Vitesse du ventilateur (tr par min) | ipmi_fan_speed_rpm |
number (auto) |
Par exemple, vous pouvez créer un tableau de bord qui se présente comme suit :
{: caption="de bord IPMIExemple de tableau de bord IPMIExemple de tableau " caption-side="bottom"} bord IPMI*