Configuration Files
Configurable Values: opsview.conf
Nagios® Core configuration files are recreated at every Opsview reload. The files are generated from the nagconfgen.pl
script.
Most Opsview configuration is performed via the web user interface. However some less common options are located in configuration files.
Opsview's main configuration file is /usr/local/nagios/etc/opsview.conf
. The defaults file is /usr/local/nagios/etc/opsview.defaults
and may be changed in future upgrades. The opsview.conf
file will not be touched.
The configuration takes the opsview.defaults
variables and overlays the opsview.conf
contents.
If you want to make any changes, edit opsview.conf. You must end the file with:
1;
Verify the configuration with:
/usr/local/nagios/bin/opsview.sh
This should return a subset of the variables in the file.
$max_parallel_tasks
This variable controls the number of parallel jobs that the Opsview reload process will use. This defaults to 4, but can be increased.
The output from the reload process is available in /usr/local/nagios/var/log/create_and_send_configs.debug
file. This explains where the most time is being used during the reload
$rrd_retention_days
This is the amount of time to leave untouched RRD files (for performance data, MRTG or NMIS) before deleting them.
$authtkt_shared_secret
This is the shared secret used by Opsview's authentication system. This secret can be passed to other applications (such as Nagvis) if you want single sign on ability.
You must restart Opsview Web for this to take effect.
Note: If you change this, you must update the key for all your SSO systems, including your Apache configuration file:
TKTAuthSecret "shared-secret-please-change"
If this secret is changed and your browser still has the old auth_tkt, then you will get an error in the Opsview login page that says “Invalid authentication ticket”.
$slave_initiated
If you have slaves setup, you can have them in reverse SSH mode, which means that the slave initiates the SSH connection to the master, who can then communicate via this tunnel.
$slave_base_port
To allow slave initiated setups, you have to have a base port number and the slave will be contactable via the base port number + their cluster node id. So choose a range which will not be used by anything else.
$bind_address
This defines the bind address for the opsview_web_server process. This defaults to 0.0.0.0 (all interfaces), but you can set to a specific interface if you prefer.
$nsca_server_address
This defines the server address for the nsca daemon on the master server. This defaults to 127.0.0.1, which is used by slaves in a distributed environment. Set to 0.0.0.0 if you want to listen on all interfaces so you can pass passive results to the master.
$nsca_encryption_method
This sets the encryption (send_nsca.cfg) and decryption method (nsca.cfg) when the configuration files are generated by Opsview. This defaults to 2 (DES).
$nrd_shared_password
This is a shared password between the NRD server (running on the Opsview master) and any NRD clients. This value is auto generated on an install.
If you change the value, you must do a reload (to generate the configuration files that NRD uses) and then you have to run /etc/init.d/opsview restart
on the master and all slaves to take effect.
$snmptrapexception_retention_days
This is the amount of time that SNMP trap exceptions are kept in the database. This defaults to 60 days.
$graph_show_legend
This sets whether graphs display the legends by default.
$graph_auto_max_metrics
This sets the value where a popup will appear on graph pages if there are more metrics than this number. By default this is 10.
$mrtg_forks
This sets the number of MRTG forks that can run concurrently. Defaults to 8.
$overrides
This variable overrides values in the generated nagios.cfg
and cgi.cfg
files. You need to set all the values together. For instance:
$overrides = <<'EOF'; nagios_service_check_timeout=120 nagios_max_concurrent_checks=50 nagios_enable_notifications=0 cgi_use_authentication=0 nagios_retained_host_attribute_mask=14 EOF
This would change max_concurrent_checks, enable_notifications and retained_host_attribute_mask in nagios.cfg
and use_authentication in cgi.cfg
.
Further information on nagios configuration can be found here.
NOTE: Be aware that changing some options may adversely affect the performance of Opsview.
Configuration Options: Opsview Web
Opsview Web uses the file /usr/local/opsview-web/opsview_web.yml
as its main configuration file. Local changes can be made in /usr/local/opsview-web/opsview_web_local.yml
and these will be retained over an upgrade.
Changes to these files require a restart of Opsview Web.
Authtkt Ignore IP
When generating the authtkt key, the browser IP address is added into the mix. However, in some scenarios, you may not want this - for instance, if you have multiple proxies in front of Opsview. You can ignore the IP address (internally, it will set the IP to 0.0.0.0).
Add to the opsview_web_local.yml file:
Controller::Root: authtkt_ignoreip: 1
Note: if you change this, you will also need to update the Apache configuration file so that the following is set:
TKTAuthIgnoreIP on
Starman Server Processes
Opsview Web uses Starman via Catalyst to server dynamic pages. It is possible to increase the number of Starman server processes to improve web responses, at the cost of using more memory.
You can estimate the amount of memory used by Starman with the following calculation:
- max_servers * 150MB
The default value is 10 for max_servers.
Add to the opsview_web_local.yml file:
ProductionEngine: max_servers: 20
Default thresholds for host interfaces
From Opsview 3.15.0, you can add the following to change the default host interface thresholds:
host_interfaces: default_throughput_critical: 55% default_throughput_warning: "" default_errors_critical: 20 default_discards_critical: 5
Temporarily Changing Nagios Core Configuration Values
Although Opsview will regenerate the Nagios Core configuration files on every reload, you can temporarily change the Nagios Core configuration files if you want to test something quickly for the Nagios Core daemon.
The process is:
- Make changes to the files you want
- Run a verification step:
/usr/local/nagios/bin/rc.opsview check
- Reload Nagios:
/usr/local/nagios/bin/rc.opsview reload