Vyatta Virtual Router by SNMP
Overview
Template for Vyatta Virtual Router 1908e
Requirements
Zabbix version: 7.4 and higher.
Tested versions
This template has been tested on:
- Vyatta Virtual Router 1908e
Configuration
Zabbix should be configured according to the instructions in the Templates out of the box section.
Setup
Refer to the vendor documentation.
Macros used
| Name | Description | Default |
|---|---|---|
| {$VYATTA.SNMP.TIMEOUT} | Time interval for the SNMP availability trigger. |
5m |
| {$VYATTA.ICMP.LOSS.WARN} | Warning threshold of ICMP packet loss in %. |
20 |
| {$VYATTA.ICMP.RESPONSE.TIME.WARN} | Warning threshold of the average ICMP response time in seconds. |
0.15 |
| {$VYATTA.MEMORY.USED.WARN} | Warning threshold of memory utilization. |
80 |
| {$VYATTA.MEMORY.USED.HIGH} | High severity threshold of memory utilization. |
95 |
| {$VYATTA.STORAGE.USED.WARN} | Warning threshold of storage utilization. |
80 |
| {$VYATTA.STORAGE.USED.HIGH} | High severity threshold of storage utilization. |
95 |
| {$VYATTA.CPU.USED.WARN} | Warning threshold of CPU utilization. |
80 |
| {$VYATTA.CPU.USED.HIGH} | High severity threshold of CPU utilization. |
95 |
| {$VYATTA.IFCONTROL} | Macro for the operational state of the interface for the link down trigger. Can be used with the interface name as context. |
1 |
| {$VYATTA.DISCOVERY.STORAGE.NAME.MATCHES} | Sets the name regex filter to use in storage discovery for including. |
.* |
| {$VYATTA.DISCOVERY.STORAGE.NAME.NOT_MATCHES} | Sets the name regex filter to use in storage discovery for excluding. |
CHANGE_IF_NEEDED |
| {$VYATTA.DISCOVERY.STORAGE.TYPE.MATCHES} | Sets the type regex filter to use in storage discovery for including. |
.*(\.4|hrStorageFixedDisk)$ |
| {$VYATTA.DISCOVERY.STORAGE.TYPE.NOT_MATCHES} | Sets the type regex filter to use in storage discovery for excluding. |
CHANGE_IF_NEEDED |
| {$VYATTA.DISCOVERY.CPU.MATCHES} | Sets the OID regex filter to use in CPU discovery for including. Matches |
^.+\.3$ |
| {$VYATTA.DISCOVERY.CPU.NOT_MATCHES} | Sets the OID regex filter to use in CPU discovery for excluding. Matches |
CHANGE_IF_NEEDED |
| {$VYATTA.DISCOVERY.IFACE.ADMINSTATUS.MATCHES} | Sets the administrative status regex filter to use in network interface discovery for including. |
.* |
| {$VYATTA.DISCOVERY.IFACE.ADMINSTATUS.NOT_MATCHES} | Sets the administrative status regex filter to use in network interface discovery for excluding. |
CHANGE_IF_NEEDED |
| {$VYATTA.DISCOVERY.IFACE.IFOPERSTATUS.MATCHES} | Sets the operative status regex filter to use in network interface discovery for including. |
^.*$ |
| {$VYATTA.DISCOVERY.IFACE.IFOPERSTATUS.NOT_MATCHES} | Sets the operative status regex filter to use in network interface discovery for excluding. Ignore |
^6$ |
| {$VYATTA.DISCOVERY.IFACE.IFNAME.MATCHES} | Sets the name regex filter to use in network interface discovery for including. |
^.*$ |
| {$VYATTA.DISCOVERY.IFACE.IFNAME.NOT_MATCHES} | Sets the name regex filter to use in network interface discovery for excluding. Filters out |
Macro too long. Please see the template. |
| {$VYATTA.DISCOVERY.IFACE.IFALIAS.MATCHES} | Sets the alias regex filter to use in network interface discovery for including. |
.* |
| {$VYATTA.DISCOVERY.IFACE.IFALIAS.NOT_MATCHES} | Sets the alias regex filter to use in network interface discovery for excluding. |
CHANGE_IF_NEEDED |
| {$VYATTA.DISCOVERY.IFACE.IFDESCR.MATCHES} | Sets the description regex filter to use in network interface discovery for including. |
.* |
| {$VYATTA.DISCOVERY.IFACE.IFDESCR.NOT_MATCHES} | Sets the description regex filter to use in network interface discovery for excluding. |
CHANGE_IF_NEEDED |
| {$VYATTA.DISCOVERY.IFACE.IFTYPE.MATCHES} | Sets the type regex filter to use in network interface discovery for including. |
.* |
| {$VYATTA.DISCOVERY.IFACE.IFTYPE.NOT_MATCHES} | Sets the type regex filter to use in network interface discovery for excluding. |
CHANGE_IF_NEEDED |
Items
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| SNMP traps (fallback) | The item is used to collect all SNMP traps unmatched by other |
SNMP trap | snmptrap.fallback |
| SNMP agent availability | Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list. Possible values: 0 - not available 1 - available 2 - unknown |
Zabbix internal | zabbix[host,snmp,available] |
| ICMP ping | Simple check | icmpping | |
| ICMP loss | Simple check | icmppingloss | |
| ICMP response time | Simple check | icmppingsec | |
| System name | MIB: SNMPv2-MIB System name. |
SNMP agent | system.name[sysName.0] |
| System description | MIB: SNMPv2-MIB System description. |
SNMP agent | system.descr[sysDescr.0] |
| System contact | MIB: SNMPv2-MIB System contact details. |
SNMP agent | system.contact[sysContact.0] |
| System location | MIB: SNMPv2-MIB System contact details. |
SNMP agent | system.location[sysLocation.0] |
| System object ID | MIB: SNMPv2-MIB System object ID. |
SNMP agent | system.objectid[sysObjectID.0] |
| Uptime (hardware) | MIB: HOST-RESOURCES-MIB The amount of time since this host was last initialized. Note that this is different from |
SNMP agent | system.uptime.hardware[hrSystemUptime.0] Preprocessing
|
| Uptime (network) | MIB: DISMAN-EVENT-MIB Time (in hundredths of a second) since the network management portion of the system was last re-initialized. |
SNMP agent | system.uptime.network[sysUpTimeInstance] Preprocessing
|
| Total memory | MIB: UCD-SNMP-MIB The total amount of real/physical memory installed on this host. |
SNMP agent | system.memory.total[memTotalReal.0] Preprocessing
|
| Free memory | MIB: UCD-SNMP-MIB The amount of real/physical memory currently unused or available. |
SNMP agent | system.memory.free[memAvailReal.0] Preprocessing
|
| Memory (buffers) | MIB: UCD-SNMP-MIB The total amount of real or virtual memory currently allocated for use as memory buffers. |
SNMP agent | system.memory.buffers[memBuffer.0] Preprocessing
|
| Memory (cached) | MIB: UCD-SNMP-MIB The total amount of real or virtual memory currently allocated for use as cached memory. |
SNMP agent | system.memory.cached[memCached.0] Preprocessing
|
| Memory utilization, % | Calculated | system.memory.util Preprocessing
|
|
| SNMP walk storage | MIB: HOST-RESOURCES-MIB Scanning |
SNMP agent | storage.walk |
| SNMP walk host devices | MIB: HOST-RESOURCES-MIB Scanning |
SNMP agent | devices.walk |
| SNMP walk network interfaces | MIB: IF-MIB Scanning |
SNMP agent | net.if.walk |
Triggers
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Vyatta: No SNMP data collection | SNMP is not available for polling. Please check device connectivity and SNMP settings. |
max(/Vyatta Virtual Router by SNMP/zabbix[host,snmp,available],{$VYATTA.SNMP.TIMEOUT})=0 |
Warning | Depends on:
|
| Vyatta: Unavailable by ICMP ping | Last three attempts returned timeout. Please check device connectivity. |
max(/Vyatta Virtual Router by SNMP/icmpping,#3)=0 |
High | |
| Vyatta: High ICMP ping loss | ICMP packet loss detected. |
min(/Vyatta Virtual Router by SNMP/icmppingloss,5m)>{$VYATTA.ICMP.LOSS.WARN} and min(/Vyatta Virtual Router by SNMP/icmppingloss,5m)<100 |
Warning | Depends on:
|
| Vyatta: High ICMP ping response time | Average ICMP response time is too high. |
avg(/Vyatta Virtual Router by SNMP/icmppingsec,5m)>{$VYATTA.ICMP.RESPONSE.TIME.WARN} |
Warning | Depends on:
|
| Vyatta: Host has been restarted | Uptime is less than 10 minutes. |
(last(/Vyatta Virtual Router by SNMP/system.uptime.hardware[hrSystemUptime.0])>0 and last(/Vyatta Virtual Router by SNMP/system.uptime.hardware[hrSystemUptime.0])<10m) or (last(/Vyatta Virtual Router by SNMP/system.uptime.hardware[hrSystemUptime.0])=0 and last(/Vyatta Virtual Router by SNMP/system.uptime.network[sysUpTimeInstance])<10m) |
Warning | Manual close: Yes Depends on:
|
| Vyatta: Memory utilization is high | Memory utilization is high. |
min(/Vyatta Virtual Router by SNMP/system.memory.util, 5m) > {$VYATTA.MEMORY.USED.WARN} |
Warning | Depends on:
|
| Vyatta: Memory utilization is too high | Memory utilization is too high. |
min(/Vyatta Virtual Router by SNMP/system.memory.util, 5m) > {$VYATTA.MEMORY.USED.HIGH} |
High |
LLD rule Storage discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Storage discovery | HOST-RESOURCES-MIB::hrStorage discovery with storage filter. |
Dependent item | storage.discovery Preprocessing
|
Item prototypes for Storage discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Storage [{#STORAGE_NAME}]: Total size | Dependent item | storage.size[hrStorageSize.{#SNMPINDEX}] Preprocessing
|
|
| Storage [{#STORAGE_NAME}]: Used size | Dependent item | storage.used[hrStorageUsed.{#SNMPINDEX}] Preprocessing
|
|
| Storage [{#STORAGE_NAME}]: Storage utilization, % | Calculated | storage.size.percent[hrStorageUsed.{#SNMPINDEX}] Preprocessing
|
Trigger prototypes for Storage discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Vyatta: Storage [{#STORAGE_NAME}]: Storage utilization is high | Storage utilization is high. |
min(/Vyatta Virtual Router by SNMP/storage.size.percent[hrStorageUsed.{#SNMPINDEX}], 5m) > {$VYATTA.STORAGE.USED.WARN} |
Warning | Depends on:
|
| Vyatta: Storage [{#STORAGE_NAME}]: Storage utilization is too high | Storage utilization is too high. |
min(/Vyatta Virtual Router by SNMP/storage.size.percent[hrStorageUsed.{#SNMPINDEX}], 5m) > {$VYATTA.STORAGE.USED.HIGH} |
High |
LLD rule CPU discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| CPU discovery | Dependent item | cpu.discovery Preprocessing
|
Item prototypes for CPU discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| CPU [{#DESCRIPTION}][{#SNMPINDEX}]: Status | MIB: HOST-RESOURCES-MIB The current operational state of the device described by this row of the table. * * * * * |
Dependent item | cpu.status[hrDeviceStatus.{#SNMPINDEX}] Preprocessing
|
| CPU [{#DESCRIPTION}][{#SNMPINDEX}]: Utilization, % | MIB: HOST-RESOURCES-MIB The average, over the last minute, of the percentage of time that this processor was not idle. |
Dependent item | cpu.utilization[hrProcessorLoad.{#SNMPINDEX}] Preprocessing
|
Trigger prototypes for CPU discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Vyatta: CPU [{#DESCRIPTION}][{#SNMPINDEX}]: CPU abnormal state | CPU utilization is too high. |
last(/Vyatta Virtual Router by SNMP/cpu.status[hrDeviceStatus.{#SNMPINDEX}]) <> 2 |
High | |
| Vyatta: CPU [{#DESCRIPTION}][{#SNMPINDEX}]: CPU utilization is high | CPU utilization is high. |
min(/Vyatta Virtual Router by SNMP/cpu.utilization[hrProcessorLoad.{#SNMPINDEX}], 5m) > {$VYATTA.CPU.USED.WARN} |
Warning | Depends on:
|
| Vyatta: CPU [{#DESCRIPTION}][{#SNMPINDEX}]: CPU utilization is too high | CPU utilization is too high. |
min(/Vyatta Virtual Router by SNMP/cpu.utilization[hrProcessorLoad.{#SNMPINDEX}], 5m) > {$VYATTA.CPU.USED.HIGH} |
High |
LLD rule Network interface discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Network interface discovery | Dependent item | net.if.discovery Preprocessing
|
Item prototypes for Network interface discovery
| Name | Description | Type | Key and additional info |
|---|---|---|---|
| Interface [{#IFNAME}][{#IFALIAS}]: Operational status | MIB: IF-MIB The current operational state of the interface. - The - If - If - It should change to - It should remain in the - It should remain in the |
Dependent item | net.if.status[ifOperStatus.{#SNMPINDEX}] Preprocessing
|
| Interface [{#IFNAME}][{#IFALIAS}]: Bits received | MIB: IF-MIB The total number of octets received on the interface, including framing characters. This object is a 64-bit version of |
Dependent item | net.if.in[ifHCInOctets.{#SNMPINDEX}] Preprocessing
|
| Interface [{#IFNAME}][{#IFALIAS}]: Bits sent | MIB: IF-MIB The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of |
Dependent item | net.if.out[ifHCOutOctets.{#SNMPINDEX}] Preprocessing
|
| Interface [{#IFNAME}][{#IFALIAS}]: Inbound packets with errors | MIB: IF-MIB For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol. For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of |
Dependent item | net.if.in.errors[ifInErrors.{#SNMPINDEX}] Preprocessing
|
| Interface [{#IFNAME}][{#IFALIAS}]: Outbound packets with errors | MIB: IF-MIB For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol. For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of |
Dependent item | net.if.out.errors[ifInErrors.{#SNMPINDEX}] Preprocessing
|
| Interface [{#IFNAME}][{#IFALIAS}]: Inbound packets discarded | MIB: IF-MIB The number of inbound packets which were chosen to be discarded even though no errors had been detected to prevent their being deliverable to a higher-layer protocol. One possible reason for discarding such a packet could be to free up buffer space. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of |
Dependent item | net.if.in.discards[ifInDiscards.{#SNMPINDEX}] Preprocessing
|
| Interface [{#IFNAME}][{#IFALIAS}]: Outbound packets discarded | MIB: IF-MIB The number of outbound packets which were chosen to be discarded even though no errors had been detected to prevent their being deliverable to a higher-layer protocol. One possible reason for discarding such a packet could be to free up buffer space. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of |
Dependent item | net.if.out.discards[ifOutDiscards.{#SNMPINDEX}] Preprocessing
|
| Interface [{#IFNAME}][{#IFALIAS}]: Speed | MIB: IF-MIB An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. For a sub-layer which has no concept of bandwidth, this object should be zero. |
Dependent item | net.if.speed[ifHighSpeed.{#SNMPINDEX}] Preprocessing
|
| Interface [{#IFNAME}][{#IFALIAS}]: Interface type | MIB: IF-MIB The type of interface. Additional values for |
Dependent item | net.if.type[ifType.{#SNMPINDEX}] Preprocessing
|
Trigger prototypes for Network interface discovery
| Name | Description | Expression | Severity | Dependencies and additional info |
|---|---|---|---|---|
| Vyatta: Interface [{#IFNAME}][{#IFALIAS}]: Link down | This trigger expression works as follows: |
{$VYATTA.IFCONTROL:"{#IFNAME}"}=1 and last(/Vyatta Virtual Router by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Vyatta Virtual Router by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Vyatta Virtual Router by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2)) |
Average | Manual close: Yes |
| Vyatta: Interface [{#IFNAME}][{#IFALIAS}]: High bandwidth usage | The utilization of the network interface is close to its estimated maximum bandwidth. |
(avg(/Vyatta Virtual Router by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Vyatta Virtual Router by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or avg(/Vyatta Virtual Router by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Vyatta Virtual Router by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and last(/Vyatta Virtual Router by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 |
Warning | Manual close: Yes Depends on:
|
| Vyatta: Interface [{#IFNAME}][{#IFALIAS}]: High error rate | It recovers when it is below 80% of the |
min(/Vyatta Virtual Router by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} or min(/Vyatta Virtual Router by SNMP/net.if.out.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"} |
Warning | Manual close: Yes Depends on:
|
| Vyatta: Interface [{#IFNAME}][{#IFALIAS}]: Ethernet has changed to lower speed than it was before | This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually. |
change(/Vyatta Virtual Router by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Vyatta Virtual Router by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and ( last(/Vyatta Virtual Router by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or last(/Vyatta Virtual Router by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or last(/Vyatta Virtual Router by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or last(/Vyatta Virtual Router by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or last(/Vyatta Virtual Router by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or last(/Vyatta Virtual Router by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117 ) and (last(/Vyatta Virtual Router by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2) |
Info | 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