Fujitsu iRMC S4 Firmware 9.0x or later can now support Redfish (iRMC S5 supports Redfish from the initial version). However when you update iRMC S4 firmware from an older version like 8.86F to a new version like 9.08F, Redfish is enabled, but the user access setting is set to "No Access" by default. Therefore no users can access Redfish API endpoints remotely even by the admin user.
The access mode setting can be changed from "No Access" to other modes like "Administrator" in iRMC S4 Web GUI. You just need to go to User Management --> iRMC S4 User --> select a user --> Check "Redfish Enabled" and change RedfishRole from "No Access" to other role, and click Apply to save the changes.
For those who want to automate these manual steps by a script, you can do that with the Fujitsu SCCI commands. The SCCI code for enabling Redfish is "0x1D80", and the code for the Redfish role is "0x1D81".
For example, if you want to enable Redfish for the admin user with the "Administrator" role, create a request XML file like this:
$ vi enable_redfish_and_set_admin_role.xml <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <CMDSEQ> <!-- 0: disable, 1: enable --> <CMD Context="SCCI" OC="ConfigSpace" OE="1D80" OI="0" Type="SET"> <DATA Type="xsd::integer">1</DATA> </CMD> <!-- 0: no access, 1: operator, 2: administrator, 3: read only --> <CMD Context="SCCI" OC="ConfigSpace" OE="1D81" OI="0" Type="SET"> <DATA Type="xsd::integer">2</DATA> </CMD> </CMDSEQ>
Then send the file to iRMC config interface.
$ curl -u admin:admin --data @enable_redfish_and_set_admin_role.xml http://<iRMC IP address>/config <?xml version="1.0" encoding="UTF-8"?> <Status> <Value>0</Value> <Severity>Information</Severity> <Message>No Error</Message> </Status>
If you don't want to create a separate XML file, you can embed the SCCI request in your shell script.
$ vi enable_redfish.sh #!/bin/sh iRMCUSR=admin iRMCPWD=admin iRMCIP=192.168.10.3 curl -u ${iRMCUSR}:${iRMCPWD} http://${iRMCIP}/config \ --data @- <<EOF <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <CMDSEQ> <CMD Context="SCCI" OC="ConfigSpace" OE="1D80" OI="0" Type="SET"> <DATA Type="xsd::integer">1</DATA> </CMD> <CMD Context="SCCI" OC="ConfigSpace" OE="1D81" OI="0" Type="SET"> <DATA Type="xsd::integer">2</DATA> </CMD> </CMDSEQ> EOFThen run it.
$ sh ./enable_redfish.sh <?xml version="1.0" encoding="UTF-8"?> <Status> <Value>0</Value> <Severity>Information</Severity> <Message>No Error</Message> </Status>
Now you can use Redfish API for iRMC S4 remotely.
$ curl -k -u admin:admin https://<iRMC IP address>/redfish/v1
No comments:
Post a Comment