dnf -y install collectd collectd-utils collectd-ipmi





collectd-ipmi.te

collectd-ipmi.pp

semodule -i collectd-ipmi.pp


journalctl -xe
sealert -l xxxx


cat /var/log/audit/audit.log | audit2allow -M collectd-ipmi

te → mod → pp

(별표 표시) https://relativkreativ.at/articles/how-to-compile-a-selinux-policy-package





KERNEL=="ipmi*", MODE="660", GROUP="collectd"


# ls -alRZ /dev/ipmi*
crw-rw----. 1 root collectd system_u:object_r:ipmi_device_t:s0    /dev/ipmi0

https://github.com/influxdata/telegraf/issues/3332

https://www.linuxserver.io/blog/2017-11-25-how-to-give-telegraf-ipmitool-permissions-via-udev




#!/bin/bash

HOSTNAME="${COLLECTD_HOSTNAME:-localhost}"
INTERVAL="${COLLECTD_INTERVAL:-5}"

while sleep "$INTERVAL"; do
  VALUE=$( /usr/bin/ipmitool dcmi power reading 2>&1 | grep -i instantaneous | sed -e 's/[^0-9]//g' )
  #echo "PUTVAL \"$HOSTNAME/grep_log/gauge-stuff\" interval=$INTERVAL N:$VALUE"
  echo "PUTVAL \"$HOSTNAME/dcmi/power\" interval=$INTERVAL N:$VALUE"
done


https://collectd.org/wiki/index.php/Plugin:Exec

https://github.com/jabl/collectd-plugin-dcmi



https://collectd.org/wiki/index.php/Plugin:IPMI




https://ibigbug.online/dell-r720-poweredge-server-hardware-monitoring


https://www.elastic.co/guide/en/logstash/current/plugins-codecs-collectd.html




https://www.elastic.co/guide/en/logstash/current/ls-security.html