Most modern mainboards have sensors to monitor temperature, fan speed, and other items. The sensor information can normally be seen from the BIOS. This guide shows how to install lm_sensors which can read the sensor information for you.
Warning:
Running the sensor-detect script can crash your machine, read documentation for further details.
On my machine there was no problem - but be aware of this possibility.
First you need to install the MRTG package
[root@e-smith ]# rpm -Uvh http://sme.swerts-knudsen.dk/downloads/MRTG/mrtg-2.9.17-3.i386.rpm
Then you need to install the LM Sensor package
[root@e-smith ]# rpm -Uvh http://sme.swerts-knudsen.dk/downloads/MRTG/lm_sensors-2.6.1-1.i386.rpm
Detect the sensors on your mainboard, (run as root)
[root@e-smith ]# /usr/sbin/sensors-detect
For
my mainboard, I just hit enter for all questions, which then uses the defaults
which can be seen as CAPs.
Note down the lines
it suggests to put into /etc/modules.conf, for my mainboard
it indicated
#----cut here---- # I2C module options alias char-major-89 i2c-dev #----cut here----Note down the modprobe lines it suggests, for my mainboard it indicated
#----cut here---- # I2C adapter drivers modprobe i2c-viapro modprobe i2c-isa # I2C chip drivers modprobe eeprom modprobe via686a #----cut here----
Modify /etc/modules.conf via a template fragment. First make the templates-custom directory.
[root@e-smith ]# mkdir -p /etc/e-smith/templates-custom/etc/modules.confCreate a new template for i2c, using pico or your favorite editor.
[root@e-smith ]# pico /etc/e-smith/templates-custom/etc/modules.conf/10i2cCopy the lines from step 3 into this file, for my mainboard this file contains
{ foreach my $line ( "alias char-major-89 i2c-dev" ) { unless (exists $lines{$line}) { push @lines, $line; } } ""; }Now expand the custom template.
[root@e-smith ]# /sbin/e-smith/expand-template /etc/modules.conf
Create a
Initialization file /etc/e-smith/events/local/start_lmsensors,
with permissions 744 root root
This will load the required modules and initialize the sensors whenever your server boots up. The contents is naturally based on the out of the "sensors-detect" command issue above.
This will load the required modules and initialize the sensors whenever your server boots up. The contents is naturally based on the out of the "sensors-detect" command issue above.
[root@e-smith
]# pico /etc/e-smith/events/local/start_lmsensors
Now
inserts the correct text and press CTRL-X, Y, to save.
#!/bin/sh # Boot-up initialization lm_sensors # I2C adapter drivers /sbin/modprobe i2c-viapro /sbin/modprobe i2c-isa # I2C chip drivers /sbin/modprobe eeprom /sbin/modprobe via686a /usr/bin/sensors -sInitialize the sensors.
At this point you
can initialize the sensors manually, rather than rebooting.
[root@e-smith
]# chmod 744 /etc/e-smith/events/local/start_lmsensors
[root@e-smith ]# /etc/e-smith/events/local/start_lmsensorsYou can now check you sensors by issuing the sensor command
[root@e-smith ]# sensors
The output from my server is:
w83782d-i2c-0-2d Adapter: SMBus AMD7X6 adapter at 50e0 Algorithm: Non-I2C SMBus adapter VCore 1: +1.61 V (min = +1.52 V, max = +1.68 V) VCore 2: +3.34 V (min = +1.52 V, max = +1.68 V) +3.3V: +3.36 V (min = +3.13 V, max = +3.45 V) +5V: +5.11 V (min = +4.72 V, max = +5.24 V) +12V: +12.20 V (min = +10.79 V, max = +13.19 V) -12V: -12.13 V (min = -10.90 V, max = -13.21 V) -5V: -5.07 V (min = -4.76 V, max = -5.26 V) V5SB: +5.02 V (min = +4.72 V, max = +5.24 V) VBat: +3.28 V (min = +2.40 V, max = +3.60 V) fan1: 0 RPM (min = 3000 RPM, div = 2) fan2: 4141 RPM (min = 3000 RPM, div = 2) fan3: 0 RPM (min = 750 RPM, div = 8) temp1: +29.0°C (limit = +60°C, hysteresis = +50°C) sensor = thermistor temp2: +40°C (limit = +60°C, hysteresis = +50°C) sensor = thermistor temp3: +128°C (limit = +60°C, hysteresis = +50°C) sensor = PII/Celeron diode vid: +1.60 V alarms: Chassis intrusion detection ALARM beep_enable: Sound alarm disabled Now its about time to see some MRTG graphs. I have created a small perl script that provided output the way MRTG wants it. This script is available here. You can test its functionality by simply issuing it from the command line.
[root@e-smith
]# cd /etc/mrtg
[root@e-smith
]# wget http://sme.swerts-knudsen.dk/downloads/MRTG/mrtg_sensor.pl
[root@e-smith
]# ./mrtg_sensor.pl fan2
I
my case I get an output like:
4141
4141
[root@e-smith ]# mkdir -p /home/e-smith/files/ibays/mrtg/html/lm_sensors
[root@e-smith ]# cd /etc/mrtg
[root@e-smith ]# pico lm_sensors.cfg
Now inserts the following text (or download from the link above) and press CTRL-X, Y, to save.
workdir: /home/e-smith/files/ibays/mrtg/html/lm_sensors #--------------------------------------------------------------- # # MRTG Configuration file for LM Sensors # By Jesper Knudsen # Target[temp1]: `/etc/mrtg/mrtg_sensor.pl temp1` MaxBytes[temp1]: 200 Options[temp1]: gauge,nopercent Title[temp1]: System Temperature PageTop[temp1]: <H1> System Temperature</H1> WithPeak[temp1]: dwmy YLegend[temp1]: Temperature ShortLegend[temp1]: Celcius LegendI[temp1]: Temp: LegendO[temp1]: Target[temp2]: `/etc/mrtg/scripts/mrtg_sensor.pl temp2` MaxBytes[temp2]: 200 Options[temp2]: gauge,nopercent Title[temp2]: System Temperature PageTop[temp2]: <H1> System 1 Temperature</H1> WithPeak[temp2]: dwmy YLegend[temp2]: Temperature ShortLegend[temp2]: Celcius LegendI[temp2]: Temp: LegendO[temp2]: Target[temp3]: `/etc/mrtg/scripts/mrtg_sensor.pl temp3` MaxBytes[temp3]: 200 Options[temp3]: gauge,nopercent Title[temp3]: CPU Temperature PageTop[temp3]: <H1> CPU Temperature</H1> WithPeak[temp3]: dwmy YLegend[temp3]: Temperature ShortLegend[temp3]: Celcius LegendI[temp3]: Temp: LegendO[temp3]: Target[fan2]: `/etc/mrtg/scripts/mrtg_sensor.pl fan2` MaxBytes[fan2]: 5000 Options[fan2]: gauge,nopercent Title[fan2]: System Fan Speed PageTop[fan2]: <H1> System Fan Speed</H1> WithPeak[fan2]: dwmy YLegend[fan2]: RPM ShortLegend[fan2]: RPM LegendI[fan2]: Speed: LegendO[fan2]:Now we just need to make sure this new MRTG config file is run every 5 minutes. Inserts a new line in the all-ip file crated by during the "How to Install MRTG system monitoring with SNMP Support" Howto.
[root@e-smith ]# pico all-ip
Insert the following line in the bottom and press CTRL-X, Y, to save:
/usr/bin/mrtg /etc/mrtg/lm_sensors.cfg;
Now
wait 5 minutes and then try to look at
http://server.domain.com/mrtg/lm_sensors
An example of MRTG can be seen here
ไม่มีความคิดเห็น:
แสดงความคิดเห็น