Welcome to docs.opsview.com

Opsview version 3.6 is deprecated. Showing the most current documentation for Opsview Enterprise

Installation Guide - CentOS Linux

Before you start


See our design notes for further information on planning for separate database servers, disk partitioning and security.



See the installation prerequisites information to setup users, groups and MySQL.


Opsview is not currently compatible with Security-Enhanced Linux extensions, this must be disabled.

Edit /etc/selinux/config and restart system:

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
# SELINUXTYPE=targeted

Network Ports

On CentOS7, you will need to amend the firewall to allow port 80 to access the web interface. See this page for details about the ports used by Opsview.

RPMForge repositories

Set up RPMForge to install any necessary dependencies by downloading and installing the RPMForge release package. Download an appropriate RPM based on your OS from http://pkgs.repoforge.org/rpmforge-release/.

Then, as root user, install with:

rpm -Uhv rpmforge-release-*.rpm

Opsview repositories

Create a new file in /etc/yum.repos.d/opsview.repo Use this link below for further instructions:



Once the repositories have been updated to include the Opsview yum repository, the latest release of Opsview can be installed by running the following command as root:

yum install opsview

After the installation is complete

After the Opsview packages have been installed, it is necessary to configure Opsview and its databases.

1. Ensure the MySQL root password has been set to a known value:

mysqladmin -u root password {password}

If you get an error like:

error: 'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

Then mysql has not been started. Start it with

/etc/init.d/mysqld start

and ensure it is set to start at boot time with

chkconfig --level 345 mysqld on

See the MySQL setup page for more general MySQL settings.

2. Ensure the nagios user's environment is set up correctly. Opsview will try to set the correct profile, but check that the following line is in the profile script, depending on your shell (e.g. .profile for bourne or korn shell, .bash_profile or .bashrc for bash shell):

su - nagios
echo "test -f /usr/local/nagios/bin/profile && . /usr/local/nagios/bin/profile" >> ~/.bash_profile

3. The rest of the steps should be performed as the nagios user. Log out and back in again to ensure the profile is setup:

su - nagios

4. Edit the opsview configuration file and amend the password as you see fit to secure the system (those passwords that should be changed as set to changeme by default):

Note: Do not use any funny shell characters in the password, such as $ or !.

vi /usr/local/nagios/etc/opsview.conf   # change passwords in this file

5. Set up the Opsview mysql database users with the necessary permissions:

/usr/local/nagios/bin/db_mysql -u root -p{mysql root password}

6. Install the Opsview databases:

/usr/local/nagios/bin/db_opsview db_install
/usr/local/nagios/bin/db_runtime db_install
/usr/local/nagios/bin/db_odw db_install
/usr/local/nagios/bin/db_dashboard db_install

7. Generate all the necessary configuration files:

/usr/local/nagios/bin/rc.opsview gen_config

8. You can now start up the web application server:

/etc/init.d/opsview-web start

The Opsview server is now listening on port 3000, i.e. http://opsview.example.com:3000/. Confirm that this works correctly before configuring Apache.

Note: This maybe quite slow to respond. Please set the Apache configuration below which will speed up the response times considerably.

If iptables is running, it may disable this port. Configure iptables to allow incoming requests to port 3000 for the duration of this test.

Using Apache as a proxy server

The performance of Opsview will be significantly improved by using Apache at the front end. All the following commands should be run as root.

1. Edit the apache configuration files and enable proxy_html:

cd /etc/httpd/conf
vi httpd.conf

You need to ensure that:

  • The line “LoadModule proxy_http_module modules/mod_proxy_http.so” is uncommented
  • The line 'DocumentRoot ”/var/www/html”' is commented out

2. Create /etc/httpd/conf.d/opsview.conf:

<VirtualHost *>
    Include /usr/local/opsview-web/etc/apache_proxy.conf

3. Amend the apache web server user group membership to include nagcmd group:

usermod -G nagcmd apache

Check to ensure the apache user is correct for your web software.

If you use a centralised user management system, you may need to amend /etc/group manually. To test that the permissions are set correctly, run id apache and look for the nagcmd group.

4. Restart Apache:

/etc/init.d/httpd restart

You can now access Opsview at your server url, for example: http://opsview.example.com/

If apache does not allow proxying, you need to disable SELinux

Logging in

Once Opsview has been installed, a single administrative user will have been created. The credentials for this user are:

username: admin
password: initial

You should change this password to prevent unauthorised access to Opsview - this can be done from 'Administrator' link in the top right of the page.

See the quick start guide for an introduction to Opsview


Automatic dependencies

Yum should automatically work out all dependencies when installing Opsview, but in the event that installing the opsview package does not bring in opsview-base, opsview-perl, etc then follow these steps:

  • Ensure yum-updatesd-helper is not running
  • yum remove opsview
  • yum clean all
  • yum makecache

Running yum deplist opsview should now show the correct dependencies and allow opsview to be installed correctly.