NMIS 8 Release Notes

NMIS 8 Release Notes

Product Compatibility

Refer to product compatibility to determine supported Operating Systems and Database Versions.

Download NMIS here - https://opmantek.com/network-management-download/nmis-downloads/



NMIS 8.8.0

Released  10 Jan 2022

Highlights for the 8.8.0 release

Model changes

  • Silence the warnings from the Host_Resource Plugin

  • Fixing default handling of custom model for ifNumber changes

  • Host resources check if empty values

  • Added support for Calix model

  • Added support for limit ifspeed in Adtran plugin 

  • Add F5 LTM table collection and state - OFF by default with model policy as large.

  • Mitel3000 Modelling added.

  • Updates Huawei QoS to include 'Interface Name' in QoS graph

  • Fine tunes plugin install/plugins/QualityOfServiceStattable.pm. Updates Teldat QoS and BRS to include 'Interface Name' in QoS graph

  • Added the missing Model-ServiceOnly.nmis file

  • Updated models for Huawei MA5600 and Ruckus Controllers and Devices

  • Updates to Ruckus, Windows 2003, 2008, 2012 and ZyXEL

  • Adds models-install/Model-Teldati60-uses-common.nmis

  • Updates models-install/Model.nmis

  • Only displays active interfaces for Juniper devices for Juniper_CoS: Updates install/plugins/jnxCoStable.pm

  • Modelling updates for fixing Huawei and Alcatel

  • Updated Huawei GPON model

  • Updating F5 BigIP Models to be NMIS8 and NMIS9 Compatible

New Features

  • Updated jQuery version to 3.6.0 and jQuery UI 1.13

Fixes

  • Attempts to install CGI::Session from OS Package Manager first

  • Fixing default handling of custom model for ifNumber changes

  • Some hardening of NMIS against corrupting the node.json files

  • Fixed issue when variable not defined in model-discovery

NMIS 8.7.2-1G

Released  14 Apr 2021.

Highlights for the 8.7.2G release

  • Bugfix affecting the installation on CentOS 6 (perl 6.10). 

NMIS 8.7.2G

Released  30 March 2021.

Highlights for the 8.7.2G release

  • This version provides new authentication configurations:

    • Limit the number of sessions per user

    • Lock users that have not logged in in a specified period of time

NMIS 8.7.1G

This release of NMIS was published on 29 June 2020.

Highlights for the 8.7.1G release

  • Fix a polling bug that makes a node be found as candidate for WMI polling. 

  • Model fixes and updates.

We highly recommend to upgrade to this version from NMIS 8.7.0G.

NMIS 8.7.0G

This release of NMIS was published on 22 May 2020.

Highlights for the 8.7.0G release

8.7.0G is a major release with lots of new features, improvements and bug fixes.

Installer fixes

  • Get PAM module from repositories

  • Now installer uses cpanm for cpan installs as it is more flexible and does not need initial configuration as cpan does

Model Enhancements

  • support for new models:

    • Viptella models

    • Ericsson Router

    • Vyatta VYOS devices

    • Cisco BGP MIB 

    • Huawei HQOS graphs

    • Stats metrics to the Cisco routing model

    • Bluecoat Model 

    • f5 model

  • Model Improvements: 

    • Cisco Meraki and Meraki Cloud 

    • Improved models for Juniper IVE devices

    • Improved Fortinet FG model

    • Improved Microtik model

    • Improved Cisco Nexus model

    • Display temperature of the sensors in AristaSwitch model

  • Fixes for the Cisco Temperature model. Updates to the Cisco models to include temperature values

  • Work around net-snmp snmpd which reports almost anything as hrfixeddisk

  • Removing the degrees symbol from Units in Alerts

  • Added 'option' => 'small' to generate small graph when small graph requested in maxbits

  • Some graphs updated to show Max values, not only averages

  • Enhancing the Host Resource Model with thresholding

  • Added Opengear to Model.nmis to use Default-HC

  • Added lldpLocal to Model-Policy

  • Adding the missing ADSL graph to the NMIS source and fix ADSL model files

  • Added new RouteNumber section so variable accessible through stats

  • Common-database.nmis updated to include 'TeldatQoSStat' and 'TeldatBTSStat' entries

