Bug 2003035

Summary: Inserted/WriteProtected attributes are not writable with Redfish for Supermicro hardware
Product: OpenShift Container Platform Reporter: Andy Bartlett <andbartl>
Component: Bare Metal Hardware ProvisioningAssignee: Iury Gregory Melo Ferreira <imelofer>
Bare Metal Hardware Provisioning sub component: ironic QA Contact: ppeereb <paulpeereboom>
Status: CLOSED ERRATA Docs Contact:
Severity: high    
Priority: high CC: dcain, dcain, imelofer, janders, jgeorge, jima, lshilin, mifiedle, paulpeereboom, rpattath, tsedovic
Version: 4.8Keywords: Triaged
Target Milestone: ---Flags: janders: needinfo-
janders: needinfo-
Target Release: 4.8.z   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-11-11 20:12:09 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1986238    
Bug Blocks:    

Description Andy Bartlett 2021-09-10 10:31:42 UTC
Description of problem:

My customer has run into this issue whilst building a new Baremetal cluster:

Currently Ironic/sushy always attempt to set "Inserted" and "WriteProtected" properties in the payload of Redfish InsertMedia call to BMC. According to https://www.dmtf.org/sites/default/files/standards/documents/DSP0268_2021.1.pdf, these fields are optional and doing this is not necessary. The current behavior is breaking the baremetal installation in our situation:

ERROR Error: could not inspect: could not inspect node, node is currently 'inspect failed' , last error was 'Failed to inspect hardware. Reason: unable to start inspection: HTTP POST https://xx.xx.xx.xx/redfish/v1/Managers/1/VirtualMedia/CD1/Actions/VirtualMedia.InsertMedia returned code 400. Base.v1_4_0.GeneralError: The property Inserted is not in the list of valid properties for the resource. Extended information: [{'MessageId': 'Base.1.4.PropertyUnknown', 'Severity': 'Warning', 'Resolution': 'Remove the unknown property from the request body and resubmit the request if the operation failed.', 'Message': 'The property Inserted is not in the list of valid properties for the resource.', 'MessageArgs': ['Inserted'], 'RelatedProperties': ['Inserted']}, {'MessageId': 'Base.1.4.PropertyUnknown', 'Severity': 'Warning', 'Resolution': 'Remove the unknown property from the request body and resubmit the request if the operation failed.', 'Message': 'The property WriteProtected is not in the list of valid properties for the resource.', 'MessageArgs': ['WriteProtected'], 'RelatedProperties': ['WriteProtected']}]' 
ERROR                                              
ERROR   on ../../tmp/openshift-install-188611083/masters/main.tf line 1, in resource "ironic_node_v1" "openshift-master-host": 
ERROR    1: resource "ironic_node_v1" "openshift-master-host" { 


I can manually insert the media:
curl -X POST https://xx.xx.xx.xx/redfish/v1/Managers/1/VirtualMedia/CD1/Actions/VirtualMedia.InsertMedia -d '{"Image": "http://xx.xx.xx.xx:8080/rhcos-48.84.202106301921-0-openstack.x86_64.iso", "UserName": "<user>", "Password":"<password>"}' -k -u <user>:<password> | python3 -m json.tool
{
    "Accepted": {
        "code": "Base.v1_4_0.Accepted",
        "Message": "Successfully Accepted Request. Please see the location header and ExtendedInfo for more information.",
        "@Message.ExtendedInfo": [
            {
                "MessageId": "SMC.1.0.OemIndicateDriveLedAcceptedMessage",
                "Severity": "Ok",
                "Resolution": "No resolution was required.",
                "Message": "Please also check Task Resource /redfish/v1/TaskService/Tasks/1 to see more information.",
                "MessageArgs": [
                    "/redfish/v1/TaskService/Tasks/1"
                ],
                "RelatedProperties": [
                    "VirtualMediaMountAccepted"
                ]
            }
        ]
    }
}


Hardware: Supermicro SuperServer 1029U-TN12RV
https://www.supermicro.com/en/products/system/1U/1029/SYS-1029U-TN12RV.cfm

Found a related bug: https://storyboard.openstack.org/#!/story/2009085

Version-Release number of selected component (if applicable):

Baremetal OCP 4.8.10

How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Dmitry Tantsur 2021-09-10 10:49:51 UTC
The upstream fix is https://opendev.org/openstack/sushy/commit/b76050c5c162e78572976dd4b199cab389d1d2d5, probably hasn't reached 4.8 yet.

Comment 2 Iury Gregory Melo Ferreira 2021-09-10 10:51:54 UTC
Hi Andy,

We have a fix for this in 4.9 (but the bz is not verified https://bugzilla.redhat.com/show_bug.cgi?id=1986238 so we can't backport to 4.8.z yet)
I will check with my team if there is a way we can move forward to have the fix in 4.8 asap.

Comment 3 Andy Bartlett 2021-09-10 14:21:53 UTC
Thanks Lury we have passed this info on to the customer.

Regards,

Andy

Comment 4 ppeereb 2021-09-16 08:51:01 UTC
Hi lury,
Can confirm that the fix works in 4.9 tested with:
Hardware: Supermicro SuperServer 1029U-TN12RV
https://www.supermicro.com/en/products/system/1U/1029/SYS-1029U-TN12RV.cfm

Regards,
Paul Peereboom

Comment 5 Iury Gregory Melo Ferreira 2021-09-16 09:45:04 UTC
Hi Paul,

Thank you very much for testing the 4.9 in the Super Micro machine!
I've already asked people in the 4.9 bz to see if we can now mark the bug as verified since you were able to test, so we can backport to 4.8

Comment 9 Iury Gregory Melo Ferreira 2021-09-23 10:43:54 UTC
Hi Andy, when you have a chance can you test 4.8.13 ? (it contains the fix for virtual media in SuperMicro)

Thank you!

Comment 10 Andy Bartlett 2021-09-23 13:05:24 UTC
Hi lury,
 I have asked Paul (who posted above) if he could test it next week, we will let you know how it goes.

Regards,

Andy

Comment 11 Iury Gregory Melo Ferreira 2021-09-23 13:12:04 UTC
Awesome, thanks!

Comment 26 Mike Fiedler 2021-10-21 13:06:01 UTC
@

Comment 32 Roshni 2021-10-28 17:02:23 UTC
@andbartl and @imelofer would you be able to move this bug to either Verified or Closed so that it does not get included in the future Openshift z-stream release advisories.

Comment 35 Iury Gregory Melo Ferreira 2021-11-01 09:14:35 UTC
Hi  Roshni,

Jacob will check if Dave tested 4.8.z so we can mark this bug as verified.

Comment 38 Dave Cain 2021-11-01 13:05:55 UTC
I can confirm that the WriteProtected / Inserted Media error went away in 4.8 based on my experiences in https://bugzilla.redhat.com/show_bug.cgi?id=1986238#c71.  There are still issues with the complete end to end flow, but they are being looked at (and addressed) in different BZs:

https://bugzilla.redhat.com/show_bug.cgi?id=2011626
https://bugzilla.redhat.com/show_bug.cgi?id=2009555

Comment 39 Iury Gregory Melo Ferreira 2021-11-01 13:33:01 UTC
Thanks Dave!

Can you share what 4.8 version you used?

@andbartl do you mind if we mark this as verified? Since Dave tested I think it's ok (like he mentioned there are other SMC issues but not related to the fact that the attributes are not writable.)

Comment 40 Dave Cain 2021-11-01 13:35:32 UTC
4.8.13 for me.

Comment 44 errata-xmlrpc 2021-11-11 20:12:09 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (OpenShift Container Platform 4.8.19 bug fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:4109