All Projects → nobodysu → zabbix-mini-IPMI

nobodysu / zabbix-mini-IPMI

Licence: Unlicense license
Disk and CPU temperature monitoring for Linux, FreeBSD and Windows. LLD, trapper.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to zabbix-mini-IPMI

zabbix-smartmontools
Disk SMART monitoring for Linux, FreeBSD and Windows. LLD, trapper.
Stars: ✭ 41 (-50%)
Mutual labels:  zabbix, zabbix-sender, smartmontools, zabbix-agent
zabbix 44x next
Zabbix Next: Continued development of Zabbix version 4.4.x (unofficial)
Stars: ✭ 12 (-85.37%)
Mutual labels:  zabbix, zabbix-agent
zabbix-sender
java zabbix-sender
Stars: ✭ 70 (-14.63%)
Mutual labels:  zabbix, zabbix-sender
Zabbix Cli
Command-line interface for Zabbix
Stars: ✭ 141 (+71.95%)
Mutual labels:  zabbix
Libzbxpgsql
Monitor PostgreSQL with Zabbix
Stars: ✭ 150 (+82.93%)
Mutual labels:  zabbix
Zabbix
Zabbix Plugin
Stars: ✭ 195 (+137.8%)
Mutual labels:  zabbix
zbxdb
Zabbix database monitoring, the easy and extendable way
Stars: ✭ 87 (+6.1%)
Mutual labels:  zabbix
Zabbixapi
Ruby wrapper to Zabbix API
Stars: ✭ 128 (+56.1%)
Mutual labels:  zabbix
Rabbitmq Zabbix
Zabbix RabbitMQ Configuration
Stars: ✭ 241 (+193.9%)
Mutual labels:  zabbix
Wgcloud
linux运维监控工具,支持系统信息,内存,cpu,温度,磁盘空间及IO,硬盘smart,系统负载,网络流量等监控,API接口,大屏展示,拓扑图,进程监控,端口监控,docker监控,文件防篡改,日志监控,数据可视化,web ssh,堡垒机,指令下发批量执行,linux面板,探针,故障告警
Stars: ✭ 2,669 (+3154.88%)
Mutual labels:  zabbix
Thola
Tool for monitoring and provisioning network devices (mainly using SNMP) - monitoring check plugin
Stars: ✭ 179 (+118.29%)
Mutual labels:  zabbix
Zapix
Online Zabbix API tool - test and develope Zabbix API queries in the browser
Stars: ✭ 157 (+91.46%)
Mutual labels:  zabbix
Django Oms
加强版运维系统,集成工单、发布、监控、管理dns、saltstack
Stars: ✭ 201 (+145.12%)
Mutual labels:  zabbix
Opssam
opsSAM运维平台 (基于saltstack、cobbler和zabbix接口的集成管理)
Stars: ✭ 143 (+74.39%)
Mutual labels:  zabbix
Kubernetes Zabbix
📦 Kubernetes Zabbix/Grafana cluster (bare metal, Google Computer Engine - GCE, Google Container Engine - GKE)
Stars: ✭ 244 (+197.56%)
Mutual labels:  zabbix
Zabbix Notify
Notify alarms from Zabbix to Slack Hipchat and PagerDuty
Stars: ✭ 139 (+69.51%)
Mutual labels:  zabbix
Ewp oms
自动化运维系统(saltstack+django+bootstrap),QQ群342844540,博客http://ywzhou.blog.51cto.com
Stars: ✭ 211 (+157.32%)
Mutual labels:  zabbix
Zorka
Sophisticated monitoring agent for Java
Stars: ✭ 178 (+117.07%)
Mutual labels:  zabbix
Zabbix Haproxy
HAProxy Zabbix Discovery and Template
Stars: ✭ 169 (+106.1%)
Mutual labels:  zabbix
Zabbix manager
🍀 (1)安装后一键设置 (2)日常管理工具 (3)一键导出常用报表 (4)Zabbix API 二次开发
Stars: ✭ 192 (+134.15%)
Mutual labels:  zabbix

zabbix-mini-IPMI

CPU and disk temperature monitoring scripts for zabbix. Also support voltage and fan speed monitoring on certain configurations. Uses lm-sensors, smartmontools and OpenHardwareMonitorReport. For Linux, BSD and Windows.

Features

  • Multi-CPU, disk and GPU solution
  • Low-Level Discovery
  • Bulk item upload with zabbix-sender
  • No unnecessary processes are spawned
  • Does not spin idle drives
  • RAID passthrough (manual)

Temperature graph

More screenshots.

STANDBY drives

UPD: not relevant anymore. Just use custom 0.8.0.5+.

Choosing OHMR version

NEW: Update your OHMR version!

0.3.2.0

Version for Windows XP.

0.8.0.5

0.9.2.0

Only custom param-capable versions are supported on Windows 7+.

Installation

As prerequisites you need python3, lm-sensors, smartmontools, sudo and zabbix-sender packages. For testing zabbix-get is also required.
Take a look at scripts first lines and provide paths if needed. If you have custom RAID configuration, also provide that by hand. Import Template_mini-IPMI_v2.xml in zabbix web interface.