Plugin Improvements

  • Cisco Meraki Cloud

  • Viptella models

  • Added the OSS banner to the plugin code

  • Improvement in NMIS having a plugin include reach data

  • Enhancements to NMIS for health metrics for plugins and implementing ifNodeCollectable

Collect Improvements

  • Only run services polling on nodes which have service polling defined

  • Improvement to ifAdminStatus change detection to handle ifIndex changes. New event (Interface IfAdminStatus Changed)

  • Adding 300 seconds to node reset detection for odd Linux SNMP sysUpTime

  • Added collect_wmi/snmp properties to allow disabling either protocol (snmp_enabled, wmi_enabled). Also, added the migration script migrate_collectpatch to support this properties, added support for SNMPv3. Added an script test in admin/upgrade_node_collect

  • Optimisation to stop running services if no service polling required on a node

  • Improved debugging for a single node, runEscalate is skipped for a single node collect

  • Add a new configuration option sort_due_nodes, to order nodes based on last_time_poll

  • Improving the polling so that nodes do not get polled too frequently

  • Added escalate_poll_cycle to control when the escalate cycle is run

Admin Tools

  • Added new utility script admin/import_zenoss_backup to import devices from Zenoss device dump file (Example in admin/samples/zenbatchdump_sample.txt )

  • model_discovery to automatically determine which existing modelling exists

  • alcatel_interface_discovery admin tool has been deprecated

Other Fixes and Improvements

  • Updated printCrontab to split the running of collect and services to separate cycles. Also include additional info for run=escalate

  • fix in node.pl to show type=metrics, group=network graphs

  • Added support to preserve -- when lowercase names are wanted

  • Improve the debug output. Remove passwords from logs

  • Added support for Common-event.nmis event model policy handling for custom node roles

  • Added Node Count per poll cycle count

  • Added handling for new types of loopback interfaces called lo0

  • The minimum length of time that a graph can show has been reduced from 30 min to 10 min, this allows to see shorter periods with better details

  • Updated polling summary to include demoted nodes and pingonly nodes,  show stats for demoted and non snmp polled nodes

  • CVAR support for threshold controls

  • Add interface description in custom test alerts

  • Fix issue with notifications for elements with /

  • Update the installed modules detection

  • Added support for Crowd Auth

  • Add support for env_temp with the new configuration item env_temp_legacy_support

NMIS8 installer may stop at CPAN attempt to install WWW::Mechanize on Redhat6 or Centos6

Should the install of NMIS8 stop at error

  • t/local/back.t ........................... 1/47 Error GETing http://[::1]:44662/: Can't connect to ::1:44662 (Bad hostname '::1') at t/local/back.t line 53.

please install WWW::Mechanize using the following command then re-attempt install of NMIS8:

cpan notest install WWW::Mechanize # or if the above doesn't work, type cpan hit ENTER KEY and then from with cpan process then exit the cpan process: notest install WWW::Mechanize exit



NMIS 8.6.8G

This maintenance release of NMIS was published on 10 Jul 2019.

Highlights for the 8.6.8G release

  • Various modelling improvements
    updates for Arista and Arris devices,  new models for Dell switches, updated and extended modelling of the Host Resources MIB (with plugin),
    adjustments for Cisco Catalyst IOSXE devices, Nexus CBQoS modelling, substantially improved modelling for Net-SNMP devices.

  • The node selection, scheduling of operations and process management have been reworked extensively, and NMIS spreads the load now better and more evenly.

    • the new config options nmis_max_nodes_per_collect_cycle ,   nmis_max_nodes_per_services_cycle  and nmis_max_nodes_per_update_cycle  were added to optionally limit how many nodes should be considered at most for an operation cycle.

    • the new commandline option abort_after=N  instructs NMIS to abort unstarted collect operations for candidate nodes after N seconds (default: 60).
      Any candidate nodes that remain unhandled that long after start up are skipped (and the fact is logged), so that the next NMIS invocation can safely pick candidate nodes without overlap.

  • Misbehaving Service test programs are now handled more consistently.
    All exit codes outside of the required range of 0-100 are logged and interpreted as the service being down.

  • The webtest example Service test program now supports sending custom headers using -H.

  • some minor GUI improvements related to node editing

  • JSON event logging was extended

  • NMIS' data export now includes both average and max data from rrd.

  • The NMIS selftest is now less likely to produce false positives and runs faster.

  • The default data retention periods for historic events has been reduced to 7 days.

  • Various installer improvements, improved robustness and reduced number of repeat questions

  • A new stateless event named 'Interface ifAdminStatus Changed'  is raised when an interface's administrative status changes

  • The installer now handles Debian 10 (Buster), and NMIS works correctly on Debian 8 to 10.

  • Various minor adjustments and fixes for the NMIS graphs for better display with recent rrdtool versions

  • Robustness improvements for WMI, for pinging with restrictive firewalls and for backup polling

  • NMIS now supports Authentication using the host's PAM infrastructure.

  • Escalation emails for failing or restored services now include the service's Description if present.

  • Various other bug fixes and improvements

