This page describes some prerequisites that should be followed before installation of the Opsview software.
Note that package installation of Opsview will bring in other dependent software. However, some of the tasks below may require the dependent software to be installed first.
Note: you should not install Nagios® Core separately as Opsview depends on its own version of Nagios Core.
The Opsview installation package will create the required users and groups if they do not currently exist.
However, if you wish to create the user groups yourself and be sure they exist, then below are the requirements.
Note: You cannot use different user names or group names.
Create the following groups:
Create the following user with the groups assigned to that user:
If you use an external authentication system, you may need to make some changes to local user and group files. We recommend that you have these users and groups setup locally to remove the dependency on an external system.
The web server user will also need to be in the nagcmd group. This depends on the username of the web server software based on your distribution.
Note: The nagios user needs to have write access to its home directory. The installation will update the .profile (or .bash_profile) in the nagios user's home directory in order to source the profile
/usr/local/nagios/bin/profile, which is required to setup some Opsview environment variables. If this is not on setup on your system, you can run
/usr/local/nagios/installer/set_profile as the nagios user to do it for you.
If you install Opsview via the APT or YUM repositories, this will install dependent software, including MySQL. However, we recommend that you install MySQL prior to installing Opsview so that you can tune MySQL before Opsview creates its required databases.
Opsview uses a mixture of MyISAM and InnoDB engine types. For manageability, we recommend you make the following changes to my.cnf in the mysqld section before installing Opsview. Note, you will have to restart MySQL to take effect.
We recommend you make the following change to your MySQL configuration.
This caches transaction changes so that database changes are flushed once per second, instead of per transaction. See http://dev.mysql.com/doc/refman/5.0/en/innodb-parameters.html for more details.
On a dedicated mysql server, you should set the innodb_buffer_pool_size as large as possible, leaving around 40% free memory for the OS:
innodb_buffer_pooltoo high as Opsview will require memory to run all its checks and to serve the dynamic web pages. Over allocation of memory to Mysql will cause it use swap which slows the whole server dramatically. Ensure there is at least 80% free memory outside of Mysql for shared servers.
It may be desirable to disable MySQL bin logging. If this is left enabled, it is recommended that the amount of free disk space is monitored.
See the MySQL tuning pages for more recommendations.