SONiC系统管理17
增强系统监控
SONiC系统支持对系统电源、风扇等基础部件的管理,CPU通过专用的硬件接口可以读取当前电源模块配置数量、工作状态等信息,CPU也可以通过硬件接口读取风扇的相关信息。在SONiC系统的一种老的实现方法中,系统通过CLI接收到读取电源风扇信息之后在直接从硬件获取相关信息并反馈给CLI接口,这种实现方式的缺点是在某些情况下反馈速度比较慢。
为了提高反馈速度,针对电源和风扇的管理,SONiC系统新的实现方式借鉴了光模块的管理机制,通过专用的daemon,提前周期性地将硬件信息读取到数据库中,对CLI命令的响应通过直接读取数据库中存储的内容来进行,大大提高了响应速度。
设备状态数据库中关于风扇和电源的相关信息如下:
Fan Table
; Defines information for a fan
key = FAN_INFO|fan_name ; information for the fan
; field = value
presence = BOOLEAN ; presence of the fan
model = STRING ; model name of the fan
serial = STRING ; serial number of the fan
status = BOOLEAN ; status of the fan
change_event = STRING ; change event of the fan
direction = STRING ; direction of the fan
speed = INT ; fan speed
speed_tolerance = INT ; fan speed tolerance
speed_target = INT ; fan target speed
PSU Table
; Defines information for a psu
key = PSU_INFO|psu_name ; information for the psu
; field = value
presence = BOOLEAN ; presence of the psu
model = STRING ; model name of the psu
serial = STRING ; serial number of the psu
status = BOOLEAN ; status of the psu
change_event = STRING ; change event of the psu
fan = STRING ; fan_name of the psu
led_status = STRING ; led status of the psu