NMIS 8.6.7G

This is a maintenance release of NMIS, which was published on 17 Aug 2018.

Highlights for the 8.6.7G release

  • The node dashboard widgets and graph drill-ins now load substantially faster,
    and graph files are now cached for up to 60 seconds (configurable via graph_file_maxage config item).

  • SNMP Uptime counter wrapping (at 497 days) is now handled more robustly.

  • The logic for group display/exclusion in the GUI widgets was repaired,
    and now only nodes belonging to the configured groups (in group_list) are displayed.
    (Like before, all active nodes are handled by the polling and event engine, regardless of group membership.)

  • The handling of node resets and long-term unpollable nodes is now more robust and reliable.

  • The Polling Failover feature was extended to provide more fine-grained events and node states.

  • NMIS now provides a configurable rule for acceptable node names (using the config item node_name_rule) which is consistely applied everywhere;
    the shipped default rule was also relaxed and now allows letters, numbers, space, underscore, hyphen and dot.

  • NMIS now supports WMI polling in windows domains more robustly and username and domain can be provided in multiple formats.

  • Various modelling improvements, e.g. the nocollect directive is now supported in systemHealth model sections.

  • New and improved devices support for Nexus 7k, Adtran, Cisco, Arista, Mikrotik, Netvanta, PulseSecure, Juniper.

  • admin/node_admin.pl now supports bulk export and import..

  • Various robustness improvements, e.g. in fpingd.pl, more fine-grained logging, more flexible and precise polling candidate timing decisions.

NMIS 8.6.7G Scaling Tip

If you are installing NMIS 8.6.7G and you have a busy server, then it is important that you modify the cron entry for NMIS and change it.

The setting is found in /etc/cron.d/nmis and the default is this:

* * * * * root /usr/local/nmis8/bin/nmis.pl type=collect mthread=true ; /usr/local/nmis8/bin/nmis.pl type=services mthread=true

This should be changed to:

*/1 * * * * root /usr/local/nmis8/bin/nmis.pl type=collect mthread=true */2 * * * * root /usr/local/nmis8/bin/nmis.pl type=services mthread=true

It is important to note that the NMIS polling engine had an overhaul in NMIS 8.6.6 and NMIS 8.6.7 to improve how parallel threads were handled and that polling was kept up to date.

So when NMIS starts a poll every 1 minute, not all nodes will be polled, it will poll as many as it can in that time and then leave the others for the next poll cycle, this has the result of spreading the polling (and load on the server) out over 5 minutes. If you are not getting all nodes polled in 5 minutes, you will need more threads (and enough memory).

If you are polling many nodes every 1 minute, then you will need to size the server accordingly.

NMIS 8.6.6G

This maintenance release of NMIS was published on 1 Jun 2018.

Highlights for the 8.6.6G release

  • New feature for multi-homed hosts: Polling Failover.
    NMIS can now ping and (SNMP-)collect data from a node using either its (primary) host or the new host_backup address.

  • The internal model cache now reacts to changes to configuration and model files automatically and immediately.
    In older versions model-related updates (e.g. threshold values) were only activated on the next type=update operation.

  • Improved resiliency for Nodes.nmis
    This version of NMIS automatically removes invalid data from Nodes.nmis (e.g. caused by a faulty manual edit of the file).
    If such a problem is detected, a message with the reason of the removal is logged and written to STDERR, and the problematic record is removed completely.

  • The CSV export functionality was reworked for improved robustness and convenience.

    • The  CSV file names now include the full graph heading and index/item/interface, besides the node name (as before).

    • For summarisation periods other than 'best' NMIS can now optionally add "min" and "max" columns for each data set for the relevant period.

    • The logic for summarisation period start and end now aligns the periods better with the data from the RRD files.

