Linux

SIM (System Integrity Monitor) Installation and Configuration

SIM logoSIM (System Integrity Monitor) is a system and services monitor for ‘SysVinit’ systems. It is designed to be intuitive and modular in nature, and to provide a clean and informative status system.It does this by consistently verifying that services are online, load averages are in check, and log files are at reasonable sizes. Many other SIM modules sport different and in-depth features to bring a well rounded tool to your disposal to stop otherwise common issues daunting internet hosts.

SIM (System Integrity Monitor) Installation steps:

1. Login to your server via SSH as root.

2. Download the most current version of SIM (System Integrity Monitor)

root@server[#]wget http://www.r-fx.org/downloads/sim-current.tar.gz

3. Extract the tar.gz file at once

root@server[#]tar -xzvf sim-current.tar.gz

The last line should look like

sim-2.5-3/CREDITS

everything before the / is the directory where the script was extracted too.

4. Go to sim-2.5-3  directory where SIM was extracted

root@server[#]cd sim-2.5-3

Execute the install script 'setup' that was extracted with the '-i' parameter.

root@server[#]./setup -i

You get somsthin smiliar like this

SIM 2.5-3

Press return, to view the GPL licensing for SIM 2.5-3.

[ENTER]

Then press "Enter"

when it says MORE press the "space bar"

Then press "Enter"

Then when it syas MORE press the "space bar"

Running the Auto-Config Script.

If you are comming from step 5, you do not have to do this, but if you want to redo the configuration later, you can get this script by executing:

root@server[#/usr/local/sim/autoconf
or
root@server[#]sim-autoconf

SIM (System Integrity Monitor) Configuration:

Where is SIM installed ?This will give you path of SIM
[/usr/local/sim]:
{enter}

Where should the sim.log file be created ?
[/usr/local/sim/sim.log]:
{enter}

Max size of sim.log before rotated ? Kb
[128]:1024
{enter}

[root]:youremail@email.com
{enter}

Disable alert emails after how many events, to avoid email flood ?
(Note: events stats are cleared daily)
[10]:3
{enter}

The below are configuration options for Service modules:
press return to continue…
{enter}

Auto-restart services found to be offline ? (true=enable, false=disable)
[true]:
{enter}

Enforce laxed service checking ? (true=enable, false=disable)
[true]:
{enter}

Disable auto-restart after how many downed service events ?
(Note: events stats are cleared daily)
[10]:
{enter}

Enable FTP service monitoring ? (true=enable, false=disable)
[false]:
{enter}

Enable HTTP service monitoring ? (true=enable, false=disable)
[false]:True
{enter}

Enable DNS service monitoring ? (true=enable, false=disable)
[false]:True
{enter}

Enable SSH service monitoring ? (true=enable, false=disable)
[false]:True
{enter}

Enable MYSQL service monitoring ? (true=enable, false=disable)
[false]:True
{enter}

Enable SMTP service monitoring ? (true=enable, false=disable)
[false]:True
{enter}

TCP/IP port that SMTP operates on ?
[25]:
{enter}

Enable XINET service monitoring ? (true=enable, false=disable)
[false]:True
{enter}

TCP/IP port that any XINET service operates on (e.g: pop3, 110) ?
[110]:
{enter}

Enable ENSIM service monitoring ? (true=enable, false=disable)
[false]:
{enter}

Enable PGSQL service monitoring ? (true=enable, false=disable)
[false]:
{enter}

Please shut down HTTP , semaphore array’s may remain allocated and cause the service to fall into a loop of restarting cycle. Using this feature clears semaphore arrays on HTTP restart. Enable semaphore cleanup ?
[false]:
{enter}

 

This is an implemented feature in the http module, its purpose is to determine if/when the apache server locks up or otherwise stops httpd to responding. Enable URL aware monitoring ?
:True
{enter}

 

URL path to a local file ? (exclude HTTP://)
Note: This URL should be valid and reside on the local server, otherwise HTTP will loop restarting
[127.0.0.1/index.html]: http://ServerIP/ or Type: site.com/index.html that resides on your local server
{enter}

HTTP log files can grow large and cause the service to crash (segfault), this feature will keep the main HTTP logs incheck. Enable HTTP log monitor ?
[false]:
{enter}

 

MySQL uses a /tmp symlink of its mysql.sock socket file. This feature verifies that the symlink exists from the main mysql.sock file, and if not it is recreated. Enable MySQL Socket correction ?
[false]:
{enter}

Enable NETWORK monitoring ? (true=enable, false=disable)
[false]:True
{enter}

interface to monitor ?
[eth0]:
{enter}

Enable LOAD monitor ? (true=enable, false=disable)
[false]:True
{enter}

Load level before status condition ‘warning’ ?
[25]:
{enter}

Load level before status condition ‘critical’ ?
[45]:
{enter}

Enable a global (wall) message at status condition ‘warning’ & ‘critical’ ?
[false]:
{enter}

Renice services at status condition ‘warning’ or ‘critical’ ?
(3 values – warn, crit, false – false=disabled)
[false]:
{enter}

Stop nonessential services at status condition ‘warning’ or ‘critical’ ?
(3 values – warn, crit, false – false=disabled)
[false]:
{enter}

Reboot system on status condition ‘warning’ or ‘critical’ ?
(3 values – warn, crit, false – false=disabled)
[false]:
{enter}

Now SIM has been configured you can add a cron.

root@server[#]./setup -c

If it says “Removed SIM cronjob.” then you must type it again.

root@server[#]./setup -c

SIM has been installed now

In order for SIM to work properly, it must be executed regularly, and the best method for this is by using a cronjob.

By default, a SIM cronjob is automatically added during setup and set to run every 5 minutes. To add it or remove it later, you can execute this:

root@server[#]/usr/local/sim/sim -j

or

root@server[#]/usr/local/sbin/sim -j

If any feedback, queries are always welcome!

Abhijit Sandhan

Love to Automate, Blog, Travel, Hike & spread Knowledge!

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Back to top button