IPMI and Redfish support in openbmc Linux

Tanous, Ed ed.tanous at intel.com
Fri Jul 13 03:57:29 AEST 2018


There have been quite a few changes to bmcweb in the last month, and some of the dependencies didn’t get synchronized like we expected them to.

The good news is that we’ve merged quite a few patches, including a number of new Redfish schemas, as well as the patch that moves bmcweb over to sdbusplus and beast.  Moving forward, we are going to deprecate boost-dbus, as sdbusplus now has a superset of functionality at this point in time.  The error you’re seeing is caused by boost-dbus not being updated to the interfaces used in boost 1.66, which was merged with the last yocto patch.

The bad news is that some of the sdbusplus patches for adding unit tests and fixing bugs has caused product regressions, and are holding up the merge of the recipe bump.  Because of the order in which the recipes got merged into upstream, bmcweb builds require the below recipe bump for the moment.

https://gerrit.openbmc-project.xyz/#/c/11456/

Checking out that patchset should let you build bmcweb against tip, and we’ll work on getting the regression squashed and fixes merged into mainline, hopefully shortly.

-Ed

From: Henbin Chang [mailto:henbinchang at gmail.com]
Sent: Wednesday, July 11, 2018 10:55 PM
To: OpenBMC Maillist <openbmc at lists.ozlabs.org>; Tanous, Ed <ed.tanous at intel.com>
Subject: Re: IPMI and Redfish support in openbmc Linux

Hi Ed,

I upgraded my openbmc REPO with the Github and used the latest bmcweb (commit id: 7885954af734ae61a2e1358740f84ad39248f18d.)

But I got the below error for compiling.
...
6: error: 'async_result_init' is not a member of 'boost::asio::detail'
     boost::asio::detail::async_result_init<
                          ^~~~~~~~~~~~~~~~~
/common/code_ref/s2600wf_openbmc/openbmc/build/tmp/work/armv6-openbmc-linux-gnueabi/boost-dbus/1.0+gitAUTOINC+2ec8037525-r0/git/include/dbus/connection_service.hpp:84:26: note: suggested alternative: 'async_result_helper'
     boost::asio::detail::async_result_init<
                          ^~~~~~~~~~~~~~~~~
                          async_result_helper
/common/code_ref/s2600wf_openbmc/openbmc/build/tmp/work/armv6-openbmc-linux-gnueabi/boost-dbus/1.0+gitAUTOINC+2ec8037525-r0/git/include/dbus/connection_service.hpp:85:23: error: expected primary-expression before ',' token
         MessageHandler, void(boost::system::error_code, message)>
                       ^
/common/code_ref/s2600wf_openbmc/openbmc/build/tmp/work/armv6-openbmc-linux-gnueabi/boost-dbus/1.0+gitAUTOINC+2ec8037525-r0/git/include/dbus/connection_service.hpp:85:25: error: expected primary-expression before 'void'
         MessageHandler, void(boost::system::error_code, message)>
...

Suppose this is because the boost-dbus is too old.

Do you any suggestion?

Thanks.


2018-07-12 8:05 GMT+08:00 Henbin Chang <henbinchang at gmail.com<mailto:henbinchang at gmail.com>>:
Thank your support.

It did work after I used the default port 18080.
curl -k https://10.99.241.79:18080/redfish/v1

I had to indicate the account/password if I would like to access other node.
curl -k https://root:0penBmc@10.99.241.79:18080/redfish/v1/Managers/

Bmcweb will launch under one of two ports. If launched manually, it will launch under port 18080. If launched via systemd, it will use socket activation to launch under port 883 (to avoid conflicting with the existing phosphor-rest server). Another thing to recognize is that there is a debug html interface built into the redfish interface, so the easiest way to test is to use a web browser, and you will get the graphical interface with clickable links. Try pointing a web browser at https://10.99.241.79:18080/redfish/v1 and see if that works. PS, the trailing backslash is unimportant. Bmcweb is designed to strip the trailing backslash for you in either case, so redfish/v1 is the same as redfish/v1/ -Ed


2018-07-10 16:39 GMT+08:00 Ratan Gupta <ratagupt at linux.vnet.ibm.com<mailto:ratagupt at linux.vnet.ibm.com>>:

Hi Henbin,

Can you try "curl -b cjar -k https://<ip>:18080/redfish/v1<https://%3cip%3e:18080/redfish/v1>"?

Seems default port is 18080

https://github.com/openbmc/bmcweb/blob/master/src/webserver_main.cpp#L24

Regards

Ratan Gupta



On Tuesday 10 July 2018 10:06 AM, Henbin Chang wrote:
H Ed,
I built bmcweb into my machine, and check the 'bmcweb' daemon was started up.

ps aux | grep bmcweb
  919 root       0:00 /usr/bin/bmcweb
 8662 root       0:00 grep bmcweb

But I couldn't access Redfish API through the below command.
curl -b cjar -k https://10.99.241.79/redvish/v1/

Could you help provide the suggestion?

Thanks.
-Henbin.

There are several servers that support Redfish, and we have a working group that meets weekly to talk through technical issues each week, which you're welcome to attend. The only one checked into the upstream project is bmcweb. If you need help getting it started, I'm happy to help.
https://github.com/openbmc/bmcweb




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20180712/88463d84/attachment-0001.html>


More information about the openbmc mailing list