Skip to content

Instantly share code, notes, and snippets.

@igorgrin
Last active August 29, 2015 14:11
Show Gist options
  • Save igorgrin/25db8aef02dd290d587e to your computer and use it in GitHub Desktop.
Save igorgrin/25db8aef02dd290d587e to your computer and use it in GitHub Desktop.
#!/bin/sh
echo "You need to make sure SELinux is permissive (see /etc/selinux/config), temporarily disabling for this script just incase."
setenforce 0
echo "Installing Icinga"
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
yum install -y icinga icinga-gui icinga-doc icinga-idoutils-libdbi-mysql
yum install -y mysql-server mysql libdbi libdbi-devel libdbi-drivers libdbi-dbd-mysql
yum install -y nagios-plugins nagios-plugins-all
echo "Setting up MySQL Database"
service mysqld start
chkconfig mysqld on
mysql <<EOF
CREATE DATABASE icinga;
GRANT USAGE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost';
FLUSH PRIVILEGES;
CREATE DATABASE icinga_web;
GRANT USAGE ON *.* TO 'icinga_web'@'localhost' IDENTIFIED BY 'icinga_web' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0;
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, INDEX ON icinga_web.* TO 'icinga_web'@'localhost';
EOF
mysql icinga < /usr/share/doc/icinga-idoutils-libdbi-mysql-*/db/mysql/mysql.sql
echo "Installing PNP4NAGIOS - required by icinga-web"
yum -y install php-gd gcc libdbi ruby xorg-x11-fonts-Type1 perl-Time-HiRes perl-String-CRC32 perl-Crypt-Rijndael gettext
rpm -ivh http://pkgs.repoforge.org/rrdtool/rrdtool-1.4.7-1.el6.rfx.x86_64.rpm http://pkgs.repoforge.org/rrdtool/perl-rrdtool-1.4.7-1.el6.rfx.x86_64.rpm
rpm -hiv ftp://ftp.pbone.net/vol2/ftp5.gwdg.de/pub/opensuse/repositories/devel%3A/languages%3A/perl/CentOS_5/noarch/perl-Gearman-1.11-2.3.noarch.rpm ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/shetze:/monitoring/CentOS_CentOS-6/x86_64/pnp4nagios-0.6.13-17.3.x86_64.rpm
echo "Installing PHP dependencies"
yum install -y php php-cli php-pear php-xmlrpc php-xsl php-pdo php-soap php-gd php-ldap php-mysql
yum install -y icinga-web icinga-web-module-pnp
echo "Installing check_nrpe plugin, you'll need to do a 'yum -y install nrpe' on the remote servers."
yum -y install nagios-plugins-nrpe
echo "Starting Services"
service icinga start
chkconfig icinga on
chkconfig httpd on
service httpd restart
echo "login to http://yourservername/icinga with login name icingaadmin and password icingaadmin"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment