By default Simple Network Management Protocol (SNMP) uses User Datagram Protocol (UDP) Transport Layer protocol to report node health individually on the Elastic Cloud Storage (ECS). Sometimes the use of Transmission Control Protocol (TCP) which is a session-based protocol for SNMP. This is required for specific security or operational concerns requiring TCP protocol to be used.
The following can setup to allow TCP and UDP communications over SNMP:
- Add the agentaddress udp:161,tcp:161 to allow for TCP and UDP protocols on the node SNMP agents:
Command:
# sudo vi /etc/snmp/snmpd.conf
Example:
# sec.name source community
com2sec local localhost secret42
com2sec cust1_sec 192.0.2.0/24 public
com2sec cust1_sec 192.0.2.0/24 public
com2sec cust1_sec 0.0.0.0/0 happyplace
com2sec snmpv3_user 198.51.100.0/24 public
com2sec snmpv3_user 198.51.100.0/24 public
agentaddress udp:161,tcp:161
...
- Restart the SNMP agent on the nodes to take the new changes in the configuration:
Command:
# sudo systemctl restart snmpd
# sudo systemctl status snmpd
Example:
admin@node1:~> sudo systemctl restart snmpd
admin@node1:~> sudo systemctl status snmpd
snmpd.service - LSB: Net-SNMP agent
Loaded: loaded (/etc/init.d/snmpd; bad; vendor preset: disabled)
Active: active (running) since Fri 2020-05-01 15:16:52 UTC; 20min ago
Docs: man:systemd-sysv-generator(8)
Process: 80940 ExecStop=/etc/init.d/snmpd stop (code=exited, status=0/SUCCESS)
Process: 80948 ExecStart=/etc/init.d/snmpd start (code=exited, status=0/SUCCESS)
Tasks: 1 (limit: 512)
Memory: 4.5M
CPU: 802ms
CGroup: /system.slice/snmpd.service
80959 /usr/sbin/snmpd -r -A -LF n /var/log/net-snmpd.log -p /var/run/snmpd.pid
May 01 15:16:52 ecsnode1.gslabs.lab.emc.com systemd[1]: Starting LSB: Net-SNMP agent...
May 01 15:16:52 node1 snmpd[80948]: Starting snmpd..done
May 01 15:16:52 node1 systemd[1]: Started LSB: Net-SNMP agent.
- Confirm that the changes took place and SNMP is listening on TCP and UDP protocols:
Command:
# sudo netstat -lntup | grep snmp
Example:
admin@node1:~> sudo netstat -lntup | grep snmp
tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 80959/snmpd
tcp 0 0 0.0.0.0:161 0.0.0.0:* LISTEN 80959/snmpd
udp 0 0 0.0.0.0:161 0.0.0.0:* 80959/snmpd
This change to the SNMP agents on the nodes can be done during the agent deployments in KB ECS: How to setup SNMP v2c and v3 monitoring support