Kentik NMS Agent

The following topics cover the use of Kentik's NMS agent:

The Kentik NMS agent collects key metrics on the availability, health, and performance of your network infrastructure.

Note: The following articles provide information about other aspects of Kentik's Network Monitoring System:
- NMS Overview
- NMS Setup
- NMS Dashboard
- Metrics Explorer
- NMS Devices
- NMS Interfaces
- Query Assistant


About Kentik NMS Agent

Purpose: Discover and collect NMS device data using the Kentik NMS Agent.
Benefits: Facilitate efficient installation and deployment through Docker or package managers.
Use Cases: Enable network analysis with the collection of SNMP data.
Relevant Roles: Network Engineer

The Kentik NMS agent (a.k.a. "Kentik Ranger") is a collector that supports Kentik's Network Monitoring System by collecting data from monitored devices, using protocols such as Simple Network Management Protocol (SNMP) and Streaming Telemetry, and delivering it to the Kentik platform.

Note: For details on using Streaming Telemetry for Kentik NMS, see NMS via Streaming Telemetry.


NMS Agent Requirements

Requirements for the Kentik NMS agent are covered in the topics below.

Hardware Requirements

Hardware requirements vary depending on the expected metrics per second (MPS), which in turn vary depending on the factors including the polling interval and the number of interfaces on the device (two interfaces like an AP vs. 500 interfaces like a chassis). Based on our experience with pilot customers, an MPS range of 27 to 41 per device, averaging around 30, can be expected at a typical polling interval of one minute.

Based on the above, we currently recommend a conservative hardware allocation of one core and 4 gigs of RAM for every 7,500 MPS. We will update this guideline when we have further information from testing at scale. To fully optimize your hardware footprint, we suggest testing in your specific environment.

Connectivity Requirements

Repository access depends on whether you elect to deploy a Docker image or a Linux service:

  • Docker: You’ll need access to Docker Hub to download the image from kentik/kagent:latest.
  • Linux service: If you elect to deploy as a Linux service, no additional network access is required. The setup process uses cURL, so the host will need cURL installed.

The deployed instances will also need to be able to initiate traffic to the following:

  • (or for Europe) using TLS on TCP 443
  • Your monitored network devices using SNMP on UDP 161
  • Your monitored network devices using ICMP (Echo)

NMS Download and Install

Download and installation of the NMS agent is handled in the Kentik portal (with an assist from Terminal) using the NMS Setup Wizard. Both Docker and Linux deployment are supported.


NMS Agent Configuration

The Kentik NMS agent is configured upon deployment to discover devices within a given IP range for Kentik to monitor. The configuration takes place as part of working through the NMS Setup Wizard. After discovery is complete you can choose which of the found devices to monitor (see NMS Discovery).

Note: For details on using Streaming Telemetry for Kentik NMS, see NMS via Streaming Telemetry.


Custom Device Profiles

Kentik maintains a set of device profiles that allow us to normalize metrics and metadata from a wide variety of device vendors and models. If any of your devices aren't currently supported we can — with your help — create a profile specifically for those devices. To do so we use the output of a common Linux utility called snmpwalk, which we ask you to run against the device (which must be SNMP-enabled).

The syntax to run snmpwalk depends on the SNMP version enabled on the device:

  • SNMP v1 or v2c:
    snmpwalk --hexOutputLength=0 -ObentUx -v2c -c community X.X.X.X.1 > device-model.walk
  • SNMP v3:
    snmpwalk --hexOutputLength=0 -ObentUx -v3 -l authPriv -u username -a SHA -A passphrase -x AES -X passphrase X.X.X.X.1 > device-model.walk

The above commands include the following arguments:

  • -v: The specific SNMP version (e.g. 1, 2c, or 3).
  • -c (versions 1 and 2c only): The SNMP community configured on the device.
  • X.X.X.X: The IP address of the device you are polling (replace with the actual IP).
  • -A (v3 only): The authentication protocol passphrase.
  • -X (v3 only): The privacy protocol passphrase.
  • .1: Following the IP address with ".1" tells snmpwalk to poll all available MIBs on the device (walk the full tree).
    Note: If the device in question carries a full internet routing table, each prefix will show up in multiple MIB trees, in which case you may instead need to walk selected trees and then combine the output. For more information, contact Customer Support.
  • device-model.walk: The name of the file to which the output from snmpwalk will be saved. Specify "device" as the vendor and "model" as the model of the device on which snmpwalk was run. For example, if the device is a Cisco ASR9001 then name the file “cisco-asr-9001.walk.”

Once you've run snmpwalk, provide the output file to your Kentik Customer Support team so we can use it to create a custom profile for your device.


NMS Custom Metrics

Kentik NMS enables you to include arbitrary custom metrics in the data that will appear in the portal's Metrics Explorer module. The metrics are submitted via HTTP using a request whose body is made up of data in the InfluxDB Line Protocol, which is the format used by the Kentik NMS agent. While client libraries are available for a wide variety of languages (see, it’s also easy to output this format with basic string handling (but be careful about string quoting if you need to handle arbitrary data in string tags).

The URL to which custom metrics may be directed varies depending on the Kentik cluster associated with your account:

  • Kentik US cluster:
  • Kentik EU cluster:

Authentication uses two custom headers:

  • X-CH-Auth-Email: The email address associated with a Kentik user, which is found at the top of the User menu at the right of the main portal navbar.
  • X-CH-Auth-API-Token: The API token associated with a Kentik user, which is found at the bottom of the User Information pane of the portal's User Profile page (access via User menu).

- A User-Agent header is not required, but using it for something descriptive will help with troubleshooting.
- Tags or fields sent with a custom measurement will not age out of Metrics Explorer; they will stay listed indefinitely. In the future we may add ways to tidy obsolete tags and fields as well as to attach metadata such as display names and units.

© 2014- Kentik
In this article: