<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://t2bwiki.iihe.ac.be/index.php?action=history&amp;feed=atom&amp;title=SetupMonitoringControlerSunfireV20z</id>
	<title>SetupMonitoringControlerSunfireV20z - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://t2bwiki.iihe.ac.be/index.php?action=history&amp;feed=atom&amp;title=SetupMonitoringControlerSunfireV20z"/>
	<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=SetupMonitoringControlerSunfireV20z&amp;action=history"/>
	<updated>2026-04-20T10:04:17Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=SetupMonitoringControlerSunfireV20z&amp;diff=242&amp;oldid=prev</id>
		<title>Maintenance script: Created page with &quot; === Procedure to enable LSI controler monitoring on Sunfire v20z ===  We encountered the case of a Sunfire v20z server not managed by Quattor on which we wanted to enable m...&quot;</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=SetupMonitoringControlerSunfireV20z&amp;diff=242&amp;oldid=prev"/>
		<updated>2015-08-26T12:29:02Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot; === Procedure to enable LSI controler monitoring on Sunfire v20z ===  We encountered the case of a Sunfire v20z server not managed by Quattor on which we wanted to enable m...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
=== Procedure to enable LSI controler monitoring on Sunfire v20z ===&lt;br /&gt;
&lt;br /&gt;
We encountered the case of a Sunfire v20z server not managed by Quattor on which we wanted to enable monitoring of the disk controlers.&lt;br /&gt;
&lt;br /&gt;
*Get the brand and model of the controler :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat /proc/scsi/scsi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 which gave to us : LSILOGIC Model: 1030 IM.&lt;br /&gt;
&lt;br /&gt;
*Get the version of the operating system :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat /proc/version&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 which in our case indicated RHEL4.&lt;br /&gt;
&lt;br /&gt;
*Go to the constructor&amp;#039;s website :&lt;br /&gt;
 http://www.lsi.com/cm/DownloadSearch.do?locale=EN&lt;br /&gt;
&lt;br /&gt;
 and download the drivers for your model and operating system.&lt;br /&gt;
*Uncompress the downloaded file. Inside, you&amp;#039;ll find a directory ../message/fusion. Copy this directory into /usr/src/linux/drivers.&lt;br /&gt;
 &lt;br /&gt;
 At this stage, you should have a directory /usr/src/linux/drivers/message/fusion containing the following files :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	lsi/mpi_type.h&lt;br /&gt;
	lsi/mpi.h&lt;br /&gt;
	lsi/mpi_ioc.h&lt;br /&gt;
	lsi/mpi_cnfg.h&lt;br /&gt;
	lsi/mpi_raid.h&lt;br /&gt;
	mptctl.h&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 These files will be used when you will compile mpt-status.&lt;br /&gt;
*Download the tarball containing the source files for the tool mpt-status at the following address :&lt;br /&gt;
 http://www.drugphish.ch/~ratz/mpt-status/&lt;br /&gt;
&lt;br /&gt;
*Uncompress the tarball. Inside you&amp;#039;ll find a file mpt-status that you must edit in a way to comment the following line :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#include &amp;lt;linux/compiler.h&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 and then :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 Once the make is successfully finished, you should find a binary file mpt-status.&lt;br /&gt;
&lt;br /&gt;
*Before testing the new mpt-status command, you must first load the kernel module mptctl :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
modprobe mptctl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Simply test the mpt-status command by :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mpt-status -s&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 In our case, we got :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
log_id 0 OPTIMAL &lt;br /&gt;
phys_id 0 ONLINE &lt;br /&gt;
phys_id 1 ONLINE&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*As everything works, you can install the files :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make install&lt;br /&gt;
cp man/mpt-status.8 /usr/share/man/man8&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*To make sure that the kernel module mptctl will be loaded at each startup of the server :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;alias char-major-10-220 mptctl&amp;quot; &amp;gt;&amp;gt; /etc/modprobe.conf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*To make the check on the disk controler fully automatic, you can create the following script in /etc/cron.hourly :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh &lt;br /&gt;
&lt;br /&gt;
# Check of controler state &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ADMIN=&amp;quot;grid_admin@listserv.vub.ac.be&amp;quot; &lt;br /&gt;
&lt;br /&gt;
# The return code from mpt-status is a bit mask, and can be interepreted &lt;br /&gt;
# according to the following table (current as of 1.2.0): &lt;br /&gt;
#   Bit   Value   Meaning &lt;br /&gt;
#   ----------------------------------------------------------------- &lt;br /&gt;
#     0       1   Abnormal condition / unknown error &lt;br /&gt;
#     1       2   A logical volume has failed &lt;br /&gt;
#     2       4   A logical volume is degraded &lt;br /&gt;
#     3       8   A logical volume is resyncing &lt;br /&gt;
#     4      16   At least one physical disk failed &lt;br /&gt;
#     5      32   At least one physical disk is in warning condition &lt;br /&gt;
&lt;br /&gt;
/usr/sbin/mpt-status -s &amp;gt;/dev/null &lt;br /&gt;
&lt;br /&gt;
if [ $? -ne 0 ] &lt;br /&gt;
then &lt;br /&gt;
    # Email out to let use know the disk failed &lt;br /&gt;
    echo &amp;quot;&amp;quot; | mail -s &amp;quot;Disk drive failure on $HOSTNAME&amp;quot; ${ADMIN} -- -r gridstorage@ulb.ac.be &lt;br /&gt;
&lt;br /&gt;
    # Write a message to syslog so big brother can notify operations &lt;br /&gt;
    logger -p daemon.info &amp;quot;STORAGE ERROR: A failure was detected with the LSI Logic RAID controller or one of the disk drives&amp;quot; &lt;br /&gt;
    logger -p daemon.info &amp;quot;STORAGE ERROR: Run /usr/sbin/mpt-status to view the status of the storage subsystem&amp;quot; &lt;br /&gt;
fi &lt;br /&gt;
&lt;br /&gt;
exit 0 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 And finally, to make the script runnable :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
chmod 755 /etc/cron.hourly/checklsi.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>