Updated configuration to be dynamic, added sqlite and postgresql support to proxy as well
This commit is contained in:
parent
62363887df
commit
b7c77189a0
10 changed files with 144 additions and 1690 deletions
|
@ -7,7 +7,7 @@ default['zabbix']['agentd']['config']['SourceIP'] = nil
|
||||||
default['zabbix']['agentd']['config']['EnableRemoteCommands'] = '0'
|
default['zabbix']['agentd']['config']['EnableRemoteCommands'] = '0'
|
||||||
default['zabbix']['agentd']['config']['LogRemoteCommands'] = '0'
|
default['zabbix']['agentd']['config']['LogRemoteCommands'] = '0'
|
||||||
default['zabbix']['agentd']['config']['ListenPort'] = '10050'
|
default['zabbix']['agentd']['config']['ListenPort'] = '10050'
|
||||||
default['zabbix']['agentd']['config']['ListenIP'] = '0.0.0.0'
|
default['zabbix']['agentd']['config']['ListenIP'] = ['0.0.0.0']
|
||||||
default['zabbix']['agentd']['config']['StartAgents'] = '3'
|
default['zabbix']['agentd']['config']['StartAgents'] = '3'
|
||||||
default['zabbix']['agentd']['config']['RefreshActiveChecks'] = '120'
|
default['zabbix']['agentd']['config']['RefreshActiveChecks'] = '120'
|
||||||
default['zabbix']['agentd']['config']['BufferSend'] = '5'
|
default['zabbix']['agentd']['config']['BufferSend'] = '5'
|
||||||
|
@ -23,7 +23,7 @@ default['zabbix']['agentd']['config']['UserParameter'] = []
|
||||||
default['zabbix']['agentd']['config']['LoadModulePath'] = '${libdir}/modules'
|
default['zabbix']['agentd']['config']['LoadModulePath'] = '${libdir}/modules'
|
||||||
default['zabbix']['agentd']['config']['LoadModule'] = []
|
default['zabbix']['agentd']['config']['LoadModule'] = []
|
||||||
default['zabbix']['agentd']['config']['TLSConnect'] = 'unencrypted'
|
default['zabbix']['agentd']['config']['TLSConnect'] = 'unencrypted'
|
||||||
default['zabbix']['agentd']['config']['TLSAccept'] = 'unencrypted'
|
default['zabbix']['agentd']['config']['TLSAccept'] = ['unencrypted']
|
||||||
default['zabbix']['agentd']['config']['TLSCAFile'] = nil
|
default['zabbix']['agentd']['config']['TLSCAFile'] = nil
|
||||||
default['zabbix']['agentd']['config']['TLSCRLFile'] = nil
|
default['zabbix']['agentd']['config']['TLSCRLFile'] = nil
|
||||||
default['zabbix']['agentd']['config']['TLSServerCertIssuer'] = nil
|
default['zabbix']['agentd']['config']['TLSServerCertIssuer'] = nil
|
||||||
|
|
|
@ -1,3 +1,6 @@
|
||||||
|
default['zabbix']['proxy']['database']['backend'] = 'sqlite'
|
||||||
|
default['zabbix']['proxy']['database']['sqlite_path'] = '/var/lib/zabbix_proxy'
|
||||||
|
default['zabbix']['proxy']['database']['repo']['pgdg'] = false
|
||||||
default['zabbix']['database']['backend'] = 'postgresql'
|
default['zabbix']['database']['backend'] = 'postgresql'
|
||||||
default['zabbix']['database']['repo']['pgdg'] = false
|
default['zabbix']['database']['repo']['pgdg'] = false
|
||||||
default['zabbix']['webserver']['backend'] = 'apache'
|
default['zabbix']['webserver']['backend'] = 'apache'
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
default['zabbix']['server']['config']['ListenPort'] = '10051'
|
default['zabbix']['server']['config']['ListenPort'] = '10051'
|
||||||
default['zabbix']['server']['config']['SourceIP'] = nil
|
default['zabbix']['server']['config']['SourceIP'] = nil
|
||||||
default['zabbix']['server']['config']['LogFile'] = '/var/log/zabbix/zabbix_server.log'
|
default['zabbix']['server']['config']['LogFile'] = '/var/log/zabbix/zabbix_server.log'
|
||||||
|
default['zabbix']['server']['config']['LogType'] = 'file'
|
||||||
default['zabbix']['server']['config']['LogFileSize'] = '1'
|
default['zabbix']['server']['config']['LogFileSize'] = '1'
|
||||||
default['zabbix']['server']['config']['DebugLevel'] = '3'
|
default['zabbix']['server']['config']['DebugLevel'] = '3'
|
||||||
default['zabbix']['server']['config']['PidFile'] = '/var/run/zabbix/zabbix_server.pid'
|
default['zabbix']['server']['config']['PidFile'] = '/var/run/zabbix/zabbix_server.pid'
|
||||||
case node['zabbix']['database']['backend']
|
case node['zabbix']['database']['backend']
|
||||||
when 'postgresql']
|
when 'postgresql'
|
||||||
default['zabbix']['server']['config']['DBHost'] = nil
|
default['zabbix']['server']['config']['DBHost'] = nil
|
||||||
when 'mysql', 'mariadb', 'percona'
|
when 'mysql', 'mariadb', 'percona'
|
||||||
default['zabbix']['server']['config']['DBHost'] = 'localhost'
|
default['zabbix']['server']['config']['DBHost'] = 'localhost'
|
||||||
|
@ -14,7 +15,7 @@ else
|
||||||
end
|
end
|
||||||
default['zabbix']['server']['config']['DBSchema'] = nil
|
default['zabbix']['server']['config']['DBSchema'] = nil
|
||||||
case node['zabbix']['database']['backend']
|
case node['zabbix']['database']['backend']
|
||||||
when 'postgresql']
|
when 'postgresql'
|
||||||
default['zabbix']['server']['config']['DBSocket'] = nil
|
default['zabbix']['server']['config']['DBSocket'] = nil
|
||||||
when 'mysql', 'mariadb', 'percona'
|
when 'mysql', 'mariadb', 'percona'
|
||||||
default['zabbix']['server']['config']['DBSocket'] = '/var/lib/mysql/mysql.sock'
|
default['zabbix']['server']['config']['DBSocket'] = '/var/lib/mysql/mysql.sock'
|
||||||
|
@ -42,14 +43,14 @@ default['zabbix']['server']['config']['SNMPTrapperFile'] = '/var/log/snmptt/snmp
|
||||||
default['zabbix']['server']['config']['StartSNMPTrapper'] = '0'
|
default['zabbix']['server']['config']['StartSNMPTrapper'] = '0'
|
||||||
default['zabbix']['server']['config']['ListenIP'] = '0.0.0.0'
|
default['zabbix']['server']['config']['ListenIP'] = '0.0.0.0'
|
||||||
default['zabbix']['server']['config']['HousekeepingFrequency'] = '1'
|
default['zabbix']['server']['config']['HousekeepingFrequency'] = '1'
|
||||||
default['zabbix']['server']['config']['MaxHousekeeperDelete'] = '500'
|
default['zabbix']['server']['config']['MaxHousekeeperDelete'] = '5000'
|
||||||
default['zabbix']['server']['config']['SenderFrequency'] = '30'
|
default['zabbix']['server']['config']['SenderFrequency'] = '30'
|
||||||
default['zabbix']['server']['config']['CacheSize'] = '8M'
|
default['zabbix']['server']['config']['CacheSize'] = '8M'
|
||||||
default['zabbix']['server']['config']['CacheUpdateFrequency'] = '60'
|
default['zabbix']['server']['config']['CacheUpdateFrequency'] = '60'
|
||||||
default['zabbix']['server']['config']['StartDBSyncers'] = '4'
|
default['zabbix']['server']['config']['StartDBSyncers'] = '4'
|
||||||
default['zabbix']['server']['config']['HistoryCacheSize'] = '8M'
|
default['zabbix']['server']['config']['HistoryCacheSize'] = '16M'
|
||||||
|
default['zabbix']['server']['config']['HistoryIndexCacheSize'] = '4M'
|
||||||
default['zabbix']['server']['config']['TrendCacheSize'] = '4M'
|
default['zabbix']['server']['config']['TrendCacheSize'] = '4M'
|
||||||
default['zabbix']['server']['config']['HistoryTextCacheSize'] = '16M'
|
|
||||||
default['zabbix']['server']['config']['ValueCacheSize'] = '8M'
|
default['zabbix']['server']['config']['ValueCacheSize'] = '8M'
|
||||||
default['zabbix']['server']['config']['Timeout'] = '3'
|
default['zabbix']['server']['config']['Timeout'] = '3'
|
||||||
default['zabbix']['server']['config']['TrapperTimeout'] = '300'
|
default['zabbix']['server']['config']['TrapperTimeout'] = '300'
|
||||||
|
|
|
@ -9,6 +9,13 @@
|
||||||
|
|
||||||
include_recipe 'zabbix::trap_scripts'
|
include_recipe 'zabbix::trap_scripts'
|
||||||
|
|
||||||
|
#################################
|
||||||
|
# Include Additional Repositories
|
||||||
|
case node['platform_family']
|
||||||
|
when 'rhel'
|
||||||
|
include_recipe 'yum-zabbix'
|
||||||
|
end
|
||||||
|
|
||||||
# Install zabbix package and dependencies
|
# Install zabbix package and dependencies
|
||||||
%w{zabbix-agent zabbix-sender cronie crontabs}.each do |pkg|
|
%w{zabbix-agent zabbix-sender cronie crontabs}.each do |pkg|
|
||||||
yum_package pkg
|
yum_package pkg
|
||||||
|
@ -16,6 +23,16 @@ end
|
||||||
|
|
||||||
# Install custom zabbix_agentd.conf
|
# Install custom zabbix_agentd.conf
|
||||||
template "/etc/zabbix/zabbix_agentd.conf" do
|
template "/etc/zabbix/zabbix_agentd.conf" do
|
||||||
|
params = node['zabbix']['agentd']['config'].merge({
|
||||||
|
"Server" => node['zabbix']['agent_servers'],
|
||||||
|
"ServerActive" => node['zabbix']['agent_servers'],
|
||||||
|
"Hostname" => node['zabbix']['hostname'] ? node['zabbix']['hostname'] : node['fqdn'],
|
||||||
|
"HostMetadata" => [ "Linux" ] + node['zabbix']['agent_meta']
|
||||||
|
})
|
||||||
|
params = Hash[ params.sort_by { |key, val| key } ]
|
||||||
|
variables({
|
||||||
|
:params => params
|
||||||
|
})
|
||||||
source %W{
|
source %W{
|
||||||
zabbix/#{node['zabbix']['version']}/#{node['platform']}-#{node['platform_version'].to_i}/zabbix_agentd.conf.erb
|
zabbix/#{node['zabbix']['version']}/#{node['platform']}-#{node['platform_version'].to_i}/zabbix_agentd.conf.erb
|
||||||
zabbix/#{node['zabbix']['version']}/#{node['platform']}/zabbix_agentd.conf.erb
|
zabbix/#{node['zabbix']['version']}/#{node['platform']}/zabbix_agentd.conf.erb
|
||||||
|
|
|
@ -9,22 +9,18 @@
|
||||||
|
|
||||||
include_recipe 'chef-vault'
|
include_recipe 'chef-vault'
|
||||||
|
|
||||||
if node['zabbix']['database']['backend'] == 'postgresql'
|
if node['zabbix']['database']['repo']['pgdg']
|
||||||
if node['zabbix']['database']['repo']['pgdg']
|
node.default['postgresql']['enable_pgdg_apt'] = true
|
||||||
node.default['postgresql']['enable_pgdg_apt'] = true
|
node.default['postgresql']['enable_pgdg_yum'] = true
|
||||||
node.default['postgresql']['enable_pgdg_yum'] = true
|
node.default['postgresql']['version'] = "9.6"
|
||||||
node.default['postgresql']['version'] = "9.6"
|
|
||||||
end
|
|
||||||
node.default['postgresql']['pg_hba'] = [
|
|
||||||
{ type: 'local', db: 'all', user: 'postgres', addr: nil, method: 'ident' },
|
|
||||||
{ type: 'local', db: 'all', user: 'all', addr: nil, method: 'md5' },
|
|
||||||
{ type: 'host', db: 'all', user: 'all', addr: '127.0.0.1/32', method: 'md5' },
|
|
||||||
{ type: 'host', db: 'all', user: 'all', addr: '::1/128', method: 'md5' },
|
|
||||||
]
|
|
||||||
include_recipe 'postgresql::server'
|
|
||||||
else
|
|
||||||
Chef::Application.fatal!('database_postgresql, but backend is set differently.', 111)
|
|
||||||
end
|
end
|
||||||
|
node.default['postgresql']['pg_hba'] = [
|
||||||
|
{ type: 'local', db: 'all', user: 'postgres', addr: nil, method: 'ident' },
|
||||||
|
{ type: 'local', db: 'all', user: 'all', addr: nil, method: 'md5' },
|
||||||
|
{ type: 'host', db: 'all', user: 'all', addr: '127.0.0.1/32', method: 'md5' },
|
||||||
|
{ type: 'host', db: 'all', user: 'all', addr: '::1/128', method: 'md5' },
|
||||||
|
]
|
||||||
|
include_recipe 'postgresql::server'
|
||||||
|
|
||||||
directory '/tmp/database' do
|
directory '/tmp/database' do
|
||||||
owner 'root'
|
owner 'root'
|
||||||
|
@ -38,7 +34,7 @@ cookbook_file '/tmp/database/schema.sql' do
|
||||||
sensitive true
|
sensitive true
|
||||||
source %W{
|
source %W{
|
||||||
host-#{node['fqdn']}/schema.sql
|
host-#{node['fqdn']}/schema.sql
|
||||||
#{node['zabbix']['database']['backend']}/#{node['zabbix']['version']}/schema.sql
|
postgresql/#{node['zabbix']['version']}/schema.sql
|
||||||
}
|
}
|
||||||
backup false
|
backup false
|
||||||
action :nothing
|
action :nothing
|
||||||
|
@ -49,7 +45,7 @@ cookbook_file '/tmp/database/images.sql' do
|
||||||
sensitive true
|
sensitive true
|
||||||
source %W{
|
source %W{
|
||||||
host-#{node['fqdn']}/images.sql
|
host-#{node['fqdn']}/images.sql
|
||||||
#{node['zabbix']['database']['backend']}/#{node['zabbix']['version']}/images.sql
|
postgresql/#{node['zabbix']['version']}/images.sql
|
||||||
}
|
}
|
||||||
backup false
|
backup false
|
||||||
action :nothing
|
action :nothing
|
||||||
|
@ -60,7 +56,7 @@ cookbook_file '/tmp/database/data.sql' do
|
||||||
sensitive true
|
sensitive true
|
||||||
source %W{
|
source %W{
|
||||||
host-#{node['fqdn']}/data.sql
|
host-#{node['fqdn']}/data.sql
|
||||||
#{node['zabbix']['database']['backend']}/#{node['zabbix']['version']}/data.sql
|
postgresql/#{node['zabbix']['version']}/data.sql
|
||||||
}
|
}
|
||||||
backup false
|
backup false
|
||||||
action :nothing
|
action :nothing
|
||||||
|
|
|
@ -9,25 +9,53 @@
|
||||||
|
|
||||||
include_recipe 'chef-vault'
|
include_recipe 'chef-vault'
|
||||||
|
|
||||||
%w{zabbix-proxy-sqlite3 zabbix-get}.each do |pkg|
|
#################################
|
||||||
yum_package pkg do
|
# Include Additional Repositories
|
||||||
version '3.0.5-1.el6'
|
case node['platform_family']
|
||||||
allow_downgrade true
|
when 'rhel'
|
||||||
action :install
|
include_recipe 'yum-zabbix'
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
directory "/var/lib/zabbix" do
|
package 'zabbix-get'
|
||||||
|
case node['zabbix']['proxy']['database']['backend']
|
||||||
|
when 'sqlite'
|
||||||
|
package 'zabbix-proxy-sqlite3'
|
||||||
|
when 'postgresql'
|
||||||
|
include_recipe 'zabbix::database_postgresql'
|
||||||
|
package 'zabbix-proxy-pgsql'
|
||||||
|
else
|
||||||
|
package 'zabbix-proxy-mysql'
|
||||||
|
end
|
||||||
|
|
||||||
|
directory "/var/lib/zabbix_proxy" do
|
||||||
owner 'zabbix'
|
owner 'zabbix'
|
||||||
group 'zabbix'
|
group 'zabbix'
|
||||||
mode '0750'
|
mode '0750'
|
||||||
action :create
|
action :create
|
||||||
|
only_if { node['zabbix']['proxy']['database']['backend'] == 'sqlite' }
|
||||||
end
|
end
|
||||||
|
|
||||||
template "/etc/zabbix/zabbix_proxy.conf" do
|
template "/etc/zabbix/zabbix_proxy.conf" do
|
||||||
credentials = chef_vault_item("secrets", "zabbix")
|
if node['zabbix']['proxy']['database']['backend'] == 'sqlite'
|
||||||
|
params = node['zabbix']['proxy']['config'].merge({
|
||||||
|
"DBName" => "#{node['zabbix']['proxy']['database']['sqlite_path']}/database",
|
||||||
|
"Server" => node['zabbix']['agent_servers'],
|
||||||
|
"Hostname" => node['zabbix']['hostname'] ? node['zabbix']['hostname'] : node['fqdn']
|
||||||
|
})
|
||||||
|
else
|
||||||
|
credentials = chef_vault_item("secrets", "zabbix_proxy")
|
||||||
|
params = node['zabbix']['proxy']['config'].merge({
|
||||||
|
"DBName" => credentials['database'],
|
||||||
|
"DBUser" => credentials['username'],
|
||||||
|
"DBPassword" => credentials['password'],
|
||||||
|
"Server" => node['zabbix']['agent_servers'],
|
||||||
|
"Hostname" => node['zabbix']['hostname'] ? node['zabbix']['hostname'] : node['fqdn']
|
||||||
|
})
|
||||||
|
end
|
||||||
|
params = Hash[ params.sort_by { |key, val| key } ]
|
||||||
|
|
||||||
variables({
|
variables({
|
||||||
:credentials => credentials
|
:params => params
|
||||||
})
|
})
|
||||||
source %W{
|
source %W{
|
||||||
zabbix/#{node['zabbix']['version']}/#{node['platform']}-#{node['platform_version'].to_i}/zabbix_proxy.conf.erb
|
zabbix/#{node['zabbix']['version']}/#{node['platform']}-#{node['platform_version'].to_i}/zabbix_proxy.conf.erb
|
||||||
|
|
|
@ -50,8 +50,15 @@ end
|
||||||
# Configure Zabbix Server
|
# Configure Zabbix Server
|
||||||
template "/etc/zabbix/zabbix_server.conf" do
|
template "/etc/zabbix/zabbix_server.conf" do
|
||||||
credentials = chef_vault_item("secrets", "zabbix")
|
credentials = chef_vault_item("secrets", "zabbix")
|
||||||
|
params = node['zabbix']['server']['config'].merge({
|
||||||
|
"DBName" => credentials['database'],
|
||||||
|
"DBUser" => credentials['username'],
|
||||||
|
"DBPassword" => credentials['password']
|
||||||
|
})
|
||||||
|
params = Hash[ params.sort_by { |key, val| key } ]
|
||||||
variables({
|
variables({
|
||||||
:credentials => credentials
|
:credentials => credentials,
|
||||||
|
:params => params
|
||||||
})
|
})
|
||||||
source %W{
|
source %W{
|
||||||
zabbix/#{node['zabbix']['version']}/#{node['platform']}-#{node['platform_version'].to_i}/zabbix_server.conf.erb
|
zabbix/#{node['zabbix']['version']}/#{node['platform']}-#{node['platform_version'].to_i}/zabbix_server.conf.erb
|
||||||
|
|
|
@ -3,399 +3,25 @@
|
||||||
# This is a configuration file for Zabbix agent daemon (Unix)
|
# This is a configuration file for Zabbix agent daemon (Unix)
|
||||||
# To get more information about Zabbix, visit http://www.zabbix.com
|
# To get more information about Zabbix, visit http://www.zabbix.com
|
||||||
|
|
||||||
############ GENERAL PARAMETERS #################
|
<%
|
||||||
|
@params.each do |option, value|
|
||||||
### Option: PidFile
|
if value.kind_of?(String) -%>
|
||||||
# Name of PID file.
|
<%= "#{option}=#{value}" unless value.nil? %>
|
||||||
#
|
<%
|
||||||
# Mandatory: no
|
elsif value.kind_of?(Array)
|
||||||
# Default:
|
case option
|
||||||
# PidFile=/tmp/zabbix_agentd.pid
|
when 'LoadModule', 'Include', "Alias", "UserParameter"
|
||||||
|
value.each do |line| -%>
|
||||||
PidFile=/var/run/zabbix/zabbix_agentd.pid
|
<%= "#{option}=#{line}" unless line.nil? %>
|
||||||
|
<%
|
||||||
### Option: LogType
|
end
|
||||||
# Specifies where log messages are written to:
|
when 'ListenIP', 'Server', 'ServerActive', 'TLSAccept' %>
|
||||||
# system - syslog
|
<%= "#{option}=#{value.join(',')}" unless value.nil? %>
|
||||||
# file - file specified with LogFile parameter
|
<%
|
||||||
# console - standard output
|
when 'HostMetadata' %>
|
||||||
#
|
<%= "#{option}=#{value.join(' ')}" unless value.nil? %>
|
||||||
# Mandatory: no
|
<%
|
||||||
# Default:
|
end
|
||||||
# LogType=file
|
end
|
||||||
|
end
|
||||||
### Option: LogFile
|
%>
|
||||||
# Log file name for LogType 'file' parameter.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LogFile=
|
|
||||||
|
|
||||||
LogFile=/var/log/zabbix/zabbix_agentd.log
|
|
||||||
|
|
||||||
### Option: LogFileSize
|
|
||||||
# Maximum size of log file in MB.
|
|
||||||
# 0 - disable automatic log rotation.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1024
|
|
||||||
# Default:
|
|
||||||
# LogFileSize=1
|
|
||||||
|
|
||||||
LogFileSize=0
|
|
||||||
|
|
||||||
### Option: DebugLevel
|
|
||||||
# Specifies debug level:
|
|
||||||
# 0 - basic information about starting and stopping of Zabbix processes
|
|
||||||
# 1 - critical information
|
|
||||||
# 2 - error information
|
|
||||||
# 3 - warnings
|
|
||||||
# 4 - for debugging (produces lots of information)
|
|
||||||
# 5 - extended debugging (produces even more information)
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-5
|
|
||||||
# Default:
|
|
||||||
# DebugLevel=3
|
|
||||||
|
|
||||||
### Option: SourceIP
|
|
||||||
# Source IP address for outgoing connections.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SourceIP=
|
|
||||||
|
|
||||||
### Option: EnableRemoteCommands
|
|
||||||
# Whether remote commands from Zabbix server are allowed.
|
|
||||||
# 0 - not allowed
|
|
||||||
# 1 - allowed
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# EnableRemoteCommands=0
|
|
||||||
EnableRemoteCommands=1
|
|
||||||
|
|
||||||
### Option: LogRemoteCommands
|
|
||||||
# Enable logging of executed shell commands as warnings.
|
|
||||||
# 0 - disabled
|
|
||||||
# 1 - enabled
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LogRemoteCommands=0
|
|
||||||
LogRemoteCommands=1
|
|
||||||
|
|
||||||
##### Passive checks related
|
|
||||||
|
|
||||||
### Option: Server
|
|
||||||
# List of comma delimited IP addresses (or hostnames) of Zabbix servers.
|
|
||||||
# Incoming connections will be accepted only from the hosts listed here.
|
|
||||||
# If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# Server=
|
|
||||||
|
|
||||||
Server=<%= node['zabbix']['agent_servers'].join(', ') %>
|
|
||||||
|
|
||||||
### Option: ListenPort
|
|
||||||
# Agent will listen on this port for connections from the server.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1024-32767
|
|
||||||
# Default:
|
|
||||||
# ListenPort=10050
|
|
||||||
|
|
||||||
### Option: ListenIP
|
|
||||||
# List of comma delimited IP addresses that the agent should listen on.
|
|
||||||
# First IP address is sent to Zabbix server if connecting to it to retrieve list of active checks.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# ListenIP=0.0.0.0
|
|
||||||
|
|
||||||
### Option: StartAgents
|
|
||||||
# Number of pre-forked instances of zabbix_agentd that process passive checks.
|
|
||||||
# If set to 0, disables passive checks and the agent will not listen on any TCP port.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-100
|
|
||||||
# Default:
|
|
||||||
# StartAgents=3
|
|
||||||
|
|
||||||
##### Active checks related
|
|
||||||
|
|
||||||
### Option: ServerActive
|
|
||||||
# List of comma delimited IP:port (or hostname:port) pairs of Zabbix servers for active checks.
|
|
||||||
# If port is not specified, default port is used.
|
|
||||||
# IPv6 addresses must be enclosed in square brackets if port for that host is specified.
|
|
||||||
# If port is not specified, square brackets for IPv6 addresses are optional.
|
|
||||||
# If this parameter is not specified, active checks are disabled.
|
|
||||||
# Example: ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# ServerActive=
|
|
||||||
|
|
||||||
ServerActive=<%= node['zabbix']['agent_servers'].join(', ') %>
|
|
||||||
|
|
||||||
### Option: Hostname
|
|
||||||
# Unique, case sensitive hostname.
|
|
||||||
# Required for active checks and must match hostname as configured on the server.
|
|
||||||
# Value is acquired from HostnameItem if undefined.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# Hostname=
|
|
||||||
|
|
||||||
Hostname=<%= node['fqdn'] %>
|
|
||||||
|
|
||||||
### Option: HostnameItem
|
|
||||||
# Item used for generating Hostname if it is undefined. Ignored if Hostname is defined.
|
|
||||||
# Does not support UserParameters or aliases.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# HostnameItem=system.hostname
|
|
||||||
|
|
||||||
### Option: HostMetadata
|
|
||||||
# Optional parameter that defines host metadata.
|
|
||||||
# Host metadata is used at host auto-registration process.
|
|
||||||
# An agent will issue an error and not start if the value is over limit of 255 characters.
|
|
||||||
# If not defined, value will be acquired from HostMetadataItem.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-255 characters
|
|
||||||
# Default:
|
|
||||||
# HostMetadata=
|
|
||||||
|
|
||||||
HostMetadata=Linux <%= node['zabbix']['agent_meta'].join(' ') %>
|
|
||||||
|
|
||||||
### Option: HostMetadataItem
|
|
||||||
# Optional parameter that defines an item used for getting host metadata.
|
|
||||||
# Host metadata is used at host auto-registration process.
|
|
||||||
# During an auto-registration request an agent will log a warning message if
|
|
||||||
# the value returned by specified item is over limit of 255 characters.
|
|
||||||
# This option is only used when HostMetadata is not defined.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# HostMetadataItem=
|
|
||||||
|
|
||||||
### Option: RefreshActiveChecks
|
|
||||||
# How often list of active checks is refreshed, in seconds.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 60-3600
|
|
||||||
# Default:
|
|
||||||
# RefreshActiveChecks=120
|
|
||||||
|
|
||||||
### Option: BufferSend
|
|
||||||
# Do not keep data longer than N seconds in buffer.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# BufferSend=5
|
|
||||||
|
|
||||||
### Option: BufferSize
|
|
||||||
# Maximum number of values in a memory buffer. The agent will send
|
|
||||||
# all collected data to Zabbix Server or Proxy if the buffer is full.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 2-65535
|
|
||||||
# Default:
|
|
||||||
# BufferSize=100
|
|
||||||
|
|
||||||
### Option: MaxLinesPerSecond
|
|
||||||
# Maximum number of new lines the agent will send per second to Zabbix Server
|
|
||||||
# or Proxy processing 'log' and 'logrt' active checks.
|
|
||||||
# The provided value will be overridden by the parameter 'maxlines',
|
|
||||||
# provided in 'log' or 'logrt' item keys.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-1000
|
|
||||||
# Default:
|
|
||||||
# MaxLinesPerSecond=20
|
|
||||||
|
|
||||||
############ ADVANCED PARAMETERS #################
|
|
||||||
|
|
||||||
### Option: Alias
|
|
||||||
# Sets an alias for an item key. It can be used to substitute long and complex item key with a smaller and simpler one.
|
|
||||||
# Multiple Alias parameters may be present. Multiple parameters with the same Alias key are not allowed.
|
|
||||||
# Different Alias keys may reference the same item key.
|
|
||||||
# For example, to retrieve the ID of user 'zabbix':
|
|
||||||
# Alias=zabbix.userid:vfs.file.regexp[/etc/passwd,^zabbix:.:([0-9]+),,,,\1]
|
|
||||||
# Now shorthand key zabbix.userid may be used to retrieve data.
|
|
||||||
# Aliases can be used in HostMetadataItem but not in HostnameItem parameters.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range:
|
|
||||||
# Default:
|
|
||||||
|
|
||||||
### Option: Timeout
|
|
||||||
# Spend no more than Timeout seconds on processing
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-30
|
|
||||||
# Default:
|
|
||||||
# Timeout=3
|
|
||||||
|
|
||||||
### Option: AllowRoot
|
|
||||||
# Allow the agent to run as 'root'. If disabled and the agent is started by 'root', the agent
|
|
||||||
# will try to switch to the user specified by the User configuration option instead.
|
|
||||||
# Has no effect if started under a regular user.
|
|
||||||
# 0 - do not allow
|
|
||||||
# 1 - allow
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# AllowRoot=0
|
|
||||||
|
|
||||||
### Option: User
|
|
||||||
# Drop privileges to a specific, existing user on the system.
|
|
||||||
# Only has effect if run as 'root' and AllowRoot is disabled.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# User=zabbix
|
|
||||||
|
|
||||||
### Option: Include
|
|
||||||
# You may include individual files or all files in a directory in the configuration file.
|
|
||||||
# Installing Zabbix will create include directory in /usr/local/etc, unless modified during the compile time.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# Include=
|
|
||||||
|
|
||||||
Include=/etc/zabbix/zabbix_agentd.d/
|
|
||||||
|
|
||||||
# Include=/usr/local/etc/zabbix_agentd.userparams.conf
|
|
||||||
# Include=/usr/local/etc/zabbix_agentd.conf.d/
|
|
||||||
# Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf
|
|
||||||
|
|
||||||
####### USER-DEFINED MONITORED PARAMETERS #######
|
|
||||||
|
|
||||||
### Option: UnsafeUserParameters
|
|
||||||
# Allow all characters to be passed in arguments to user-defined parameters.
|
|
||||||
# The following characters are not allowed:
|
|
||||||
# \ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
|
|
||||||
# Additionally, newline characters are not allowed.
|
|
||||||
# 0 - do not allow
|
|
||||||
# 1 - allow
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1
|
|
||||||
# Default:
|
|
||||||
# UnsafeUserParameters=0
|
|
||||||
|
|
||||||
### Option: UserParameter
|
|
||||||
# User-defined parameter to monitor. There can be several user-defined parameters.
|
|
||||||
# Format: UserParameter=<key>,<shell command>
|
|
||||||
# See 'zabbix_agentd' directory for examples.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# UserParameter=
|
|
||||||
|
|
||||||
####### LOADABLE MODULES #######
|
|
||||||
|
|
||||||
### Option: LoadModulePath
|
|
||||||
# Full path to location of agent modules.
|
|
||||||
# Default depends on compilation options.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LoadModulePath=${libdir}/modules
|
|
||||||
|
|
||||||
### Option: LoadModule
|
|
||||||
# Module to load at agent startup. Modules are used to extend functionality of the agent.
|
|
||||||
# Format: LoadModule=<module.so>
|
|
||||||
# The modules must be located in directory specified by LoadModulePath.
|
|
||||||
# It is allowed to include multiple LoadModule parameters.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LoadModule=
|
|
||||||
|
|
||||||
####### TLS-RELATED PARAMETERS #######
|
|
||||||
|
|
||||||
### Option: TLSConnect
|
|
||||||
# How the agent should connect to server or proxy. Used for active checks.
|
|
||||||
# Only one value can be specified:
|
|
||||||
# unencrypted - connect without encryption
|
|
||||||
# psk - connect using TLS and a pre-shared key
|
|
||||||
# cert - connect using TLS and a certificate
|
|
||||||
#
|
|
||||||
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
|
|
||||||
# Default:
|
|
||||||
# TLSConnect=unencrypted
|
|
||||||
|
|
||||||
### Option: TLSAccept
|
|
||||||
# What incoming connections to accept.
|
|
||||||
# Multiple values can be specified, separated by comma:
|
|
||||||
# unencrypted - accept connections without encryption
|
|
||||||
# psk - accept connections secured with TLS and a pre-shared key
|
|
||||||
# cert - accept connections secured with TLS and a certificate
|
|
||||||
#
|
|
||||||
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
|
|
||||||
# Default:
|
|
||||||
# TLSAccept=unencrypted
|
|
||||||
|
|
||||||
### Option: TLSCAFile
|
|
||||||
# Full pathname of a file containing the top-level CA(s) certificates for
|
|
||||||
# peer certificate verification.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSCAFile=
|
|
||||||
|
|
||||||
### Option: TLSCRLFile
|
|
||||||
# Full pathname of a file containing revoked certificates.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSCRLFile=
|
|
||||||
|
|
||||||
### Option: TLSServerCertIssuer
|
|
||||||
# Allowed server certificate issuer.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSServerCertIssuer=
|
|
||||||
|
|
||||||
### Option: TLSServerCertSubject
|
|
||||||
# Allowed server certificate subject.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSServerCertSubject=
|
|
||||||
|
|
||||||
### Option: TLSCertFile
|
|
||||||
# Full pathname of a file containing the agent certificate or certificate chain.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSCertFile=
|
|
||||||
|
|
||||||
### Option: TLSKeyFile
|
|
||||||
# Full pathname of a file containing the agent private key.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSKeyFile=
|
|
||||||
|
|
||||||
### Option: TLSPSKIdentity
|
|
||||||
# Unique, case sensitive string used to identify the pre-shared key.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSPSKIdentity=
|
|
||||||
|
|
||||||
### Option: TLSPSKFile
|
|
||||||
# Full pathname of a file containing the pre-shared key.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSPSKFile=
|
|
||||||
|
|
||||||
|
|
|
@ -3,678 +3,22 @@
|
||||||
# This is a configuration file for Zabbix proxy daemon
|
# This is a configuration file for Zabbix proxy daemon
|
||||||
# To get more information about Zabbix, visit http://www.zabbix.com
|
# To get more information about Zabbix, visit http://www.zabbix.com
|
||||||
|
|
||||||
############ GENERAL PARAMETERS #################
|
<%
|
||||||
|
@params.each do |option, value|
|
||||||
### Option: ProxyMode
|
if value.kind_of?(String) -%>
|
||||||
# Proxy operating mode.
|
<%= "#{option}=#{value}" unless value.nil? %>
|
||||||
# 0 - proxy in the active mode
|
<%
|
||||||
# 1 - proxy in the passive mode
|
elsif value.kind_of?(Array)
|
||||||
#
|
case option
|
||||||
# Mandatory: no
|
when 'LoadModule', 'Include'
|
||||||
# Default:
|
value.each do |line| -%>
|
||||||
# ProxyMode=0
|
<%= "#{option}=#{line}" unless line.nil? %>
|
||||||
|
<%
|
||||||
### Option: Server
|
end
|
||||||
# IP address (or hostname) of Zabbix server.
|
when 'ListenIP', 'Server', 'ServerActive', 'TLSAccept' %>
|
||||||
# Active proxy will get configuration data from the server.
|
<%= "#{option}=#{value.join(',')}" unless value.nil? %>
|
||||||
# For a proxy in the passive mode this parameter will be ignored.
|
<%
|
||||||
#
|
end
|
||||||
# Mandatory: yes (if ProxyMode is set to 0)
|
end
|
||||||
# Default:
|
end
|
||||||
# Server=
|
%>
|
||||||
|
|
||||||
Server=<%= node['zabbix']['agent_servers'].join(', ') %>
|
|
||||||
|
|
||||||
### Option: ServerPort
|
|
||||||
# Port of Zabbix trapper on Zabbix server.
|
|
||||||
# For a proxy in the passive mode this parameter will be ignored.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1024-32767
|
|
||||||
# Default:
|
|
||||||
# ServerPort=10051
|
|
||||||
|
|
||||||
### Option: Hostname
|
|
||||||
# Unique, case sensitive Proxy name. Make sure the Proxy name is known to the server!
|
|
||||||
# Value is acquired from HostnameItem if undefined.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# Hostname=
|
|
||||||
|
|
||||||
Hostname=<%= node['fqdn'] %>
|
|
||||||
|
|
||||||
### Option: HostnameItem
|
|
||||||
# Item used for generating Hostname if it is undefined.
|
|
||||||
# Ignored if Hostname is defined.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# HostnameItem=system.hostname
|
|
||||||
|
|
||||||
### Option: ListenPort
|
|
||||||
# Listen port for trapper.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1024-32767
|
|
||||||
# Default:
|
|
||||||
# ListenPort=10051
|
|
||||||
|
|
||||||
### Option: SourceIP
|
|
||||||
# Source IP address for outgoing connections.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SourceIP=
|
|
||||||
|
|
||||||
### Option: LogType
|
|
||||||
# Specifies where log messages are written to:
|
|
||||||
# system - syslog
|
|
||||||
# file - file specified with LogFile parameter
|
|
||||||
# console - standard output
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LogType=file
|
|
||||||
|
|
||||||
### Option: LogFile
|
|
||||||
# Log file name for LogType 'file' parameter.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LogFile=
|
|
||||||
|
|
||||||
LogFile=/var/log/zabbix/zabbix_proxy.log
|
|
||||||
|
|
||||||
### Option: LogFileSize
|
|
||||||
# Maximum size of log file in MB.
|
|
||||||
# 0 - disable automatic log rotation.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1024
|
|
||||||
# Default:
|
|
||||||
# LogFileSize=1
|
|
||||||
|
|
||||||
LogFileSize=0
|
|
||||||
|
|
||||||
### Option: DebugLevel
|
|
||||||
# Specifies debug level:
|
|
||||||
# 0 - basic information about starting and stopping of Zabbix processes
|
|
||||||
# 1 - critical information
|
|
||||||
# 2 - error information
|
|
||||||
# 3 - warnings
|
|
||||||
# 4 - for debugging (produces lots of information)
|
|
||||||
# 5 - extended debugging (produces even more information)
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-5
|
|
||||||
# Default:
|
|
||||||
# DebugLevel=3
|
|
||||||
|
|
||||||
### Option: PidFile
|
|
||||||
# Name of PID file.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# PidFile=/tmp/zabbix_proxy.pid
|
|
||||||
|
|
||||||
PidFile=/var/run/zabbix/zabbix_proxy.pid
|
|
||||||
|
|
||||||
### Option: DBHost
|
|
||||||
# Database host name.
|
|
||||||
# If set to localhost, socket is used for MySQL.
|
|
||||||
# If set to empty string, socket is used for PostgreSQL.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# DBHost=localhost
|
|
||||||
|
|
||||||
### Option: DBName
|
|
||||||
# Database name.
|
|
||||||
# For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.
|
|
||||||
# Warning: do not attempt to use the same database Zabbix server is using.
|
|
||||||
#
|
|
||||||
# Mandatory: yes
|
|
||||||
# Default:
|
|
||||||
# DBName=
|
|
||||||
|
|
||||||
DBName=/var/lib/zabbix/zabbix_proxy.db
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# DBSchema=
|
|
||||||
|
|
||||||
### Option: DBUser
|
|
||||||
# Database user. Ignored for SQLite.
|
|
||||||
#
|
|
||||||
# Default:
|
|
||||||
# DBUser=
|
|
||||||
|
|
||||||
DBUser=zabbix
|
|
||||||
|
|
||||||
### Option: DBPassword
|
|
||||||
# Database password. Ignored for SQLite.
|
|
||||||
# Comment this line if no password is used.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# DBPassword=
|
|
||||||
|
|
||||||
### Option: DBSocket
|
|
||||||
# Path to MySQL socket.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# DBSocket=/tmp/mysql.sock
|
|
||||||
|
|
||||||
# Option: DBPort
|
|
||||||
# Database port when not using local socket. Ignored for SQLite.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default (for MySQL):
|
|
||||||
# DBPort=3306
|
|
||||||
|
|
||||||
######### PROXY SPECIFIC PARAMETERS #############
|
|
||||||
|
|
||||||
### Option: ProxyLocalBuffer
|
|
||||||
# Proxy will keep data locally for N hours, even if the data have already been synced with the server.
|
|
||||||
# This parameter may be used if local data will be used by third party applications.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-720
|
|
||||||
# Default:
|
|
||||||
# ProxyLocalBuffer=0
|
|
||||||
|
|
||||||
### Option: ProxyOfflineBuffer
|
|
||||||
# Proxy will keep data for N hours in case if no connectivity with Zabbix Server.
|
|
||||||
# Older data will be lost.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-720
|
|
||||||
# Default:
|
|
||||||
# ProxyOfflineBuffer=1
|
|
||||||
ProxyOfflineBuffer=24
|
|
||||||
|
|
||||||
### Option: HeartbeatFrequency
|
|
||||||
# Frequency of heartbeat messages in seconds.
|
|
||||||
# Used for monitoring availability of Proxy on server side.
|
|
||||||
# 0 - heartbeat messages disabled.
|
|
||||||
# For a proxy in the passive mode this parameter will be ignored.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-3600
|
|
||||||
# Default:
|
|
||||||
# HeartbeatFrequency=60
|
|
||||||
|
|
||||||
### Option: ConfigFrequency
|
|
||||||
# How often proxy retrieves configuration data from Zabbix Server in seconds.
|
|
||||||
# For a proxy in the passive mode this parameter will be ignored.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600*24*7
|
|
||||||
# Default:
|
|
||||||
# ConfigFrequency=3600
|
|
||||||
|
|
||||||
### Option: DataSenderFrequency
|
|
||||||
# Proxy will send collected data to the Server every N seconds.
|
|
||||||
# For a proxy in the passive mode this parameter will be ignored.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# DataSenderFrequency=1
|
|
||||||
|
|
||||||
############ ADVANCED PARAMETERS ################
|
|
||||||
|
|
||||||
### Option: StartPollers
|
|
||||||
# Number of pre-forked instances of pollers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartPollers=5
|
|
||||||
|
|
||||||
### Option: StartIPMIPollers
|
|
||||||
# Number of pre-forked instances of IPMI pollers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartIPMIPollers=0
|
|
||||||
|
|
||||||
### Option: StartPollersUnreachable
|
|
||||||
# Number of pre-forked instances of pollers for unreachable hosts (including IPMI and Java).
|
|
||||||
# At least one poller for unreachable hosts must be running if regular, IPMI or Java pollers
|
|
||||||
# are started.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartPollersUnreachable=1
|
|
||||||
|
|
||||||
### Option: StartTrappers
|
|
||||||
# Number of pre-forked instances of trappers.
|
|
||||||
# Trappers accept incoming connections from Zabbix sender and active agents.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartTrappers=5
|
|
||||||
|
|
||||||
### Option: StartPingers
|
|
||||||
# Number of pre-forked instances of ICMP pingers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartPingers=1
|
|
||||||
|
|
||||||
### Option: StartDiscoverers
|
|
||||||
# Number of pre-forked instances of discoverers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-250
|
|
||||||
# Default:
|
|
||||||
# StartDiscoverers=1
|
|
||||||
|
|
||||||
### Option: StartHTTPPollers
|
|
||||||
# Number of pre-forked instances of HTTP pollers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartHTTPPollers=1
|
|
||||||
|
|
||||||
### Option: JavaGateway
|
|
||||||
# IP address (or hostname) of Zabbix Java gateway.
|
|
||||||
# Only required if Java pollers are started.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# JavaGateway=
|
|
||||||
|
|
||||||
### Option: JavaGatewayPort
|
|
||||||
# Port that Zabbix Java gateway listens on.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1024-32767
|
|
||||||
# Default:
|
|
||||||
# JavaGatewayPort=10052
|
|
||||||
|
|
||||||
### Option: StartJavaPollers
|
|
||||||
# Number of pre-forked instances of Java pollers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartJavaPollers=0
|
|
||||||
|
|
||||||
### Option: StartVMwareCollectors
|
|
||||||
# Number of pre-forked vmware collector instances.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-250
|
|
||||||
# Default:
|
|
||||||
# StartVMwareCollectors=0
|
|
||||||
|
|
||||||
### Option: VMwareFrequency
|
|
||||||
# How often Zabbix will connect to VMware service to obtain a new data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 10-86400
|
|
||||||
# Default:
|
|
||||||
# VMwareFrequency=60
|
|
||||||
|
|
||||||
### Option: VMwarePerfFrequency
|
|
||||||
# How often Zabbix will connect to VMware service to obtain performance data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 10-86400
|
|
||||||
# Default:
|
|
||||||
# VMwarePerfFrequency=60
|
|
||||||
|
|
||||||
### Option: VMwareCacheSize
|
|
||||||
# Size of VMware cache, in bytes.
|
|
||||||
# Shared memory size for storing VMware data.
|
|
||||||
# Only used if VMware collectors are started.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 256K-2G
|
|
||||||
# Default:
|
|
||||||
# VMwareCacheSize=8M
|
|
||||||
|
|
||||||
### Option: VMwareTimeout
|
|
||||||
# Specifies how many seconds vmware collector waits for response from VMware service.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-300
|
|
||||||
# Default:
|
|
||||||
# VMwareTimeout=10
|
|
||||||
|
|
||||||
### Option: SNMPTrapperFile
|
|
||||||
# Temporary file used for passing data from SNMP trap daemon to the proxy.
|
|
||||||
# Must be the same as in zabbix_trap_receiver.pl or SNMPTT configuration file.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SNMPTrapperFile=/tmp/zabbix_traps.tmp
|
|
||||||
|
|
||||||
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
|
|
||||||
|
|
||||||
### Option: StartSNMPTrapper
|
|
||||||
# If 1, SNMP trapper process is started.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1
|
|
||||||
# Default:
|
|
||||||
# StartSNMPTrapper=0
|
|
||||||
|
|
||||||
### Option: ListenIP
|
|
||||||
# List of comma delimited IP addresses that the trapper should listen on.
|
|
||||||
# Trapper will listen on all network interfaces if this parameter is missing.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# ListenIP=0.0.0.0
|
|
||||||
|
|
||||||
### Option: HousekeepingFrequency
|
|
||||||
# How often Zabbix will perform housekeeping procedure (in hours).
|
|
||||||
# Housekeeping is removing outdated information from the database.
|
|
||||||
# To prevent Housekeeper from being overloaded, no more than 4 times HousekeepingFrequency
|
|
||||||
# hours of outdated information are deleted in one housekeeping cycle.
|
|
||||||
# To lower load on proxy startup housekeeping is postponed for 30 minutes after proxy start.
|
|
||||||
# With HousekeepingFrequency=0 the housekeeper can be only executed using the runtime control option.
|
|
||||||
# In this case the period of outdated information deleted in one housekeeping cycle is 4 times the
|
|
||||||
# period since the last housekeeping cycle, but not less than 4 hours and not greater than 4 days.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-24
|
|
||||||
# Default:
|
|
||||||
# HousekeepingFrequency=1
|
|
||||||
|
|
||||||
### Option: CacheSize
|
|
||||||
# Size of configuration cache, in bytes.
|
|
||||||
# Shared memory size, for storing hosts and items data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 128K-8G
|
|
||||||
# Default:
|
|
||||||
# CacheSize=8M
|
|
||||||
|
|
||||||
### Option: StartDBSyncers
|
|
||||||
# Number of pre-forked instances of DB Syncers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-100
|
|
||||||
# Default:
|
|
||||||
# StartDBSyncers=4
|
|
||||||
|
|
||||||
### Option: HistoryCacheSize
|
|
||||||
# Size of history cache, in bytes.
|
|
||||||
# Shared memory size for storing history data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 128K-2G
|
|
||||||
# Default:
|
|
||||||
# HistoryCacheSize=16M
|
|
||||||
|
|
||||||
### Option: HistoryIndexCacheSize
|
|
||||||
# Size of history index cache, in bytes.
|
|
||||||
# Shared memory size for indexing history cache.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 128K-2G
|
|
||||||
# Default:
|
|
||||||
# HistoryIndexCacheSize=4M
|
|
||||||
|
|
||||||
### Option: Timeout
|
|
||||||
# Specifies how long we wait for agent, SNMP device or external check (in seconds).
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-30
|
|
||||||
# Default:
|
|
||||||
# Timeout=3
|
|
||||||
|
|
||||||
Timeout=4
|
|
||||||
|
|
||||||
### Option: TrapperTimeout
|
|
||||||
# Specifies how many seconds trapper may spend processing new data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-300
|
|
||||||
# Default:
|
|
||||||
# TrapperTimeout=300
|
|
||||||
|
|
||||||
### Option: UnreachablePeriod
|
|
||||||
# After how many seconds of unreachability treat a host as unavailable.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# UnreachablePeriod=45
|
|
||||||
|
|
||||||
### Option: UnavailableDelay
|
|
||||||
# How often host is checked for availability during the unavailability period, in seconds.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# UnavailableDelay=60
|
|
||||||
|
|
||||||
### Option: UnreachableDelay
|
|
||||||
# How often host is checked for availability during the unreachability period, in seconds.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# UnreachableDelay=15
|
|
||||||
|
|
||||||
### Option: ExternalScripts
|
|
||||||
# Full path to location of external scripts.
|
|
||||||
# Default depends on compilation options.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# ExternalScripts=${datadir}/zabbix/externalscripts
|
|
||||||
|
|
||||||
ExternalScripts=/usr/lib/zabbix/externalscripts
|
|
||||||
|
|
||||||
### Option: FpingLocation
|
|
||||||
# Location of fping.
|
|
||||||
# Make sure that fping binary has root ownership and SUID flag set.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# FpingLocation=/usr/sbin/fping
|
|
||||||
|
|
||||||
### Option: Fping6Location
|
|
||||||
# Location of fping6.
|
|
||||||
# Make sure that fping6 binary has root ownership and SUID flag set.
|
|
||||||
# Make empty if your fping utility is capable to process IPv6 addresses.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# Fping6Location=/usr/sbin/fping6
|
|
||||||
|
|
||||||
### Option: SSHKeyLocation
|
|
||||||
# Location of public and private keys for SSH checks and actions.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SSHKeyLocation=
|
|
||||||
|
|
||||||
### Option: LogSlowQueries
|
|
||||||
# How long a database query may take before being logged (in milliseconds).
|
|
||||||
# Only works if DebugLevel set to 3 or 4.
|
|
||||||
# 0 - don't log slow queries.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600000
|
|
||||||
# Default:
|
|
||||||
# LogSlowQueries=0
|
|
||||||
|
|
||||||
LogSlowQueries=3000
|
|
||||||
|
|
||||||
### Option: TmpDir
|
|
||||||
# Temporary directory.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TmpDir=/tmp
|
|
||||||
|
|
||||||
### Option: AllowRoot
|
|
||||||
# Allow the proxy to run as 'root'. If disabled and the proxy is started by 'root', the proxy
|
|
||||||
# will try to switch to the user specified by the User configuration option instead.
|
|
||||||
# Has no effect if started under a regular user.
|
|
||||||
# 0 - do not allow
|
|
||||||
# 1 - allow
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# AllowRoot=0
|
|
||||||
|
|
||||||
### Option: User
|
|
||||||
# Drop privileges to a specific, existing user on the system.
|
|
||||||
# Only has effect if run as 'root' and AllowRoot is disabled.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# User=zabbix
|
|
||||||
|
|
||||||
### Option: Include
|
|
||||||
# You may include individual files or all files in a directory in the configuration file.
|
|
||||||
# Installing Zabbix will create include directory in /usr/local/etc, unless modified during the compile time.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# Include=
|
|
||||||
|
|
||||||
# Include=/usr/local/etc/zabbix_proxy.general.conf
|
|
||||||
# Include=/usr/local/etc/zabbix_proxy.conf.d/
|
|
||||||
# Include=/usr/local/etc/zabbix_proxy.conf.d/*.conf
|
|
||||||
|
|
||||||
### Option: SSLCertLocation
|
|
||||||
# Location of SSL client certificates.
|
|
||||||
# This parameter is used only in web monitoring.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SSLCertLocation=${datadir}/zabbix/ssl/certs
|
|
||||||
|
|
||||||
### Option: SSLKeyLocation
|
|
||||||
# Location of private keys for SSL client certificates.
|
|
||||||
# This parameter is used only in web monitoring.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SSLKeyLocation=${datadir}/zabbix/ssl/keys
|
|
||||||
|
|
||||||
### Option: SSLCALocation
|
|
||||||
# Location of certificate authority (CA) files for SSL server certificate verification.
|
|
||||||
# If not set, system-wide directory will be used.
|
|
||||||
# This parameter is used only in web monitoring.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SSLCALocation=
|
|
||||||
|
|
||||||
####### LOADABLE MODULES #######
|
|
||||||
|
|
||||||
### Option: LoadModulePath
|
|
||||||
# Full path to location of proxy modules.
|
|
||||||
# Default depends on compilation options.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LoadModulePath=${libdir}/modules
|
|
||||||
|
|
||||||
### Option: LoadModule
|
|
||||||
# Module to load at proxy startup. Modules are used to extend functionality of the proxy.
|
|
||||||
# Format: LoadModule=<module.so>
|
|
||||||
# The modules must be located in directory specified by LoadModulePath.
|
|
||||||
# It is allowed to include multiple LoadModule parameters.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LoadModule=
|
|
||||||
|
|
||||||
####### TLS-RELATED PARAMETERS #######
|
|
||||||
|
|
||||||
### Option: TLSConnect
|
|
||||||
# How the proxy should connect to Zabbix server. Used for an active proxy, ignored on a passive proxy.
|
|
||||||
# Only one value can be specified:
|
|
||||||
# unencrypted - connect without encryption
|
|
||||||
# psk - connect using TLS and a pre-shared key
|
|
||||||
# cert - connect using TLS and a certificate
|
|
||||||
#
|
|
||||||
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
|
|
||||||
# Default:
|
|
||||||
# TLSConnect=unencrypted
|
|
||||||
|
|
||||||
### Option: TLSAccept
|
|
||||||
# What incoming connections to accept from Zabbix server. Used for a passive proxy, ignored on an active proxy.
|
|
||||||
# Multiple values can be specified, separated by comma:
|
|
||||||
# unencrypted - accept connections without encryption
|
|
||||||
# psk - accept connections secured with TLS and a pre-shared key
|
|
||||||
# cert - accept connections secured with TLS and a certificate
|
|
||||||
#
|
|
||||||
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
|
|
||||||
# Default:
|
|
||||||
# TLSAccept=unencrypted
|
|
||||||
|
|
||||||
### Option: TLSCAFile
|
|
||||||
# Full pathname of a file containing the top-level CA(s) certificates for
|
|
||||||
# peer certificate verification.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSCAFile=
|
|
||||||
|
|
||||||
### Option: TLSCRLFile
|
|
||||||
# Full pathname of a file containing revoked certificates.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSCRLFile=
|
|
||||||
|
|
||||||
### Option: TLSServerCertIssuer
|
|
||||||
# Allowed server certificate issuer.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSServerCertIssuer=
|
|
||||||
|
|
||||||
### Option: TLSServerCertSubject
|
|
||||||
# Allowed server certificate subject.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSServerCertSubject=
|
|
||||||
|
|
||||||
### Option: TLSCertFile
|
|
||||||
# Full pathname of a file containing the proxy certificate or certificate chain.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSCertFile=
|
|
||||||
|
|
||||||
### Option: TLSKeyFile
|
|
||||||
# Full pathname of a file containing the proxy private key.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSKeyFile=
|
|
||||||
|
|
||||||
### Option: TLSPSKIdentity
|
|
||||||
# Unique, case sensitive string used to identify the pre-shared key.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSPSKIdentity=
|
|
||||||
|
|
||||||
### Option: TLSPSKFile
|
|
||||||
# Full pathname of a file containing the pre-shared key.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TLSPSKFile=
|
|
||||||
|
|
||||||
|
|
|
@ -4,587 +4,19 @@
|
||||||
# To get more information about Zabbix,
|
# To get more information about Zabbix,
|
||||||
# visit http://www.zabbix.com
|
# visit http://www.zabbix.com
|
||||||
|
|
||||||
############ GENERAL PARAMETERS #################
|
<%
|
||||||
|
@params.each do |option, value|
|
||||||
### Option: ListenPort
|
if value.kind_of?(String) -%>
|
||||||
# Listen port for trapper.
|
<%= "#{option}=#{value}" unless value.nil? %>
|
||||||
#
|
<%
|
||||||
# Mandatory: no
|
elsif value.kind_of?(Array)
|
||||||
# Range: 1024-32767
|
case option
|
||||||
# Default:
|
when 'LoadModule', 'Include'
|
||||||
# ListenPort=10051
|
value.each do |line| -%>
|
||||||
|
<%= "#{option}=#{line}" unless line.nil? %>
|
||||||
### Option: SourceIP
|
<%
|
||||||
# Source IP address for outgoing connections.
|
end
|
||||||
#
|
end
|
||||||
# Mandatory: no
|
end
|
||||||
# Default:
|
end
|
||||||
# SourceIP=
|
%>
|
||||||
|
|
||||||
### Option: LogFile
|
|
||||||
# Name of log file.
|
|
||||||
# If not set, syslog is used.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LogFile=
|
|
||||||
|
|
||||||
LogFile=/var/log/zabbix/zabbix_server.log
|
|
||||||
|
|
||||||
### Option: LogFileSize
|
|
||||||
# Maximum size of log file in MB.
|
|
||||||
# 0 - disable automatic log rotation.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1024
|
|
||||||
# Default:
|
|
||||||
# LogFileSize=1
|
|
||||||
|
|
||||||
LogFileSize=0
|
|
||||||
|
|
||||||
### Option: DebugLevel
|
|
||||||
# Specifies debug level
|
|
||||||
# 0 - basic information about starting and stopping of Zabbix processes
|
|
||||||
# 1 - critical information
|
|
||||||
# 2 - error information
|
|
||||||
# 3 - warnings
|
|
||||||
# 4 - for debugging (produces lots of information)
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-4
|
|
||||||
# Default:
|
|
||||||
# DebugLevel=3
|
|
||||||
|
|
||||||
### Option: PidFile
|
|
||||||
# Name of PID file.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# PidFile=/tmp/zabbix_server.pid
|
|
||||||
|
|
||||||
PidFile=/var/run/zabbix/zabbix_server.pid
|
|
||||||
|
|
||||||
### Option: DBHost
|
|
||||||
# Database host name.
|
|
||||||
# If set to localhost, socket is used for MySQL.
|
|
||||||
# If set to empty string, socket is used for PostgreSQL.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
DBHost=localhost
|
|
||||||
|
|
||||||
### Option: DBName
|
|
||||||
# Database name.
|
|
||||||
# For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.
|
|
||||||
#
|
|
||||||
# Mandatory: yes
|
|
||||||
# Default:
|
|
||||||
# DBName=
|
|
||||||
|
|
||||||
DBName=<%= @credentials['database'] %>
|
|
||||||
|
|
||||||
### Option: DBSchema
|
|
||||||
# Schema name. Used for IBM DB2 and PostgreSQL.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# DBSchema=
|
|
||||||
|
|
||||||
### Option: DBUser
|
|
||||||
# Database user. Ignored for SQLite.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# DBUser=
|
|
||||||
|
|
||||||
DBUser=<%= @credentials['username'] %>
|
|
||||||
|
|
||||||
### Option: DBPassword
|
|
||||||
# Database password. Ignored for SQLite.
|
|
||||||
# Comment this line if no password is used.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
DBPassword=<%= @credentials['password'] %>
|
|
||||||
|
|
||||||
### Option: DBSocket
|
|
||||||
# Path to MySQL socket.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# DBSocket=/tmp/mysql.sock
|
|
||||||
|
|
||||||
DBSocket=/var/lib/mysql/mysql.sock
|
|
||||||
|
|
||||||
### Option: DBPort
|
|
||||||
# Database port when not using local socket. Ignored for SQLite.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1024-65535
|
|
||||||
# Default (for MySQL):
|
|
||||||
# DBPort=3306
|
|
||||||
|
|
||||||
############ ADVANCED PARAMETERS ################
|
|
||||||
|
|
||||||
### Option: StartPollers
|
|
||||||
# Number of pre-forked instances of pollers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartPollers=5
|
|
||||||
|
|
||||||
### Option: StartIPMIPollers
|
|
||||||
# Number of pre-forked instances of IPMI pollers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartIPMIPollers=0
|
|
||||||
|
|
||||||
### Option: StartPollersUnreachable
|
|
||||||
# Number of pre-forked instances of pollers for unreachable hosts (including IPMI and Java).
|
|
||||||
# At least one poller for unreachable hosts must be running if regular, IPMI or Java pollers
|
|
||||||
# are started.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartPollersUnreachable=1
|
|
||||||
|
|
||||||
### Option: StartTrappers
|
|
||||||
# Number of pre-forked instances of trappers.
|
|
||||||
# Trappers accept incoming connections from Zabbix sender, active agents and active proxies.
|
|
||||||
# At least one trapper process must be running to display server availability and view queue
|
|
||||||
# in the frontend.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartTrappers=5
|
|
||||||
|
|
||||||
### Option: StartPingers
|
|
||||||
# Number of pre-forked instances of ICMP pingers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartPingers=1
|
|
||||||
|
|
||||||
### Option: StartDiscoverers
|
|
||||||
# Number of pre-forked instances of discoverers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-250
|
|
||||||
# Default:
|
|
||||||
# StartDiscoverers=1
|
|
||||||
|
|
||||||
### Option: StartHTTPPollers
|
|
||||||
# Number of pre-forked instances of HTTP pollers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartHTTPPollers=1
|
|
||||||
|
|
||||||
### Option: StartTimers
|
|
||||||
# Number of pre-forked instances of timers.
|
|
||||||
# Timers process time-based trigger functions and maintenance periods.
|
|
||||||
# Only the first timer process handles the maintenance periods.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-1000
|
|
||||||
# Default:
|
|
||||||
# StartTimers=1
|
|
||||||
|
|
||||||
### Option: JavaGateway
|
|
||||||
# IP address (or hostname) of Zabbix Java gateway.
|
|
||||||
# Only required if Java pollers are started.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# JavaGateway=
|
|
||||||
|
|
||||||
### Option: JavaGatewayPort
|
|
||||||
# Port that Zabbix Java gateway listens on.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1024-32767
|
|
||||||
# Default:
|
|
||||||
# JavaGatewayPort=10052
|
|
||||||
|
|
||||||
### Option: StartJavaPollers
|
|
||||||
# Number of pre-forked instances of Java pollers.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000
|
|
||||||
# Default:
|
|
||||||
# StartJavaPollers=0
|
|
||||||
|
|
||||||
### Option: StartVMwareCollectors
|
|
||||||
# Number of pre-forked vmware collector instances.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-250
|
|
||||||
# Default:
|
|
||||||
# StartVMwareCollectors=0
|
|
||||||
|
|
||||||
### Option: VMwareFrequency
|
|
||||||
# How often Zabbix will connect to VMware service to obtain a new data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 10-86400
|
|
||||||
# Default:
|
|
||||||
# VMwareFrequency=60
|
|
||||||
|
|
||||||
### Option: VMwarePerfFrequency
|
|
||||||
# How often Zabbix will connect to VMware service to obtain performance data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 10-86400
|
|
||||||
# Default:
|
|
||||||
# VMwarePerfFrequency=60
|
|
||||||
|
|
||||||
### Option: VMwareCacheSize
|
|
||||||
# Size of VMware cache, in bytes.
|
|
||||||
# Shared memory size for storing VMware data.
|
|
||||||
# Only used if VMware collectors are started.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 256K-2G
|
|
||||||
# Default:
|
|
||||||
# VMwareCacheSize=8M
|
|
||||||
|
|
||||||
### Option: VMwareTimeout
|
|
||||||
# Specifies how many seconds vmware collector waits for response from VMware service.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-300
|
|
||||||
# Default:
|
|
||||||
# VMwareTimeout=10
|
|
||||||
|
|
||||||
### Option: SNMPTrapperFile
|
|
||||||
# Temporary file used for passing data from SNMP trap daemon to the server.
|
|
||||||
# Must be the same as in zabbix_trap_receiver.pl or SNMPTT configuration file.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SNMPTrapperFile=/tmp/zabbix_traps.tmp
|
|
||||||
|
|
||||||
SNMPTrapperFile=/var/log/snmptt/snmptt.log
|
|
||||||
|
|
||||||
### Option: StartSNMPTrapper
|
|
||||||
# If 1, SNMP trapper process is started.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1
|
|
||||||
# Default:
|
|
||||||
# StartSNMPTrapper=0
|
|
||||||
|
|
||||||
### Option: ListenIP
|
|
||||||
# List of comma delimited IP addresses that the trapper should listen on.
|
|
||||||
# Trapper will listen on all network interfaces if this parameter is missing.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# ListenIP=0.0.0.0
|
|
||||||
|
|
||||||
# ListenIP=127.0.0.1
|
|
||||||
|
|
||||||
### Option: HousekeepingFrequency
|
|
||||||
# How often Zabbix will perform housekeeping procedure (in hours).
|
|
||||||
# Housekeeping is removing outdated information from the database.
|
|
||||||
# To prevent Housekeeper from being overloaded, no more than 4 times HousekeepingFrequency
|
|
||||||
# hours of outdated information are deleted in one housekeeping cycle, for each item.
|
|
||||||
# To lower load on server startup housekeeping is postponed for 30 minutes after server start.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-24
|
|
||||||
# Default:
|
|
||||||
# HousekeepingFrequency=1
|
|
||||||
|
|
||||||
### Option: MaxHousekeeperDelete
|
|
||||||
# The table "housekeeper" contains "tasks" for housekeeping procedure in the format:
|
|
||||||
# [housekeeperid], [tablename], [field], [value].
|
|
||||||
# No more than 'MaxHousekeeperDelete' rows (corresponding to [tablename], [field], [value])
|
|
||||||
# will be deleted per one task in one housekeeping cycle.
|
|
||||||
# SQLite3 does not use this parameter, deletes all corresponding rows without a limit.
|
|
||||||
# If set to 0 then no limit is used at all. In this case you must know what you are doing!
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-1000000
|
|
||||||
# Default:
|
|
||||||
# MaxHousekeeperDelete=500
|
|
||||||
|
|
||||||
### Option: SenderFrequency
|
|
||||||
# How often Zabbix will try to send unsent alerts (in seconds).
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 5-3600
|
|
||||||
# Default:
|
|
||||||
# SenderFrequency=30
|
|
||||||
|
|
||||||
### Option: CacheSize
|
|
||||||
# Size of configuration cache, in bytes.
|
|
||||||
# Shared memory size for storing host, item and trigger data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 128K-8G
|
|
||||||
# Default:
|
|
||||||
# CacheSize=8M
|
|
||||||
|
|
||||||
### Option: CacheUpdateFrequency
|
|
||||||
# How often Zabbix will perform update of configuration cache, in seconds.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# CacheUpdateFrequency=60
|
|
||||||
|
|
||||||
### Option: StartDBSyncers
|
|
||||||
# Number of pre-forked instances of DB Syncers
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-100
|
|
||||||
# Default:
|
|
||||||
# StartDBSyncers=4
|
|
||||||
|
|
||||||
### Option: HistoryCacheSize
|
|
||||||
# Size of history cache, in bytes.
|
|
||||||
# Shared memory size for storing history data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 128K-2G
|
|
||||||
# Default:
|
|
||||||
# HistoryCacheSize=8M
|
|
||||||
|
|
||||||
### Option: TrendCacheSize
|
|
||||||
# Size of trend cache, in bytes.
|
|
||||||
# Shared memory size for storing trends data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 128K-2G
|
|
||||||
# Default:
|
|
||||||
# TrendCacheSize=4M
|
|
||||||
|
|
||||||
### Option: HistoryTextCacheSize
|
|
||||||
# Size of text history cache, in bytes.
|
|
||||||
# Shared memory size for storing character, text or log history data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 128K-2G
|
|
||||||
# Default:
|
|
||||||
# HistoryTextCacheSize=16M
|
|
||||||
|
|
||||||
### Option: ValueCacheSize
|
|
||||||
# Size of history value cache, in bytes.
|
|
||||||
# Shared memory size for caching item history data requests.
|
|
||||||
# Setting to 0 disables value cache.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0,128K-64G
|
|
||||||
# Default:
|
|
||||||
# ValueCacheSize=8M
|
|
||||||
|
|
||||||
### Option: Timeout
|
|
||||||
# Specifies how long we wait for agent, SNMP device or external check (in seconds).
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-30
|
|
||||||
# Default:
|
|
||||||
# Timeout=3
|
|
||||||
|
|
||||||
### Option: TrapperTimeout
|
|
||||||
# Specifies how many seconds trapper may spend processing new data.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-300
|
|
||||||
# Default:
|
|
||||||
# TrapperTimeout=300
|
|
||||||
|
|
||||||
### Option: UnreachablePeriod
|
|
||||||
# After how many seconds of unreachability treat a host as unavailable.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# UnreachablePeriod=45
|
|
||||||
|
|
||||||
### Option: UnavailableDelay
|
|
||||||
# How often host is checked for availability during the unavailability period, in seconds.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# UnavailableDelay=60
|
|
||||||
|
|
||||||
### Option: UnreachableDelay
|
|
||||||
# How often host is checked for availability during the unreachability period, in seconds.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# UnreachableDelay=15
|
|
||||||
|
|
||||||
### Option: AlertScriptsPath
|
|
||||||
# Full path to location of custom alert scripts.
|
|
||||||
# Default depends on compilation options.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# AlertScriptsPath=${datadir}/zabbix/alertscripts
|
|
||||||
|
|
||||||
AlertScriptsPath=/usr/lib/zabbix/alertscripts
|
|
||||||
|
|
||||||
### Option: ExternalScripts
|
|
||||||
# Full path to location of external scripts.
|
|
||||||
# Default depends on compilation options.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# ExternalScripts=${datadir}/zabbix/externalscripts
|
|
||||||
|
|
||||||
ExternalScripts=/usr/lib/zabbix/externalscripts
|
|
||||||
|
|
||||||
### Option: FpingLocation
|
|
||||||
# Location of fping.
|
|
||||||
# Make sure that fping binary has root ownership and SUID flag set.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# FpingLocation=/usr/sbin/fping
|
|
||||||
|
|
||||||
### Option: Fping6Location
|
|
||||||
# Location of fping6.
|
|
||||||
# Make sure that fping6 binary has root ownership and SUID flag set.
|
|
||||||
# Make empty if your fping utility is capable to process IPv6 addresses.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# Fping6Location=/usr/sbin/fping6
|
|
||||||
|
|
||||||
### Option: SSHKeyLocation
|
|
||||||
# Location of public and private keys for SSH checks and actions.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SSHKeyLocation=
|
|
||||||
|
|
||||||
### Option: LogSlowQueries
|
|
||||||
# How long a database query may take before being logged (in milliseconds).
|
|
||||||
# Only works if DebugLevel set to 3 or 4.
|
|
||||||
# 0 - don't log slow queries.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600000
|
|
||||||
# Default:
|
|
||||||
# LogSlowQueries=0
|
|
||||||
|
|
||||||
### Option: TmpDir
|
|
||||||
# Temporary directory.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# TmpDir=/tmp
|
|
||||||
|
|
||||||
### Option: StartProxyPollers
|
|
||||||
# Number of pre-forked instances of pollers for passive proxies.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 0-250
|
|
||||||
# Default:
|
|
||||||
# StartProxyPollers=1
|
|
||||||
|
|
||||||
### Option: ProxyConfigFrequency
|
|
||||||
# How often Zabbix Server sends configuration data to a Zabbix Proxy in seconds.
|
|
||||||
# This parameter is used only for proxies in the passive mode.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600*24*7
|
|
||||||
# Default:
|
|
||||||
# ProxyConfigFrequency=3600
|
|
||||||
|
|
||||||
### Option: ProxyDataFrequency
|
|
||||||
# How often Zabbix Server requests history data from a Zabbix Proxy in seconds.
|
|
||||||
# This parameter is used only for proxies in the passive mode.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Range: 1-3600
|
|
||||||
# Default:
|
|
||||||
# ProxyDataFrequency=1
|
|
||||||
|
|
||||||
### Option: AllowRoot
|
|
||||||
# Allow the server to run as 'root'. If disabled and the server is started by 'root', the server
|
|
||||||
# will try to switch to the user specified by the User configuration option instead.
|
|
||||||
# Has no effect if started under a regular user.
|
|
||||||
# 0 - do not allow
|
|
||||||
# 1 - allow
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# AllowRoot=0
|
|
||||||
|
|
||||||
### Option: User
|
|
||||||
# Drop privileges to a specific, existing user on the system.
|
|
||||||
# Only has effect if run as 'root' and AllowRoot is disabled.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# User=zabbix
|
|
||||||
|
|
||||||
### Option: Include
|
|
||||||
# You may include individual files or all files in a directory in the configuration file.
|
|
||||||
# Installing Zabbix will create include directory in /usr/local/etc, unless modified during the compile time.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# Include=
|
|
||||||
|
|
||||||
# Include=/usr/local/etc/zabbix_server.general.conf
|
|
||||||
# Include=/usr/local/etc/zabbix_server.conf.d/
|
|
||||||
# Include=/usr/local/etc/zabbix_server.conf.d/*.conf
|
|
||||||
|
|
||||||
### Option: SSLCertLocation
|
|
||||||
# Location of SSL client certificates.
|
|
||||||
# This parameter is used only in web monitoring.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SSLCertLocation=${datadir}/zabbix/ssl/certs
|
|
||||||
|
|
||||||
### Option: SSLKeyLocation
|
|
||||||
# Location of private keys for SSL client certificates.
|
|
||||||
# This parameter is used only in web monitoring.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SSLKeyLocation=${datadir}/zabbix/ssl/keys
|
|
||||||
|
|
||||||
### Option: SSLCALocation
|
|
||||||
# Override the location of certificate authority (CA) files for SSL server certificate verification.
|
|
||||||
# If not set, system-wide directory will be used.
|
|
||||||
# This parameter is used only in web monitoring.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# SSLCALocation=
|
|
||||||
|
|
||||||
####### LOADABLE MODULES #######
|
|
||||||
|
|
||||||
### Option: LoadModulePath
|
|
||||||
# Full path to location of server modules.
|
|
||||||
# Default depends on compilation options.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LoadModulePath=${libdir}/modules
|
|
||||||
|
|
||||||
### Option: LoadModule
|
|
||||||
# Module to load at server startup. Modules are used to extend functionality of the server.
|
|
||||||
# Format: LoadModule=<module.so>
|
|
||||||
# The modules must be located in directory specified by LoadModulePath.
|
|
||||||
# It is allowed to include multiple LoadModule parameters.
|
|
||||||
#
|
|
||||||
# Mandatory: no
|
|
||||||
# Default:
|
|
||||||
# LoadModule=
|
|
||||||
|
|
Loading…
Reference in a new issue