1.5. Release Notes 2.2.0

1.5.1. Highlights

  • This release introduces full High Availability configuration in the NetSpyGlass cluster
  • It adds support for discovery of IPv6 addresses of interfaces, discvoery and monitoring of BGP4 peering sessions over IPv6
  • It adds support for discovery and monitoring of Meraki and Viptela devices

1.5.2. Improvements and new features

  • The main improvement in this release is support for the High Availability setup in NetSpyGlass cluster. NetSpyGlass can be configured to run in High Availability (HA) configuration where each role in the cluster (Cluster configuration) is performed by a pair (or more) of servers rather than one machine. This includes the primary server. See High Availability for more information.
  • NET-1910: API call /ping can be used for the server health checking. The call can be made to return HTTP response 200 with different body or HTTP response 503, depending on the server state. See Health Checks and GET /v2/ping/net/:netid/[se]
  • NET-1878: mechanism used to pass information about variable subscription between servers in NetSpyGlass cluster has been redesigned to make it both more reliable and faster. This simplified data push and made it more reliable.
  • Added discovery of network interface MAU (Medium Attachment Unit, or Transceiver) type. This information is recorded in the tag with facet dot3MauType
  • This release adds support for discovery of interface IPv6 addresses and IPv6 layer 3 links between devices.
  • Added discovery of BGP peerings with BGP4-V2-MIB-JUNIPER for Juniper devices. This allows NetSpyGlass to find and monitor BGP4 peering sessions established over IPv6.
  • Added discovery of BGP peerings with CISCO-BGP4-MIB for Cisco devices. This allows NetSpyGlass to find and monitor BGP4 peering sessions established over IPv6.
  • the “phone home” function reports the following information: server’s unique UUID, number of devices in the configuration file, total number of monitoring variables in the server, license ID and the name it is registered to.
  • Configuration parameters have been added to provide a way to control the size of the shared SQL database connection pool. These parameters are ui.storage.connection_pool.minPoolSize, ui.storage.connection_pool.maxPoolSize and ui.storage.connection_pool.initialPoolSize. See Examples for more details and examples.
  • to disable the server, create an empty file /opt/netspyglass/home/.disable. Startup script netspyglass.sh checks if this file is present before starting the server. This can be used to disable one of the servers in an HA pair if needed (e.g. for maintenance)
  • Two new monitoring variables are now available if fping monitoring has been enabled: icmpMinRtt and icmpMaxRtt. These variables measure minimum and maximum round trip time during each polling cycle and are provided in addition to the variable icmpAvgRtt that measures average round trip time.
  • script nsgql.py has been improved to make it work with Python 2.6 that comes standard on Centos 6.

Note

Old monitoring variable icmpRtt has been renamed icmpAvgRtt. You may need to update your graphs and dashboards if they reference variable icmpRtt.
  • We have added support for Postgresql database in this version. Postgresql v9.5 or newer is required.

Note

Because of the addition of the support for BGP4 peering sessions over IPv6, indexes of the monitoring variables responsible for the monitoring of BGP4 sessions on devices from all vendors have changed. Unfortunately this means that corresponding time series are going to be interrupted after upgrade to this release of NetSpyGlass.

1.5.2.1. Ability to use MySQL hosted by Azure

This version of NetSpyGlass supports MySQL database hosted by Azure. We support both “Azure database for MySQL server” and shared MySQL databases. See Examples for examples of the connection url and other parameters.

1.5.2.1.1. Support for New Hardware Vendors and Devices

  • Added minimal support for discovery and monitoring of Meraki wireless access points. At this time, NetSpyGlass can only talk to these AP directly, so they should be configured to respond to SNMP queries.

  • Added support for discovery and monitoring of Viptela VPN devices

  • Added support for monitoring of the following global stats on F5 load balancers:

    • f5SysClientsslStatCurCompatConns : The current number of concurrent compat connections with established SSL sessions being maintained by the filter.
    • f5SysClientsslStatCurNativeConns : The current number of concurrent native connections with established SSL sessions being maintained by the filter.
    • f5SysStatClientTotConns : The total connections from client-side to the system.
    • f5SysStatClientBytesIn : The number of bytes received by the system from client-side.
    • f5SysStatClientBytesOut : The number of bytes sent to client-side from the system.
    • f5SysStatClientRateIn : Traffic received by the system from client-side, bits/sec
    • f5SysStatClientRateOut : Traffic sent to client-side from the system, bits/sec
    • f5SysStatServerBytesIn : The number of bytes received by the system from server-side.
    • f5SysStatServerBytesOut : The number of bytes sent to server-side from the system.
    • f5SysStatServerRateIn : Traffic received by the system from server-side, bit/sec
    • f5SysStatServerRateOut : Traffic sent to server-side from the system, bit/sec
    • f5SysStatClientCurConns : The current connections from client-side to the system.
  • Added support for monitoring of F5 server nodes. Server node “available” and “enabled” states are tracked by variables ltmNodeAddrStatusEnabledState and ltmNodeAddrStatusAvailState

  • NET-1946: Added discovery of EtherLike-MIB. The status is recorded in the tag SupportedMIBs.EtherLike-MIB. Scripts that build monitoring variables can use this information to decide whether they can create variable from OID EtherLike-MIB::dot3StatsDuplexStatus that can be used to monitor interface duplex/half-duples mode.

  • Some devices do not support EtherLike-MIB, in this case NetSpyGlass uses the following Enterprise MIBs and OIDs to monitor interface duplex state:

    • A10: A10-AX-MIB::axInterfaceMediaActiveDuplex
    • F5: F5-BIGIP-SYSTEM-MIB::sysInterfaceMediaActiveDuplex
    • Viptela: VIPTELA-OPER-VPN::interfaceDuplex
    Duplex monitoring is not available for the dollowing devices at this time:
    • Cisco ASA, Brocade, Infinera, Netgear, NetSNMP, Ubiquiti, Meraki, Vyatta
  • Monitoring of the duplex mode is disabled by default but can be easily turned on. See Example 3: making NetSpyGlass monitor duplex/half-duplex mode of network interfaces

  • Added section that lists interfaces in half-duplex mode to the main default report

1.5.2.1.2. UI integrations

Administrator can add icons and links to the navigation bar in NetSpyGlass UI. This is done by editing configuration dictionary ui.integrations in the configuration file nw2.conf. Here is an example that adds icons and links for Grafana and Kentik:

ui {

    # UI integrations. Use this configuration block to add icons and links to the navigation
    # bar in the UI. Changes to these parameters require server restart.
    integrations = [
        # uncomment and add url to enable Grafana and/or Kentik icon and link in the navigation bar.
        # the value of the parameter "icon" is the file name in the directory $home/etc/$name. For
        # example, Kentik logo is in the file "/opt/netspyglass/home/etc/kentik/kentik_logo.png"
        {
            name = Grafana,
            url = "http://grafana_server.acme.org:3000",
            icon = "grafana/grafana_icon.svg"
        },

        {
            name = Kentik,
            url = "https://portal.kentik.com/",
            icon = "kentik/kentik-logo.png"
        }
    ]
}

Icons should be placed inside of the directory /opt/netspyglass/home/etc/. The value of the parameter icon is relative path inside of this directory.

1.5.3. Bugs fixed in this release

  • NsgQL operator “NOT IN” should return True when the row does not have any values in specified column
  • NET-1948 in queries with “GROUP BY column” LIMIT applies to groups
  • NET-1954 Polling configuration discovery checks actual response from the device and skips polling configuration if it gets noSuchOid