Debian / Ubuntu

client# apt install python3 sudo zabbix-agent zabbix-sender smartmontools lm-sensors
server# apt install zabbix-get

Centos

client# yum install python3 sudo zabbix-agent zabbix-sender smartmontools lm_sensors
server# yum install zabbix-get

First step

Linux

client# mv mini_ipmi_smartctl.py Linux/mini_ipmi_lmsensors.py sender_wrapper.py /etc/zabbix/scripts/
client# mv Linux/sudoers.d/zabbix /etc/sudoers.d/   # place sudoers include here for mini_ipmi_smartctl.py sudo access
client# mv Linux/zabbix_agentd.d/userparameter_mini-ipmi2.conf /etc/zabbix/zabbix_agentd.d/

FreeBSD

client# mv mini_ipmi_smartctl.py BSD/mini_ipmi_bsdcpu.py sender_wrapper.py /etc/zabbix/scripts/
client# mv BSD/sudoers.d/zabbix /usr/local/etc/sudoers.d/
client# mv BSD/zabbix_agentd.conf.d/userparameter_mini-ipmi2.conf /usr/local/etc/zabbix/zabbix_agentd.d/

Then, for Intel processor you need to add coretemp_load="YES" to /boot/loader.conf. For AMD it will be amdtemp_load="YES". Reboot or manual kldload is required to take effect.

Windows

client> move mini_ipmi_smartctl.py C:\zabbix-agent\scripts\
client> move mini_ipmi_ohmr.py C:\zabbix-agent\scripts\
client> move sender_wrapper.py C:\zabbix-agent\scripts\
client> move userparameter_mini-ipmi2.conf C:\zabbix-agent\zabbix_agentd.conf.d\

Install python3, adding it to PATH during installation for all users. Install smartmontools and add its bin folder to PATH in environment variables. OpenHardwareMonitorReport 0.8.0.5+ requires .NET Framework 4. 0.3.2.0 requires .NET Framework 3.

Second step

Then you need to include your zabbix conf folder in zabbix_agentd.conf, like this:

Include=/usr/local/etc/zabbix/zabbix_agentd.conf.d/

Also its recomended to add at least Timeout=10 to config file to allow drives spun up and OHMR execution.

Thats all for Windows. For others run the following to finish configuration:

client# chmod 755 scripts/mini_ipmi*.py scripts/sender_wrapper.py   # apply necessary permissions
client# chown root:zabbix scripts/mini_ipmi*.py scripts/sender_wrapper.py 
client# chmod 644 userparameter_mini-ipmi2.conf
client# chown root:zabbix userparameter_mini-ipmi2.conf
client# chmod 400 sudoers.d/zabbix
client# chown root sudoers.d/zabbix
client# visudo   # test sudoers configuration, type :q! to exit

Testing

server$ zabbix_get -s 192.0.2.1 -k mini.cputemp.discovery[get,"Example host"]
server$ zabbix_get -s 192.0.2.1 -k mini.disktemp.discovery[get,"Example host"]

or locally:

client$ /etc/zabbix/scripts/mini_ipmi_lmsensors.py get "Example host"
client$ /etc/zabbix/scripts/mini_ipmi_smartctl.py  get "Example host"

Default operation mode. Displays json that server should get, detaches, then waits and sends data with zabbix-sender. Example host is your Host name field in zabbix. You might want to use nonexistent name for testing to avoid unnecessary database pollution (client introduces itself with this name and false names will be ignored).

server$ zabbix_get -s 192.0.2.1 -k mini.cputemp.discovery[getverb,"Example host"]
server$ zabbix_get -s 192.0.2.1 -k mini.disktemp.discovery[getverb,"Example host"]

or locally:

client$ /etc/zabbix/scripts/mini_ipmi_lmsensors.py getverb "Example host"
client_admin!_console> python "C:\zabbix-agent\scripts\mini_ipmi_ohmr.py" getverb "Example host"

Verbose mode. Does not detaches or prints LLD. Lists all items sent to zabbix-sender, also it is possible to see sender output in this mode.

These scripts were tested to work with following configurations:

  • Centos 7 / Zabbix 3.0 / Python 3.6
  • Debian 9 / Zabbix 3.0 / Python 3.5
  • Debian 10 / Server 5.0 / Agent 4.0 / Python 3.7
  • Ubuntu 20.04 / Server 5.0 / Agent 4.0 / Python 3.8
  • FreeBSD 10.3 / Zabbix 3.0 / Python 3.6
  • Windows XP / Zabbix 3.0 / Python 3.4
  • Windows 7 / Zabbix (3.0, 5.0) / Python (3.4, 3.7, 3.8)
  • Windows Server 2012 / Zabbix 3.0 / Python 3.7

Known issues

  • Zabbix web panel displays an error on json discovery, but everything works fine (#18)
  • Windows version does not detaches, and data will only be gathered on second pass (probably permanent workaround)

Links

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].