How Do You Configure the Zabbix Agent to be Active Only



  • Trying to properly configure that Zabbix Agent to only do active checks. But the documentation on this is terrible. Nothing gives a comprehensive guide to how to make that actually work.



  • @scottalanmiller said in How Do You Configure the Zabbix Agent to be Active Only:

    Trying to properly configure that Zabbix Agent to only do active checks. But the documentation on this is terrible. Nothing gives a comprehensive guide to how to make that actually work.

    Curious as to why you would want only active checks?

    What happens if you comment out the
    Server= line and leave the ServerActive lines as they are?



  • Clone the templates, as by default the included templates are all passive. Each item of the template has to be modified to be active



  • Here is where to make the change of an item:
    zabbix.png



  • @dafyre said in How Do You Configure the Zabbix Agent to be Active Only:

    urious as to why you would want only active checks?

    Because passive checks requires going through NAT, moving to static IPs, port forwarding on a massive scale, implementing DDNS for every device, etc. Simply untenable.



  • @scottalanmiller

    hmmm we had same scenario let me pull config. Notice we put 3 servers seperate by comma like route.

    [email protected]:/etc/zabbix# cat zabbix_agentd.conf
    # This is a config file for the Zabbix agent daemon (Unix)
    # To get more information about Zabbix, visit http://www.zabbix.com
    
    ############ GENERAL PARAMETERS #################
    
    ### Option: PidFile
    #	Name of PID file.
    #
    # Mandatory: no
    # Default:
    # PidFile=/tmp/zabbix_agentd.pid
    
    PidFile=/var/run/zabbix/zabbix_agentd.pid
    
    ### Option: LogFile
    #	Name of log file.
    #	If not set, syslog is used.
    #
    # Mandatory: no
    # Default:
    # LogFile=
    
    LogFile=/var/log/zabbix-agent/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)
    #
    # Mandatory: no
    # Range: 0-4
    # 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
    
    ### Option: LogRemoteCommands
    #	Enable logging of executed shell commands as warnings.
    #	0 - disabled
    #	1 - enabled
    #
    # Mandatory: no
    # Default:
    # LogRemoteCommands=0
    
    ##### 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=3232.134,323.232,BLABLA.BLABLA.BLABLA.jo,BLABLA.BLABLA.io
    
    ### 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=127.0.0.1
    
    ### 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=web3.BLABLA.BLABLA.BLABLA
    
    ### 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=
    
    ### 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=100
    
    ############ 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 /etc/zabbix, unless modified during the compile time.
    #
    # Mandatory: no
    # Default:
    # Include=
    
    # Include=/etc/zabbix/zabbix_agentd.userparams.conf
    # Include=/etc/zabbix/zabbix_agentd.conf.d/
    Include=/etc/zabbix/zabbix_agentd.conf.d/*.conf
    
    ####### USER-DEFINED MONITORED PARAMETERS #######
    
    ### Option: UnsafeUserParameters
    #	Allow all characters to be passed in arguments to user-defined parameters.
    #	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=