华为云Stack ManageOne运维侧告警可定制化接入深入探析
告警模型相比资源和性能模型要简单,所有告警共用一套告警模型,包括Alarm和AlarmStaticInfo,上报协议为SNMP,推荐使用SNMPV3认证。
AlarmStaticInfo:告警静态信息,即是告警类型,包括告警ID、告警名称、描述、发生原因和修复建议等,上报到ManageOne后可作为筛选条件过滤告警类型;
Alarm:告警详情,包括流水号、告警ID、发生时间、告警来源、影响业务标识等,主要描述具体发生的告警对象的详细内容。
由于第三方开发的驱动和ManageOne之间要相互发送和接收SNMP数据,因此驱动需要启动SNMP Trap接收ManageOne的指令,并且需要把SNMPV3的对接和认证信息注册到ManageOne中,
告警主要涉及4个流程,分别是心跳检测、告警操作、静态信息查询和告警数据上报,详细如下:
1、心跳检测:驱动注册后,ManageOne会定时按照注册的认证信息发送心跳报文,驱动需求在收到心跳后立即回复,ManageOne由此判断驱动为正常运行状态。
a)ManageOne的SNMP客户端发送心跳请求到驱动SNMPTrap后,驱动立即返回消息已收到;
b)驱动再用SNMP客户端发送一条心跳信息到ManageOne;
2、告警操作:告警操作主要包括告警同步和清除告警,由ManageOne主动下发命令到驱动
a)告警同步,本操作的目的时如果有告警漏报的情况,可以手动触发此操作,驱动SNMPTrap收到数据后立即返回成功表示已收到数据,然后由下一步驱动批量上报满足条件的告警,补齐漏报的数据;
b)告警清除,用户通过ManageOne在页面点击清除告警,驱动SNMPTrap收到数据后可调用底层系统清除告警,然后响应操作已成功;
3、告警数据上报:主动向ManageOne的SNMPTrap上报告警详细数据
a)实时上报,当底层系统出现实时告警后,驱动立即上报到ManageOne;
b)同步上报,当接收到上一步的告警同步任务后,驱动查询满足条件的告警,然后批量上报告警到ManageOne;
告警数据与资源通过nativeMeDn进行关联,nativeMeDn与资源上报对象的nativeId的值保持一致即可。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
{
"csn" : "500001" ,
"synSerialNo" : 10001 ,
"alarmId" : "DRIVER_DEMO_TEST" ,
"alarmGroupId" : "DEMO_TEST" ,
"alarmName" : "DRIVER_DEMO_TEST_NAME" ,
"category" : "ALARM" ,
"severity" : "CRITICAL" ,
"occurUtc" : 1577382018000 ,
"nativeMeDn" : "A0000000000000000000000000002" ,
"moi" : "path=/opt,user=admin,msg=用于测试驱动上报功能" ,
"originSystem" : "127.0.0.1" ,
"clearCategory" : "ADAC" ,
"serviceAffectedType" : 1 ,
"additionalInformation" : "errorMsg=驱动测试告警" ,
"meName" : "驱动DEMO" ,
"moc" : "测试程序" ,
"identifier" : 0 ,
"clearUtc" : 0 ,
"probableCause" : "驱动DEMO发送的测试告警"
}
|
4、静态信息查询:ManageOne手动告警详细数据后会检查告警静态信息中是否有此告警类型,如果没有,则会向驱动发起一条查询数据
a)驱动接收到ManageOne发送的静态查询数据,驱动根据传递的alarmId,上报完整的静态告警信息。
- 点赞
- 收藏
- 关注作者
评论(0)