Set up your network devices so they send network data to New Relic.
Prerequisites and supported SNMP versions
New Relic prerequisites
- A New Relic account. Don't have one? Sign up for free! No credit card required.
- For manual install (guided install inputs them automatically):
- A New Relic account ID.
- A New Relic license key.
Linux host prerequisites
- Docker installed in a Linux host.
- SSH access to the Docker host, with the ability to launch new containers.
SNMP devices prerequisites
Configured network devices for SNMP polling from the ktranslate docker container. Some samples of basic SNMP configurations can be found here:
Network security prerequisites
Direction | Source | Destination | Ports | Protocol |
---|---|---|---|---|
Outbound | Docker host |
| 443 | TCP |
Outbound | Docker host | New Relic Metric API
US Endpoint: | 443 | TCP |
Outbound | Docker host | New Relic Log API
US Endpoint: | 443 | TCP |
Outbound | Docker host | Target devices for SNMP polling | 161 (default) | UDP |
Inbound | Source devices for SNMP Trap data | Docker host | 1620 (default) | UDP |
Supported SNMP versions
Our network monitoring container supports all major versions of SNMP (v1, v2c, and v3). Additionally, SNMP v3 has support for the following authentication and privacy settings:
Set up SNMP data monitoring in New Relic
Go to one.newrelic.com and click Add more data.
Scroll down until you see Network monitoring and click SNMP.
Follow the steps in New Relic.
one.newrelic.com > Add more data > Network monitoring > SNMP to set up SNMP data monitoring.
Collection of SNMP traps
By default the agent will listen for incoming SNMP traps on UDP port 1620 and it is not necessary to run a dedicated agent for trap collection as all SNMP polling agents will run this passive listener.
If you need to use the standard port of UDP 162 for your SNMP traps, the following steps will need to be followed for your container.
- Update your
snmp-base.yaml
config file to change the listening IP from127.0.0.1
to0.0.0.0
. (This allows the Docker container to listen on thedocker0
interface for external packets.)
trap: listen: 0.0.0.0:1620 community: hello version: "" transport: ""
- Enable port forwarding during your
docker run...
command to redirect packets sent to UDP 162 on the host into UDP 1620 on the container:
$docker run -d --name ktranslate-snmp --restart unless-stopped -p 162:1620/udp \> -v `pwd`/snmp-base.yaml:/snmp-base.yaml \> -e NEW_RELIC_API_KEY=$YOUR_NR_LICENSE_KEY \>kentik/ktranslate:v2 \> -snmp /snmp-base.yaml \> -nr_account_id=$YOUR_NR_ACCOUNT_ID \> -metrics=jchf \> -tee_logs=true \> -service_name=snmp \> nr1.snmp