Monitorix Install cPanel

From James Dooley's Wiki
Jump to: navigation, search


Set up RPMForge and Yum Priories

Enable extras if it is diabled and comment out excludes

vim /etc/yum.repos.d/yum.system.repo
vim /etc/yum.conf

Cent5:

yum install yum-priorities

Cent4:

yum install yum-plugin-priorities

Add priority line

vim /etc/yum.repos.d/yum.system.repo

priority=1

Install RPMForge repo

CentOS 4:

i386 http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el4.rf.i386.rpm

x86_64 http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el4.rf.x86_64.rpm

rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

rpm -i rpmforge-release-0.5.2-2.el4.rf.*.rpm


CentOS 5:

i386 http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm

x86_64 http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm

Add priority line to rpmforge

vim /etc/yum.repos.d/rpmforge.repo

priority=15

Add plugins line to yum.conf and renable excludes

vim /etc/yum.conf

plugins=1

yum update to ensure priorities are working correctly. (DO NOT UPDATE)

If APF shows up then ensure that it is added in the excludes line

Install Requirements

Comment out excludes line in yum.conf

vim /etc/yum.conf

yum install rrdtool rrdtool-perl perl-libwww-perl perl-MailTools perl-MIME-Lite perl-CGI

Re-enable excludes in yum.conf

vim /etc/yum.conf

Install Monitorix

Download Monitorix and Modify

wget http://www.monitorix.org/monitorix-2.1.0-1.noarch.rpm

vim monitorix-2.1.0-1.noarch.rpm

change apache:apache to nobody:nobody otherwise it will die on cPanel

This should actually be set to the user that owns the server web account.

Usually this is nobody on cpanel builds.

Install without checking RPM

rpm -ivh --nosignature --nodigest monitorix-2.1.0-1.noarch.rpm

Add site to http.conf

vim /usr/local/apache/conf/includes/post_virtualhost_global.conf

Include "/usr/local/apache/conf.d/monitorix.conf"

Create users (optional)

/usr/local/apache/bin/htpasswd -c /usr/local/apache/conf.d/.monitorix <user>

Edit monitorix apache config

vim /usr/local/apache/conf.d/monitorix.conf

Comment out:

order deny,allow

deny from all

allow from 127.0.0.1


Uncomment:

Options

AllowOverride (if creating users)

AuthUserFile (if creating users)

AuthName (if creating users)

AuthType (if creating users)

Require User (if creating users)


Change:

AllowOverride AuthConfig

AuthUserFile /usr/local/apache/conf.d/.monitorix

Require valid-user


Restart Apache

service httpd restart

Include perl path for RRD

Both of these files need to be edited to provide the correct path to the RRDs.pm file.

Place the code directly below the comments block but above the first command.

Alternately you could create a symlink but, that would make the module available to everyone.

vim /usr/share/monitorix/cgi-bin/monitorix.cgi

vim /usr/bin/monitorix

x64

BEGIN {

       unshift(@INC, '/usr/local/cpanel/3rdparty/lib/perl/5.8.8/x86_64-linux/');

}

x32

BEGIN {

       unshift(@INC, '/usr/local/cpanel/3rdparty/lib/perl/5.8.8/i686-linux/');

}


Start Monitorix

service monitorix start

Test

Login to http://server/monitorix ensure that you can actually view graphs

If you get a directory listing

This is usually caused be a permissions error with the monitorix daemon.

If you touch the file and restart monitorix it will usually fix the problem.

touch /usr/share/monitorix/index.html

service monitorix restart

Additional Stuff

Multi server mode

The central server will need to have its config changed

vim /etc/monitorix.conf

search for Multihost and change:

our $MULTIHOST = "Y";

our @REMOTEHOST_LIST =

This list contains the remote servers that it can call up.

If it is a cPanel server with suexec you should use the full host name