本节将详细介绍基于系统事件的 SNMP 陷阱通知。
以下是通过 AVI-NETWORKS-MIB.my 公开的 NSX Advanced Load Balancer 配置对象:
NSX Advanced Load Balancer 控制器
服务引擎
虚拟服务
NSX Advanced Load Balancer 控制器
AviControllerEntry ::= SEQUENCE { aviControllerIndex Integer32, aviControllerUUID SnmpAdminString, aviControllerName DisplayString, aviControllerAddrType InetAddressType, aviControllerAddr InetAddress, aviControllerStatus INTEGER } aviControllerUUID : Unique UUID of the Avi Controller VM aviControllerName : Name assigned to the Avi Controller (defaults to the IP address of the Avi Controller) aviControllerAddr : Management v4 IP address of the Avi Controller aviControllerStatus : Runtime status of the Avi Controller
服务引擎
AviServiceEngineEntry ::= SEQUENCE { aviServiceEngineIndex Integer32, aviServiceEngineUUID SnmpAdminString, aviServiceEngineName DisplayString, aviServiceEngineAddrType InetAddressType, aviServiceEngineAddr InetAddress, aviServiceEngineStatus INTEGER } aviServiceEngineUUID : Unique UUID of the Avi Service Engine VM aviServiceEngineName : Name of the Service Engine VM assigned in the Virtual Infrastructure aviServiceEngineAddr : Management v4 IP address of the Avi Service Engine VM aviServiceEngineStatus : Runtime status of the Avi Service Engine
虚拟服务
AviVirtualServiceEntry ::= SEQUENCE { aviVirtualServiceIndex Integer32, aviVirtualServiceUUID SnmpAdminString, aviVirtualServiceName DisplayString, aviVirtualServiceAddrType InetAddressType, aviVirtualServiceAddr InetAddress, aviVirtualServiceStatus INTEGER } aviVirtualService UUID : Unique UUID of the virtual service aviVirtualServiceName : Name assigned to the virtual service aviVirtualServiceAddr : Virtual IP (v4) address of the virtual service aviVirtualServiceStatus : Runtime status of the virtual service
通知(陷阱)
控制器集群主节点可以根据系统事件发出 SNMP 陷阱通知。要使 SNMP 陷阱通知到达外部 SNMP 服务器,应完成以下配置:
由于主节点角色可能会不时进行更改,因此应将外部 SNMP 服务器配置为允许来自集群内三个控制器中任一控制器的流量,也就是说,所有三个地址都应位于 SNMP 服务器的允许访问列表中。
应配置防火墙规则,以允许将来自三个集群成员中任一成员的 IP 地址的 UDP 流量发送到 SNMP 陷阱服务器上的端口 162。
与 NSX Advanced Load Balancer 控制器 集群、NSX Advanced Load Balancer 服务引擎、虚拟服务和 SSL 证书过期相关的系统事件可以归类到各自的 SNMP 陷阱中。其他系统事件使用通用 SNMP 陷阱通知生成陷阱。
只有为以下事件生成的警示才会被输入到特定的 SNMP 陷阱中。
事件 |
SNMP 陷阱 |
---|---|
VS_DOWN、VS_UP |
aviVirtualServiceStatusChanged |
SE_DOWN、SE_UP |
aviServiceEngineStatusChanged |
CONTROLLER_NODE_JOINED、CONTROLLER_NODE_LEFT |
aviControllerStatusChanged |
SSL_CERT_EXPIRE |
aviSSLCertificateExpired |
所有其他警示 |
aviSystemAlert |
aviSystemAlert
是一般陷阱通知,可以与 NSX Advanced Load Balancer 控制器 生成的任何系统事件相关联。NSX Advanced Load Balancer 当前在 SNMP 陷阱通知中支持大型陷阱负载(最多 4096 字节)。在此之前,SNMP 陷阱负载长度限制为 256 字节。
查看陷阱服务器配置文件
在下面的窗口中,IP 地址为 10.10.24.96 的控制器通过响应 https://10.10.24.96/api/snmptrapprofile
HTTP 请求来显示其 v2 和 v3 陷阱服务器配置文件。
{ "count": 2, "results": [ { "uuid": "snmptrapprofile-aa815f66-2190-4ff4-a20f-0c9fe41deff4", "url": "https://10.10.24.96/api/snmptrapprofile/snmptrapprofile-aa815f66-2190-4ff4-a20f-0c9fe41deff4", "tenant_ref": "https://10.10.24.96/api/tenant/admin", "name": "SnmpTrap-2", "trap_servers": [ { "version": "SNMP_VER2", "ip_addr": { "type": "V4", "addr": "10.10.0.235" }, "community": "<sensitive>" } ], "_last_modified": "1509670261022622" }, { "uuid": "snmptrapprofile-2e28610a-e100-4de7-ae92-20bd7a4ee3b7", "url": "https://10.10.24.96/api/snmptrapprofile/snmptrapprofile-2e28610a-e100-4de7-ae92-20bd7a4ee3b7", "tenant_ref": "https://10.10.24.96/api/tenant/admin", "name": "SnmpTrap-1", "trap_servers": [ { "version": "SNMP_VER3", "ip_addr": { "type": "V4", "addr": "10.10.3.1" }, "user": { "username": "snmpv3trapuser", "auth_type": "SNMP_V3_AUTH_MD5", "priv_passphrase": "<sensitive>", "auth_passphrase": "<sensitive>", "priv_type": "SNMP_V3_PRIV_AES" } } ], "_last_modified": "1509670185831024" } ] }
aviControllerStatusChanged
aviControllerStatusChanged NOTIFICATION-TYPE OBJECTS { aviControllerStatus, aviOperStatusReason } STATUS current DESCRIPTION "This alert is generated when Controller status Changes." ::= { aviNotificationsObjects 1 }
当 NSX Advanced Load Balancer 控制器 状态发生更改时,将生成此陷阱。
以下 Controller-state-change 系统事件可能会启动 aviControllerStatusChange
陷阱:
Controller-Node-Left
Controller-Node-Joined
对于上述每个 NSX Advanced Load Balancer 控制器 状态更改事件,都有一个默认的系统警示配置和相应的默认警示操作。
aviServiceEngineStatusChanged
aviServiceEngineStatusChanged NOTIFICATION-TYPE OBJECTS { aviObjectURL, aviServiceEngineStatus, aviOperStatusReason } STATUS current DESCRIPTION "This alert is generated when Service Engine status Changes." ::= { aviNotificationsObjects 2 }
当 NSX Advanced Load Balancer SE 状态发生更改时,将生成此陷阱。
以下 NSX Advanced Load Balancer SE 状态更改事件可能会启动 aviServiceEngineStatusChanged
陷阱:
SE 启动
SE 关闭
对于上述每个 NSX Advanced Load Balancer SE 状态更改事件,都有一个默认的系统警示配置。
aviVirtualServiceStatusChanged
aviVirtualServiceStatusChanged NOTIFICATION-TYPE OBJECTS { aviObjectURL, aviVirtualServiceStatus, aviVirtualServiceStatusReason } STATUS current DESCRIPTION "This alert is generated when virtual service status changes." ::= { aviNotificationsObjects 3 }
当虚拟服务状态发生更改时,将生成此陷阱。
以下虚拟服务状态更改事件可能会启动 aviVirtualServiceStatusChanged
陷阱:
VS 关闭
VS 启动
aviSSLCertificateExpired
aviSSLCertificateExpired NOTIFICATION-TYPE OBJECTS { aviObjectURL, aviSSLCertificateInfo } STATUS current DESCRIPTION "This alert is generated when SSL Certificate Expires." ::= { aviNotificationsObjects 4 }
SSL 证书过期时会生成此陷阱。虚拟服务 Ssl-Cert-Expire
事件可以启动 aviVirtualServiceStatusChanged
陷阱。
aviSystemAlert
aviSystemAlert NOTIFICATION-TYPE OBJECTS { aviSystemAlertInfoDesc } STATUS current DESCRIPTION "This is a generic system alert" ::= { aviNotificationsObjects 5 }
这是一个一般陷阱通知。它可以与 NSX Advanced Load Balancer 控制器 生成的任何系统事件相关联。
要为 NSX Advanced Load Balancer 控制器 状态更改事件配置 SNMP 陷阱,请参阅配置基于 SNMP 事件的陷阱。