IPMIMEXは、「インテリジェントなプラットフォーム管理インターフェイス」( IPMI )バージョンを提供するプラットフォームサービス用のMetrics ex Porter <= 2.0です。 IPMIMEXは、このプロトコルを使用して目的のデータを収集し、エンドポイントURL http:// hostname:9290 /Metrics(もちろんポートとIPがカスタマイズ可能)を使用してPrometheuse exposition形式でHTTPを介してそれらをオプションで公開します。
基本的に、 IPMIMEXはIPMIサービス(例: B ASEBOARD MANAGENT C ONTROLLER(BMC)で実行されている)からすべてのデータを取得および公開できます。IPMitoolSDR ipmitool sdr type {Temperature|Voltage|Fan}およびipmitool dcmi power readingを使用して手動でクエリすることができます。しかし、他のIPMIメトリック輸出業者(および非効率的で遅いデータ処理/リソースの使用)で見られるフォーク/エグゼクティブナイトメアの代わりに、 IPMIMEXはCで書かれた本物のデーモンです。これは、可能な限り多くのデータをキャッシュし、デフォルトを介してデフォルト/dev/ipmi0を介して直接話します(現代linux kernels 11)または/bmc (solaris)。
ユーティリティの効率、サイズ、およびシンプルさが主な目標の1つであるため、OEM固有のレコード/データは無視されます(監視する価値があるIPMIを介して公開されているOEM固有のデータはまだ見ていません)。 libpromのほかに、いくつかのプロメテウス(prom)関連のものとlibmicrohttpdを処理して、httpアクセスを提供するために、サードパーティライブラリ、ツールなどは使用されません。最後になりましたが、意図的には、リモートサービスをクエリするためのIPMI LAN [+]サポートはありません。基本的なアイデアは、 IPMIMEXをマシン上のローカルサービスとして実行して、OSツールとサービス(ファイアウォール、HTTPプロキシ、Victoriametrics VMagentなど)を監視および使用して、暴露データへのアクセスを制御することです。
必要に応じてMakeFileを調整し、オプションで関連する環境変数( export USE_CC=gcc )を設定し、gnu makeを実行します。
IPMIMEXの公式リポジトリはhttps://github.com/jelmd/ipmimexです。新しい機能(またはバグ修正)が必要な場合は、https://github.com/jelmd/ipmimex/issuesを使用して問題を作成してください。
IPMIMEXは、セマンティックバージョンの基本的なアイデアに従っていますが、現実の世界を念頭に置いています。したがって、公式リリースには常に3つの数字(ABC)があり、それ以上ではありません!毎晩、アルファ、ベータ、RCビルドなど。0.0以下のドット分離された数字が追加されるため、4桁> 0を使用して常に上書きできるようになります。
CDDL 1.1
libpromおよびipmimexのubuntuパッケージは、https://pkg.cs.ovgu.de/lnf/linux/ubuntu/から見つけることができます(libprom*.debおよびipmimex*.debを検索)。 libmicrohttpdはubuntu自体によって提供されるため、ベンダーパッケージを使用することをお勧めします(ubuntu 20.04の場合はlibmicrohttpd12という名前です)。ヘッダーソースファイルを備えた関連パッケージは、Libprom-Dev.DebおよびLibmicrohttpd-Dev.debという名前です。