NMIS 8.6.5G

This is a maintenance release of NMIS and was published on 23 May 2018.

Highlights for the 8.6.5G release

  • New summarisation features and improvements for CSV exporting of graph data
    CSV Exporting was made more robust, reports errors better and now produces safe comma-separated output (was tab-separated before).
    NMIS can now optionally export CSV data in summarised form (before it always returned the highest available precision data from the RRD file):
    The 'Adv. Export' page lets you choose from a number of typical summarisation periods (see config option export_summarisation_periods), or pick a custom period.
    The exported data will contain averaged values for the requested summarisation periods.

  • Improved robustness for service monitoring
    Misconfigured services now show up as 'down' with an explanatory text (previously such were skipped silently). Tempfiles are not left behind anymore.

  • Improved modelling for Nexus devices

  • The example SNMPD configuration shipped with NMIS was adjusted for better security.

  • NMIS-to-Opmantek Single-Sign-On robustness improvements
    A number of problematic corner-cases were resolved, but please note that the necessary changes are unfortunately not backwards-compatible:
    Using cookie flavour 'omk' (and appropriate secret) in NMIS 8.6.5G will only work with Opmantek application releases newer than 22.5.2018. Until at least one sufficiently new release is installed, OMK-NMIS cookie sharing will not happen and separate logins will be required.

NMIS 8.6.4G

This is a maintenance release of NMIS which primarily fixes a few regressions. This release was published on 23 Mar 2018.

Highlights for the 8.6.4G release

  • Users with numeric privilege level 2 and above (ie. from operator- to guest-level) were not able to login in 8.6.3G. This is now fixed.

  • The newest version of the NMIS support tool is included, which collects more relevant information when investigating particular nodes.

  • The Node Configuration GUI widget no longer auto-refreshes under any circumstances.

  • For non-collectable but pingable nodes NMIS now defaults to model "Generic" which means a minimum of graphs can be displayed for such a node.

  • For nodes that have been non-collectable for a long time NMIS now offers to attempt collect operations only once every 24 hours;
    the installer asks whether this configuration option demote_faulty_nodes should be activated or not.

  • Past non-recurring Scheduled Outages are now automatically removed.

  • The installer now defaults to installing all typical (but technically optional) perl modules that NMIS can use for authentication and authorization.
    Most specifically this includes Net::LDAP.

  • For a number of computationally expensive operations (e.g. thresholds, metrics, escalate) NMIS now ensures that no more than one instance is running at any time.

  • Various robustness improvements and minor bug fixes.

NMIS 8.6.3G

This is a maintenance release of NMIS, which does nevertheless introduce a number of new features. This release was published on 25 Jan 2018.

Highlights for the 8.6.3G release

  • NMIS now supports Single Sign On with other Opmantek Applications, both for applications on a single system as well as across a whole organisation.
    The SSO section of the User Management page describes the relevant configuration options and adjustments.

  • Various robustness and scalability improvements for fpingd and summary operations.
    A dead or faulty fpingd no longer causes internal pinging for all nodes, only for the ones where no or only stale fpingd data is available; fpingd is now also restarted in such cases.
    For type=summary operations NMIS now ensures that at most one such operation is running at any time.

  • Robustness improvements in dealing with nodes with long-standing problems
    Nodes that have never been polled successfully are now automatically demoted to a reduced polling frequency:
    polling is attempted only once per day, and a log message about this demotion is logged (once per hour).
    Once such a node becomes pollable, polling resumes at normal frequencies.

  • Polling for multiple selected groups and nodes is now possible.
    You may pass nmis.pl type=collect any number of group and node arguments, all of which will be handled inclusively;
    For example, nmis.pl type=collect group=groupA group=Bgroup node=nodeC node=nodeD will try to poll all members of the two given groups and the two given nodes (subject to polling frequency policies, of course).

  • Usability improvements for the input data validation system, which now support the validation criteria 'int-or-empty' and 'float-or-empty' which accept empty inputs.
    Weird node names (ie. containing spaces or various special characters)  are now also handled more consistenly and robustly.

  • Various installer improvements and updates
    If SE Linux is active, the installer now requires an explicit confirmation input to continue.
    The availability of certain packages on Debian 8, 9 and Ubuntu 16.04 is now handled more consistenly.
    The optional pre-upgrade backup now includes more relevant files, ie. cron, log rotation and apache configs.
    The permissions for log rotation files are now adjusted to appease recent versions of logrotate.

  • SNMP-sourced service tests are now displayed with the time of last check.

  • The NMIS GUI now masks SNMP v3 passwords and similar credentials.
    The node exception display now works better for SNMP v3 nodes.

  • Improved robustness for NMIS runtime exceedence tests.
    NMIS now depends on a newer version of the Proc::ProcessTable module, which does never produce undesirable extra outputs that could create events with very weirdly named nodes (ie. lots of numbers after the node name).

  • Purging of old data now optionally includes old HTML reports and JSON config log entries

  • Some modelling improvements for Huawei devices

  • and, as always, various minor bug fixes and improvements.

