Install Icinga2 and Icingaweb2 monitoring on Ubuntu 14.04
--
You can install Icinga2 on your monitoring node by following simple steps:
note: Make sure that you have install apache2 before these installations.
Step 1 : Install Icinga2
# wget -O - http://packages.icinga.org/icinga.key | apt-key add -
# add-apt-repository 'deb http://packages.icinga.org/ubuntu icinga-trusty main
# apt-get update
# apt-get install icinga2
Step 2: Install MySQL and client
apt-get install mysql-server mysql-client
Step 3: Install icinga database
# apt-get install icinga2-ido-mysql
Enable Icinga 2's ido-mysql fetures "Yes" enter
Step 4: Login in MySQL and create a database
# mysql -u root -p
mysql> CREATE DATABASE icinga;
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';
mysql> quit
Sometimes, when login to MySQL you may receive the following error,
Access Denied for User ‘root’@’localhost’ (using password: YES)
You can avoid this error by reseting the root password. Before reset, you need to know your mysql version to proceed. Type mysql — version and check your mysql version. Then execute following command according to your mysql version.
MySQL 5.7.6 and later:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
MySQL 5.7.5 and earlier:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
Step 5: Enable livestatus feature and restart Icinga deamon
# icinga2 feature enable livestatus
# service icinga2 restart
Step 6: Add user to the group for permissions
# usermod -a -G nagios www-data
Step 7: Enable compat log and database feature and restart Icinga
# icinga2 feature enable compatlog
# icinga2 feature enable ido-mysql
# icinga2 feature enable command
# service icinga2 restart
Now you have succesfully install the Icinga2 on your server. Then we can proceed with installing icingaweb2.
Step 8: Clone Icinga web repository from Github
# apt-get install git
# git clone https://github.com/Icinga/icingaweb2.git
Step 9: Move cloned directory to /usr/share/icingaweb
# mv icingaweb2 /usr/share/
# cd /usr/share
Step 10: Install lamp server
# tasksel install lamp-server
Step 11: Naviagate to Icingaweb2 and run the following command.
# cd icingaweb2
# ./bin/icingacli setup config webserver apache --document-root /usr/share/icingaweb/public
Step 12: copy paste the generated output in sites-enabled
vi /etc/apache2/sites-enabled/000-default.conf
Step 13: Enable apache module rewrite and restart service
# service apache2 restart
# a2enmod rewrite
# service apache2 restart
Step 14: Create a directory and change it’s permission
# mkdir /etc/icingaweb2
# chmod 777 -R /etc/icingaweb2
Step 15: Open your browser and navigate to localhost/icingaweb2/setup
If it is a remote instance you can use it’s public ip instead of localhost to access the icingaweb2.
http://host-or-ip/icingaweb2/setup
It will ask for a token to proceed. you can generate token using following command,
su www-data --shell=/bin/bash -c "mkdir -m 2770 /etc/icingaweb2; head -c 12 /dev/urandom | base64 | tee /etc/icingaweb2/setup.token; chmod 0660 /etc/icingaweb2/setup.token;";
Now you need to config PHP `date.timezone’. change time zone to “Asia/Kolkata” in /etc/php5/apache2/php.ini file then uncomment ‘date.timezone’. Then click ‘Next’.
Then Resolve PHP dependencies.
# apt-get install php5-ldap
# service apache2 restart
# apt-get install php5-intl
# apt-get install php5-gd php5-imagick
# service apache2 restart
Then keep clicking ‘Next’ until you meet configuring database resources.
Step 16: Configuring Database Resources
You need to fill the page with the following details:
Step 17: Adminstration
Click next until you meet administration page and then fill it with relavant details.
Step 18: Monitoring IDO resource
Keep clicking next until you meet IDO resource. Fill the page with database details and click on validate for ensuring the configurations.
Click next and finish the configuration steps. You will meet with the following page.
Then login to icinga web. Now you have succesfully configured Icinga 2 and Icingaweb 2 on your ubuntu 14.04 machine. Cheers !!!!!!