Scope
In this no-brainer guide I am going to detail how to
install Centreon on a brand new CentOS
6.3 x64 machine.
Components:
Prerequisites
- CentOS is installed in text-mode using the CentOS-6.3-x86_64-LiveCD.iso image on a VirtualBox VM in my case
- Firewall ports 22 and 80 have been opened by the configuration tool
- Default services have been installed + sshd
- I consciously don't start the with yum update/upgrade so the expected result should be as much the same as possible
# install RPMForge # for details visit this website: http://wiki.centos.org/AdditionalResources/Repositories/RPMForge rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt uname -i # for me 'x86_64' is the result so I'll choose the x86_64 version wget -N http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm rpm -i rpmforge-release-0.5.2-2.el6.rf.*.rpm # Installing Apache2 + PHP yum -y install httpd php php-mysql php-gd usermod -U apache chkconfig httpd on # Set your timezone in php.ini to get rid of an ugly warinng in the future. # find date.timezone at the [date] section, uncomment and set it. for me it's Europe/Bucharest # date.timezone = Europe/Bucharest # find yours here: http://www.vmware.com/support/developer/vc-sdk/visdk400pubs/ReferenceGuide/timezone.html vim /etc/php.ini #
# Add port 80 to Firewall sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT sudo service iptables save # Installing GD modules yum -y install gd fontconfig-devel libjpeg-devel libpng-devel gd-devel perl-GD # Installing MySQL yum -y install openssl-devel perl-DBD-MySQL mysql-server mysql-devel # Installing PHP Dependencies yum -y install php-ldap php-xml php-mbstring # Installing DBI modules yum -y install perl-DBI perl-DBD-MySQL # Installing PERL modules yum -y install perl-Config-IniFiles # Installing RRDTools yum -y install rrdtool perl-rrdtool # Installing SNMP yum -y install perl-Crypt-DES perl-Digest-SHA1 perl-Digest-HMAC net-snmp-utils yum -y install perl-Socket6 perl-IO-Socket-INET6 net-snmp net-snmp-libs php-snmp dmidecode lm_sensors perl-Net-SNMP net-snmp-perl # Misc yum -y install fping cpp gcc gcc-c++ libstdc++ glib2-devel # Make is not included on cent-os by default yum -y install make # PEAR yum -y install php-pear pear channel-update pear.php.net # for those who have a web proxy # pear config-set http_proxy http://my_proxy.com:port pear upgrade-all # add the line rocommunity public 127.0.0.1/32 to snmpd.conf sed -i '$ a\rocommunity public 127.0.0.1/32' /etc/snmp/snmpd.conf service snmpd start chkconfig snmpd on # enabling NTP couldn't hurt chkconfig ntpd on ntpdate pool.ntp.org service ntpd start #
Installing Nagios
# Creating the nagios user /usr/sbin/useradd -m nagios /usr/sbin/usermod -L nagios # Creating a group to be able to use external commands /usr/sbin/groupadd nagcmd /usr/sbin/usermod -G nagios,nagcmd nagios /usr/sbin/usermod -G nagios,nagcmd apache # Download & Compile cd /usr/local/src/ wget -N http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.4.tar.gz tar -xzf nagios-3.4.4.tar.gz cd nagios ./configure --prefix=/usr/local/nagios --with-command-group=nagcmd --enable-nanosleep --enable-event-broker make all make install make install-init make install-commandmode make install-config chkconfig nagios on service nagios start #
Compiling Nagios Plugins
# cd /usr/local/src wget -N http://sourceforge.net/projects/nagiosplug/files/nagiosplug/1.4.16/nagios-plugins-1.4.16.tar.gz/download yum -y install fping openssl-devel openldap-devel postgresql-devel radiusclient-ng-devel samba-client libsmbclient yum -y install perl-devel cd /usr/local/src wget -N http://search.cpan.org/CPAN/authors/id/M/MS/MSCHWERN/ExtUtils-MakeMaker-6.64.tar.gz tar -xzf ExtUtils-MakeMaker-6.64.tar.gz cd ExtUtils-MakeMaker-6.64 perl Makefile.PL make make install cd /usr/local/src tar -xzf nagios-plugins-1.4.16.tar.gz cd nagios-plugins-1.4.16 ./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl=/usr/bin/openssl --enable-perl-modules make # Test-Simple-0.70 fails to compile otherwise so have to do it manually first cd ./perlmods/Test-Simple-0.70 perl Makefile.PL make make install # go back to nagios-plugins to make install cd ../.. make install #
Installing NDOutils
# cd /usr/local/src wget -N http://sourceforge.net/projects/nagios/files/ndoutils-1.x/ndoutils-1.5.2/ndoutils-1.5.2.tar.gz/download tar -zxvf ndoutils-1.5.2.tar.gz cd ndoutils-1.5.2 # get the patch and apply it; wget to same folder as ndoutils wget -N http://svn.centreon.com/trunk/ndoutils-patch/ndoutils1.5.2_light.patch yum -y install patch patch -p1 -N < ndoutils1.5.2_light.patch # continue installation ./configure --prefix=/usr/local/nagios/ --enable-mysql --with-ndo2db-user=nagios --with-ndo2db-group=nagios make # After creating the binaries and libraries they have to be copied cp -f ./src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o cp -f ./src/ndo2db-3x /usr/local/nagios/bin/ndo2db cp -f ./config/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg cp -f ./config/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg sudo chmod 774 /usr/local/nagios/bin/ndo* sudo chown nagios:nagios /usr/local/nagios/bin/ndo* # make ndo2db daemon autorun cp -f ./daemon-init /etc/init.d/ndo2db chmod +x /etc/init.d/ndo2db chkconfig ndo2db on #
Have you been able to do this the pre-made packages from EPEL?
ReplyDeleteI have a question in the ndoutils, Is it necessary to set up your own database?
ReplyDelete