Telemetry Streaming from OpenBMC

Justin Thaler thalerj at us.ibm.com
Fri Sep 20 04:19:12 AEST 2019


Hi All,

I’m not sure if this should be a separate note or not. I've also not been 
able to join this workgroup, however all of my concerns appear to have 
been discussed. . I’ve started reviewing some of the telemetry 
conversation for openbmc, and have taken some time review the wiki and 
have also reviewed the document proposal. Based on my experience, there’s 
two core use cases: telemetry streams, and telemetry reports. The Reports 
are a collect and analyze later method, typically used for system 
profiling, job profiling, and analytics of data center usage over time. 
For the streams, these are being used to allow the data center to react to 
changes across the managed systems, like increasing water flow, cooling 
capacity, or power throttling systems to prevent over subscriptions on the 
data center’s power grid.

I’d like to ask about the streams since the report portion of things seems 
exceptionally well covered. With previous versions of openBMC I was able 
to leverage websockets to get updates on sensor values on change. This 
turned out to be pretty network efficient and is able to drive 1/s updates 
on all the sensors in a system. It doesn’t have an impact on other 
monitoring services either. That being said, I’ve been reading through the 
redfish telemetry and eventing services and was looking for some help and 
or guidance. For reference I was looking at this document 
https://www.dmtf.org/sites/default/files/standards/documents/DSP0266_1.6.0.pdf 
.

If I do subscribe using SSE and telemetry reports, it seems to be setup to 
get a full set of readings over time and only send when the report is 
complete. Can I use these reports to get updates every second? If I 
subscribe to an endpoint, I also seem to get the entire endpoint and I’m 
not sure if this would meet a goal of getting the large cluster (300 
systems) worth of updates at a data rate of less than 20 Mb/s. I would 
appreciate any advice on leveraging redfish standards to stream sensor 
readings for an OpenBMC system. If I'm not able to use redfish, I'd be 
happy to elaborate more on the websocket method I used with the phosphor 
webserver and discuss options for the current/future BMC versions 
leveraging bmcweb. 

Thanks,
Justin Thaler
Senior RAS Engineer



More information about the openbmc mailing list