Network interface mtu does not match across cluster members-f5-all

Network interface mtu does not match across cluster members-f5-all
0

Network interface mtu does not match across cluster members-f5-all

Vendor: f5

OS: all

Description:
Indeni will identify when two devices are part of a cluster and alert if their network interface mtu are different.

Remediation Steps:
Ensure the network interface mtu setting matches across devices in a cluster.

How does this work?
The state of the interface is retrieved by logging into the device through SSH and running “ifconfig -a”.

Why is this important?
The MTU sometimes needs to be adjusted. Storing this gives an administrator an easy way to view the MTU from a large number of devices, as well as identifying incorrectly set MTU.

Without Indeni how would you find this?
An administrator could log into the device through SSH and execute the command “ifconfig -a” to see the MTU of each VLAN interface.

f5-ifconfig

name: f5-ifconfig
description: Get vlan interface statistics and connected networks table
type: monitoring
monitoring_interval: 1 minute
requires:
    vendor: f5
    product: load-balancer
    linux-based: 'true'
    shell: bash
comments:
    network-interface-rx-packets:
        why: |
            Tracking the number of packets flowing through each network interface is important to identify potential issues, spikes in traffic, etc.
        how: |
            This alert logs into the F5 unit through the F5 iControl REST API and retrieves the metrics from all network interfaces. In that output, it looks for the number of packets received through the interface.
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-rx-dropped:
        why: |
            If incoming packets are being dropped on a network interface, it is important to be aware of it. This may be due to a high load on the unit, or another capacity issue.
        how: |
            This alert logs into the F5 unit through the F5 iControl REST API and retrieves the metrics from all network interfaces. In that output, it looks for the number of packets dropped on an interface.
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
    network-interface-tx-dropped:
        why: |
            If outgoing packets are being dropped on a VLAN interface, it is important to be aware of it. This may be due to a high load on the unit, or another capacity issue. It is also common on an F5 to get a large amount of drops if the VLAN tag configuration on a trunk does not match the peer device.
        how: |
            This script logs into the F5 unit through SSH and retrieves the status of all VLAN interfaces. In that output, it looks for the number of packets dropped on an interface.
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-rx-bytes:
        why: |
            Tracking the amount of data flowing through each VLAN interface is important to identify potential issues, spikes in traffic, etc.
        how: |
            An administrator could log into the device through SSH, entering TMSH and executing the command "show net vlan interfaces all-properties" to see the statistics of each VLAN interface.
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-tx-bytes:
        why: |
            Tracking the amount of data flowing through each VLAN interface is important to identify potential issues, spikes in traffic, etc.
        how: |
            This alert logs into the F5 unit through SSH and retrieves the status of all VLAN interfaces. In that output, it looks for the number of bytes transmitted through the interface.
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-mac:
        why: |
            To be able to search for MAC addresses in indeni, this data needs to be stored.
        how: |
            The state of the interface is retrieved by logging into the device through SSH and running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the mac address of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-state:
        why: |
            Interfaces in the "down" state could result in downtime or reduced redundancy.
        how: |
            The state of the interface is retrieved by logging into the device through SSH and running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the state of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-mtu:
        why: |
            The MTU sometimes needs to be adjusted. Storing this gives an administrator an easy way to view the MTU from a large number of devices, as well as identifying incorrectly set MTU.
        how: |
            The state of the interface is retrieved by logging into the device through SSH and running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the MTU of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-ipv4-address:
        why: |
            To be able to search for IP addresses in indeni, this data needs to be stored.
        how: |
            The state of the interface is retrieved by logging into the device through SSH and running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the IP address of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-ipv4-subnet:
        why: |
            To be able to search for IP addresses in indeni, this data needs to be stored.
        how: |
            The subnet of the interface is retrieved by running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the subnet of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-rx-overruns:
        why: |
            If the capacity of the interface is exceeded, the frame that is currently being  received is dropped and the overrun counter is incremented. It is important to track this in order to know if the capacity of an interface is sufficient.
        how: |
            The amount of receive overruns for the interface is retrieved by running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-rx-frame:
        why: |
            A high frame number means a lot of packages did not end on a 32bit/4 byte boundary.
        how: |
            The frame counter for the interface is retrieved by running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-tx-packets:
        why: |
            Tracking the number of packets flowing through each VLAN interface is important to identify potential issues, spikes in traffic, etc.
        how: |
            This alert logs into the F5 unit through SSH and retrieves the status of all VLAN interfaces. In that output, it looks for the number of packets transmitted through the interface.
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-tx-errors:
        why: |
            Transmit errors on an interface could indicate a problem with a cable or one of the involved interfaces.
        how: |
            The amount of transmit errors for the interface is retrieved by running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-tx-overruns:
        why: |
            If the capacity of the interface is exceeded, the frame that is currently being  received is dropped and the overrun counter is incremented. It is important to track this in order to know if the capacity of an interface is sufficient.
        how: |
            The amount of transmit overruns for the interface is retrieved by running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-tx-carrier:
        why: |
            A high carrier number could mean that the link is flapping.
        how: |
            The carrier counter for the interface is retrieved by running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-rx-errors:
        why: |
            Receive errors on an interface could indicate a problem with a cable, or one of the involved interfaces.
        how: |
            The amount of receive errors for the interface is retrieved by running "ifconfig -a".
        without-indeni: |
            An administrator could log into the device through SSH and execute the command "ifconfig -a" to see the statistics of each VLAN interface.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-admin-state:
        why: |
            If a network interface is set to be up (what's known as "admin up") but is actually down (a cable is not connected, the device on the other side is down, etc.) it is important to know.
        how: |
            This alert logs into the F5 device through SSH and retrieves the status of all network interfaces. In that output, it looks for interfaces that are set to be up, but are actually down.
        without-indeni: |
            An administrator could verify that interface admin state by logging into the device through SSH, and issuing the command "ifconfig -a".
        can-with-snmp: true
        can-with-syslog: true
steps:
-   run:
        type: SSH
        command: ifconfig -a
    parse:
        type: AWK
        file: ifconfig.parser.1.awk

CrossVendorClusterInterfaceMtuNonVsx

// Deprecation warning : Scala template-based rules are deprecated. Please use YAML format rules instead.

package com.indeni.server.rules.library.templatebased.crossvendor

import com.indeni.server.common.data.conditions.{Equals => DataEquals}
import com.indeni.server.rules.library.templates.EnabledInterfaceSnapshotComparisonTemplateRule

/**
  *
  */
case class CrossVendorClusterInterfaceMtuNonVsx() extends EnabledInterfaceSnapshotComparisonTemplateRule(
  ruleName = "CrossVendorClusterInterfaceMtuNonVsx",
  ruleFriendlyName = "Clustered Devices: Network interface mtu does not match across cluster members",
  ruleDescription = "Indeni will identify when two devices are part of a cluster and alert if their network interface mtu are different.",
  metricName = "network-interface-mtu",
  applicableMetricTag = "name",
  metaCondition = !DataEquals("vsx", "true"),
  isArray = false,
  alertDescription = "Devices that are part of a cluster must have the same network interface mtu setting. Review the differences below.",
  baseRemediationText = "Ensure the network interface mtu setting matches across devices in a cluster.")