Source: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/os/openbsd?at=release/7.0
OpenBSD by Zabbix agent
Overview
This is an Official OpenBSD template. It requires Zabbix agent 7.0 or newer.
Notes on filesystem (FS) discovery:
- The ext4/3/2 FS reserves space for privileged usage, typically set at 5% by default.
- BTRFS allocates a default of 10% of the volume for its own needs.
- To mitigate potential disasters, FS usage triggers are based on the maximum available space.
- Utilization formula:
pused = 100 - 100 * (available / total - free + available)
- Utilization formula:
- The FS utilization chart, derived from graph prototypes, reflects FS reserved space as the difference between used and available space from the total volume.
Requirements
Zabbix version: 7.0 and higher.
Tested versions
This template has been tested on:
- OpenBSD
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
Install Zabbix agent on OpenBSD according to Zabbix documentation.
Macros used
Name | Description | Default |
---|---|---|
{$AGENT.TIMEOUT} | Timeout after which the agent is considered unavailable. Works only for agents reachable from Zabbix server/proxy (in passive mode). |
3m |
{$VFS.FS.FSNAME.NOT_MATCHES} | Used for filesystem discovery. Can be overridden on the host or linked template level. |
^(/dev|/sys|/run|/proc|.+/shm$) |
{$VFS.FS.FSNAME.MATCHES} | Used for filesystem discovery. Can be overridden on the host or linked template level. |
.+ |
{$VFS.FS.FSTYPE.MATCHES} | Used for filesystem discovery. Can be overridden on the host or linked template level. |
Macro too long. Please see the template. |
{$VFS.FS.FSTYPE.NOT_MATCHES} | Used for filesystem discovery. Can be overridden on the host or linked template level. |
^\s$ |
{$VFS.FS.INODE.PFREE.MIN.CRIT} | The critical threshold of the filesystem metadata utilization. |
10 |
{$VFS.FS.INODE.PFREE.MIN.WARN} | The warning threshold of the filesystem metadata utilization. |
20 |
{$VFS.FS.PUSED.MAX.CRIT} | The critical threshold of the filesystem utilization. |
90 |
{$VFS.FS.PUSED.MAX.WARN} | The warning threshold of the filesystem utilization. |
80 |
Items
Name | Description | Type | Key and additional info |
---|---|---|---|
Maximum number of opened files | May be increased by using the |
Zabbix agent | kernel.maxfiles |
Maximum number of processes | May be increased by using the |
Zabbix agent | kernel.maxproc |
Number of running processes | The number of processes in a running state. |
Zabbix agent | proc.num[,,run] |
Number of processes | The total number of processes in any state. |
Zabbix agent | proc.num[] |
Host boot time | Zabbix agent | system.boottime | |
Interrupts per second | Number of interrupts processed. |
Zabbix agent | system.cpu.intr Preprocessing
|
Processor load (1 min average per core) | Calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg1] |
Processor load (5 min average per core) | Calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg5] |
Processor load (15 min average per core) | Calculated as the system CPU load divided by the number of CPU cores. |
Zabbix agent | system.cpu.load[percpu,avg15] |
Context switches per second | The combined rate at which all processors on the computer are switched from one thread to another. |
Zabbix agent | system.cpu.switches Preprocessing
|
CPU idle time | Time the CPU has spent doing nothing. |
Zabbix agent | system.cpu.util[,idle] |
CPU interrupt time | Time the CPU has spent servicing hardware interrupts. |
Zabbix agent | system.cpu.util[,interrupt] |
CPU nice time | Time the CPU has spent running users' processes that have been niced. |
Zabbix agent | system.cpu.util[,nice] |
CPU system time | Time the CPU has spent running the kernel and its processes. |
Zabbix agent | system.cpu.util[,system] |
CPU user time | Time the CPU has spent running users' processes that are not niced. |
Zabbix agent | system.cpu.util[,user] |
Host name | The host name of the system. |
Zabbix agent | system.hostname Preprocessing
|
Host local time | The local system time of the host. |
Zabbix agent | system.localtime |
Free swap space | The free space of the swap volume/file expressed in bytes. |
Zabbix agent | system.swap.size[,free] |
Free swap space in % | The free space of the swap volume/file expressed in %. |
Zabbix agent | system.swap.size[,pfree] |
Total swap space | Total space of the swap volume/file expressed in bytes. |
Zabbix agent | system.swap.size[,total] |
System information | Information as normally returned by |
Zabbix agent | system.uname Preprocessing
|
System uptime | Zabbix agent | system.uptime | |
Number of logged in users | The number of users who are currently logged in. |
Zabbix agent | system.users.num |
Checksum of /etc/passwd | Zabbix agent | vfs.file.cksum[/etc/passwd,sha256] Preprocessing
|
|
Available memory | Defined as free + cached + buffers. |
Zabbix agent | vm.memory.size[available] |
Total memory | Total memory expressed in bytes. |
Zabbix agent | vm.memory.size[total] |
Version of Zabbix agent running | Zabbix agent | agent.version Preprocessing
|
|
Host name of Zabbix agent running | Zabbix agent | agent.hostname Preprocessing
|
|
Zabbix agent ping | The agent always returns "1" for this item. May be used in combination with |
Zabbix agent | agent.ping |
Zabbix agent availability | Used for monitoring the availability status of the agent. |
Zabbix internal | zabbix[host,agent,available] |
Get filesystems | The |
Zabbix agent | vfs.fs.get |
Triggers
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
OpenBSD: Configured max number of opened files is too low on {HOST.NAME} | last(/OpenBSD by Zabbix agent/kernel.maxfiles)<1024 |
Info | ||
OpenBSD: Configured max number of processes is too low on {HOST.NAME} | last(/OpenBSD by Zabbix agent/kernel.maxproc)<256 |
Info | ||
OpenBSD: Too many processes running on {HOST.NAME} | avg(/OpenBSD by Zabbix agent/proc.num[,,run],5m)>30 |
Warning | ||
OpenBSD: Too many processes on {HOST.NAME} | avg(/OpenBSD by Zabbix agent/proc.num[],5m)>300 |
Warning | ||
OpenBSD: Processor load is too high on {HOST.NAME} | avg(/OpenBSD by Zabbix agent/system.cpu.load[percpu,avg1],5m)>5 |
Warning | ||
OpenBSD: Hostname was changed on {HOST.NAME} | last(/OpenBSD by Zabbix agent/system.hostname,#1)<>last(/OpenBSD by Zabbix agent/system.hostname,#2) |
Info | ||
OpenBSD: Lack of free swap space on {HOST.NAME} | It probably means that the systems requires more physical memory. |
last(/OpenBSD by Zabbix agent/system.swap.size[,pfree])<50 |
Warning | |
OpenBSD: Host information was changed on {HOST.NAME} | last(/OpenBSD by Zabbix agent/system.uname,#1)<>last(/OpenBSD by Zabbix agent/system.uname,#2) |
Info | ||
OpenBSD: {HOST.NAME} has just been restarted | change(/OpenBSD by Zabbix agent/system.uptime)<0 |
Info | ||
OpenBSD: /etc/passwd has been changed on {HOST.NAME} | last(/OpenBSD by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#1)<>last(/OpenBSD by Zabbix agent/vfs.file.cksum[/etc/passwd,sha256],#2) |
Warning | ||
OpenBSD: Lack of available memory on server {HOST.NAME} | last(/OpenBSD by Zabbix agent/vm.memory.size[available])<20M |
Average | ||
OpenBSD: Zabbix agent is not available | For passive checks only; the availability of the agent(s) and a host is used with |
max(/OpenBSD by Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0 |
Average | Manual close: Yes |
LLD rule Network interface discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Network interface discovery | Used for the discovery of network interfaces. |
Zabbix agent | net.if.discovery |
Item prototypes for Network interface discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Interface {#IFNAME}: Incoming network traffic | Zabbix agent | net.if.in[{#IFNAME}] Preprocessing
|
|
Interface {#IFNAME}: Outgoing network traffic | Zabbix agent | net.if.out[{#IFNAME}] Preprocessing
|
LLD rule Mounted filesystem discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
Mounted filesystem discovery | The discovery of mounted filesystems with different types. |
Dependent item | vfs.fs.dependent.discovery Preprocessing
|
Item prototypes for Mounted filesystem discovery
Name | Description | Type | Key and additional info |
---|---|---|---|
FS [{#FSNAME}]: Get data | Intermediate data of |
Dependent item | vfs.fs.dependent[{#FSNAME},data] Preprocessing
|
FS [{#FSNAME}]: Option: Read-only | The filesystem is mounted as read-only. It is available only for Zabbix agents 6.4 and higher. |
Dependent item | vfs.fs.dependent[{#FSNAME},readonly] Preprocessing
|
FS [{#FSNAME}]: Inodes: Free, in % | Free metadata space expressed in %. |
Dependent item | vfs.fs.dependent.inode[{#FSNAME},pfree] Preprocessing
|
FS [{#FSNAME}]: Space: Available | Available storage space expressed in bytes. |
Dependent item | vfs.fs.dependent.size[{#FSNAME},free] Preprocessing
|
FS [{#FSNAME}]: Space: Available, in % | Deprecated metric. Space availability expressed as a percentage, calculated using the current and maximum available spaces. |
Dependent item | vfs.fs.dependent.size[{#FSNAME},pfree] Preprocessing
|
FS [{#FSNAME}]: Space: Used, in % | Calculated as the percentage of currently used space compared to the maximum available space. |
Dependent item | vfs.fs.dependent.size[{#FSNAME},pused] Preprocessing
|
FS [{#FSNAME}]: Space: Total | Total space expressed in bytes. |
Dependent item | vfs.fs.dependent.size[{#FSNAME},total] Preprocessing
|
FS [{#FSNAME}]: Space: Used | Used storage expressed in bytes. |
Dependent item | vfs.fs.dependent.size[{#FSNAME},used] Preprocessing
|
Trigger prototypes for Mounted filesystem discovery
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
OpenBSD: FS [{#FSNAME}]: Filesystem has become read-only | The filesystem has become read-only, possibly due to an I/O error. Available only for Zabbix agents 6.4 and higher. |
last(/OpenBSD by Zabbix agent/vfs.fs.dependent[{#FSNAME},readonly],#2)=0 and last(/OpenBSD by Zabbix agent/vfs.fs.dependent[{#FSNAME},readonly])=1 |
Average | Manual close: Yes |
OpenBSD: FS [{#FSNAME}]: Running out of free inodes | Disk writing may fail if index nodes are exhausted, leading to error messages like "No space left on device" or "Disk is full", despite available free space. |
min(/OpenBSD by Zabbix agent/vfs.fs.dependent.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.CRIT:"{#FSNAME}"} |
Average | |
OpenBSD: FS [{#FSNAME}]: Running out of free inodes | Disk writing may fail if index nodes are exhausted, leading to error messages like "No space left on device" or "Disk is full", despite available free space. |
min(/OpenBSD by Zabbix agent/vfs.fs.dependent.inode[{#FSNAME},pfree],5m)<{$VFS.FS.INODE.PFREE.MIN.WARN:"{#FSNAME}"} |
Warning | Depends on:
|
OpenBSD: FS [{#FSNAME}]: Space is critically low | The volume's space usage exceeds the |
min(/OpenBSD by Zabbix agent/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} |
Average | Manual close: Yes |
OpenBSD: FS [{#FSNAME}]: Space is low | The volume's space usage exceeds the |
min(/OpenBSD by Zabbix agent/vfs.fs.dependent.size[{#FSNAME},pused],5m)>{$VFS.FS.PUSED.MAX.WARN:"{#FSNAME}"} |
Warning | Manual close: Yes Depends on:
|
Feedback
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template, or ask for help at ZABBIX forums