NMIS 8.6.2G

This is a major new release of NMIS which introduces a number of new features, most notably variable frequency polling, schedulable outage windows and data validation for tables.

Highlights for the 8.6.2G release

  • NMIS now supports Variable Frequency Polling policies, configurable separately for each device.
    This feature can also lower the overall load substantially as not all node poll cycles need to start at the same 5 min boundary anymore.
    The minimum frequency is 60 seconds for SNMP/WMI collecting; possibly a bit lower for pinging (depending on your number of nodes).

  • It is now possible to schedule recurring outage or maintenance windows with very flexible candidate and period selectors,
    and NMIS now displays outages when in effect and raises outage open/close events for external consumption.

  • All NMIS tables now support configurable input data validation; this include the main system configuration.
    Additionally, numeric values for interface speeds and threshold rising/falling levels are now also enforced in the GUI.

  • Audit logging
    All outage manipulations are now logged with timestamps and originator in the new audit.log logfile; this will be extended for other important activities in future versions.

  • Various Model fixes, including corrected threshold-rising/falling 'Normal' level logic, repairs to model policy evaluation.

  • Configurable Context Links
    NMIS now supports a per-node-configurable (and -nameable) 'Context Link' which is shown for a node's primary view.
    The node's collect and update graph is now also reachable from the Diagnostics menu in that view.

  • New and improved models for Juniper, Netscreen ScreenOS, HP ProCurve, MikroTik, Alcatel, Fortinet devices, also for Cisco, Lucent and Zyxel DSLAM devices

  • Installer robustness and efficiency improvements
    NMIS 8.6.2G was verified to install cleanly on CentOS 6 and 7, Debian 8 and 9 and Ubuntu LTS 16.04.1.
    On minimal installations without perl, the installer now offers to bootstrap itself by installing  the perl core first.

  • and heaps of bug fixes and minor improvements

NMIS 8.6.1G

This maintainance release of NMIS was published on 21 December 2016.

Highlights for the 8.6.1G release

  • new and improved device support for Juniper, Meraki, VMware ESXi, MikroTik, Alcoma, Trango, Ubquiti, Radwin Wireless and others

  • Better support for devices whose SNMP agent supports snmpEngineTime.

  • NMIS can now perform threshold check operations during each node's collect operation, instead of separately at the end the collect run.
    This can be controlled using the option threshold_poll_node (default: true). Performing the threshold check with the node is normally more efficient and faster.

  • Disk thresholding was updated to work better with different disk sizes.

  • Thresholding for WMI-sourced data now works more reliably.

  • NMIS device modelling now works better with devices that have unreliable, changing object indices, and RRD database file naming can now access more variables for dynamic expansion.

  • Various installer robustness improvements

  • The node_admin tool now supports more fine-grained operations like act=set, and also node renaming combined with property setting in a single action.

  • The Basic Setup dialog now warns about an unsafe default authentication secret key.

  • NMIS now interoperates better with Nagios plugins, especially remote plugins accessed through NRPE (via the check_nrpe plugin).
    NMIS can now collect, store and display multiple 'performace values' that a Nagios plugin might return.

  • Logging verbosity levels and precision were improved.

  • Service checks using SAPI scripts and port connectivity checks using nmap honor timeouts now, and log more relevant information.

  • various graph improvements (e.g. better legends for interface utilization and disk usage graphs),