Nexus9の運用設定3(SNMP/SNMPTRAP)
Nexus9監視運用設定と出力
運用フェーズで使いそうなコマンド出力を記載する。
※仮想NX-OSなので参考まで。
以下の仮想labのLinux管理サーバからNexusのLoアドレスを宛先にして監視運用する。
前提条件として監視サーバからNexusのLoアドレスまでNW到達性があること。
- 1_ログ出力
- 2_NTP同期
- 3_SNMP/SNMPTRAP★
- 4_user権限追加
- 5_ファイル操作
- 6_基本コマンド
- 7_NX-OSとIOS比較
snmptrapサーバインストール設定~起動
net-snmp インストール
[root@localhost ~]# dnf -y install net-snmp net-snmp-utils (省略) Upgraded: net-snmp-libs-1:5.8-14.el8_2.1.x86_64 Installed: net-snmp-1:5.8-14.el8_2.1.x86_64 net-snmp-utils-1:5.8-14.el8_2.1.x86_64 mariadb-connector-c-3.0.7-1.el8.x86_64 mariadb-connector-c-config-3.0.7-1.el8.noarch net-snmp-agent-libs-1:5.8-14.el8_2.1.x86_64 lm_sensors-libs-3.4.0-21.20180522git70f7e08.el8.x86_64 Complete!
設定ファイルバックアップ
[root@localhost ~]# cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.bk
設定編集 以下、元の設定
com2sec notConfigUser default public group notConfigGroup v1 notConfigUser group notConfigGroup v2c notConfigUser view systemview included .1.3.6.1.2.1.1 view systemview included .1.3.6.1.2.1.25.1.1 access notConfigGroup "" any noauth exact systemview none none syslocation Unknown (edit /etc/snmp/snmpd.conf) syscontact Root <root@localhost> (configure /etc/snmp/snmp.local.conf) dontLogTCPWrappersConnects yes
以下、追加
com2sec LocalNetwork 172.16.0.0/12 public group LocalGroup v1 LocalNetwork group LocalGroup v2c LocalNetwork view AllView included .1 access LocalGroup "" any noauth exact AllView none none
SNMP Trap を Local6 で Syslog に出力するよう以下設定変更
[root@localhost ~]# vi /etc/sysconfig/snmptrapd OPTIONS="-Ls6 -p /var/run/snmptrapd.pid" ←追加
以下ファイルに追記
[root@localhost ~]# vi /etc/snmp/snmptrapd.conf disableauthorization yes ←追加 syslogのmessagesに出力する設定らしい
trapのsyslog転送設定
[root@localhost ~]# vi /etc/rsyslog.conf # SAVE snmptrap.log local6.* /var/log/snmptrapd.log ←追加
syslogサーバ再起動
[root@localhost ~]# systemctl restart rsyslog.service
net-snmp有効化
[root@localhost ~]# systemctl enable snmpd Created symlink /etc/systemd/system/multi-user.target.wants/snmpd.service /usr/lib/systemd/system/snmpd.service.
snmpd/snmptrapd起動
[root@localhost ~]# systemctl start snmpd [root@localhost ~]# systemctl start snmptrapd
起動確認
[root@localhost ~]# systemctl status snmpd Active: active (running) ←となっていればOK [root@localhost ~]# systemctl status snmptrapd Active: active (running) ←となっていればOK
Nexus9k側設定
※snmp-server user設定はuser設定時に自動作成される
snmp-server host 172.16.0.1 traps version 1 public snmp-server host 172.16.0.1 use-vrf default snmp-server host 172.16.0.1 source-interface loopback0 snmp-server community public group network-operator
snmpサーバからOID指定でMIBget
※以下MIBgetできたOK
[root@localhost ~]# snmpwalk -c public -v 1 172.16.0.2 .1.3.6.1.2.1.1.1 SNMPv2-MIB::sysDescr.0 = STRING: Cisco NX-OS(tm) nxos.7.0.3.I7.7.bin, Software (nxos), Version 7.0(3)I7(7), RELEASE SOFTWARE Copyright (c) 2002-2019 by Cisco Systems, Inc. Compiled 8/28/2019 15:00:00
Nexus9kでIFをshutしてtrapを飛ばしてみる
Nexus9k(config-if)# shutdown Nexus9k(config-if)# no shutdown
snmpサーバ側でtrapログ確認
※trapがsyslogに転送されているのが確認できたOK
[root@localhost log]# tail -f snmptrapd.log Nov 3 13:43:05 localhost snmptrapd[14553]: 2020-11-03 13:43:05 40.40.40.40(via UDP: [40.40.40.40]:62203->[172.16.0.1]:162) TRAP, SNMP v1, community public#012#011SNMPv2-SMI::enterprises.9.9.276 Enterprise Specific Trap (1) Uptime: 19:46:10.77#012#011IF-MIB::ifIndex.436208640 = INTEGER: 436208640#011IF-MIB::ifAdminStatus.436208640 = INTEGER: down(2)#011IF-MIB::ifOperStatus.436208640 = INTEGER: down(2)#011IF-MIB::ifName.436208640 = STRING: Ethernet1/3#011IF-MIB::ifType.436208640 = INTEGER: ethernetCsmacd(6) Nov 3 13:43:05 localhost snmptrapd[14553]: 2020-11-03 13:43:05 40.40.40.40(via UDP: [40.40.40.40]:62203->[172.16.0.1]:162) TRAP, SNMP v1, community public#012#011IF-MIB::linkDown Link Down Trap (0) Uptime: 19:46:10.98#012#011IF-MIB::ifIndex.436208640 = INTEGER: 436208640#011IF-MIB::ifAdminStatus.436208640 = INTEGER: down(2)#011IF-MIB::ifOperStatus.436208640 = INTEGER: down(2)#011IF-MIB::ifDescr.436208640 = STRING: Ethernet1/3#011IF-MIB::ifAlias.436208640 = STRING: