Created attachment 1714602 [details] In Maint, screenshot Created attachment 1714602 [details] In Maint, screenshot Created attachment 1714602 [details] In Maint, screenshot Description of problem: Unschedulable used to always be displayed when Node is Ready status, it now only showes when in Maintenance mode and status = False Version-Release number of selected component (if applicable): How reproducible: 100% Steps to Reproduce: 1. Install OCP 4.6 with CNV 2.5 (which has NMO) 2. Compute->Nodes->3dot kebab button on master-0-0 (click) 3. Compute->Nodes->master-0-0, view all Unscheduable status missing 4. Test again by putting node in maintenance Actual results: Unschedulable status field only showing when true Expected results: Expect Unscheduable status field exist and show false in normal Ready mode Additional info:
Created attachment 1714603 [details] Not in maintenance
By default resource properties are not displayed when in falsy value. I am not sure if the case of 'unschedulable' should be treated differently.
The same behavior seems to apply even without CNV/NMO installed, so this may not be Metal3/CNV-specific. If I remember correctly (I don't have a bare metal cluster available to test) the "Mark as Unschedulable" action in base OCP turns into "Start maintenance" with CNV/NMO installed which includes marking the node as unschedulable. I'll double check this with Console stakeholders at a meeting next week, but I believe Details pages of the Console generally try to reflect what's inside the resource's YAML. When a node is marked as unschedulable via the UI, I see this in its YAML: spec: ... unschedulable: true but when it's schedulable I notice that the key/value pair disappears entirely from the YAML instead of being changed to `unschedulable: false`. Maybe the way the UI updates the YAML changed which is why the behavior is different now, or maybe removing/hiding the field was intentional since seeing the double negative `Unschedulable: False` all the time could be a little weird/confusing. I'll follow up.
Waiting on an updated design from UX before this issus can be consider.
After discussing this with Console stakeholders we've agreed on a new design that: 1. Removes the `Unschedulable: True` field from the Details page entirely (its information is duplicated by what's shown in the node's `Status`) 2. Updates the node's `Status` to include a yellow warning triangle icon while unschedulable, a popover explaining what that means, and an action to make the node schedulable again These adjustments should resolve this bug and make it easier to notice, understand, and manage unscheduled nodes. Here's the design (2 screens): https://marvelapp.com/prototype/f57h3d4/screen/73102504
Looks great!
@mlammon , the bug is targeted to 4.7.0, and the fix is in 4.7 payload.
The node status now includes the scheduling information also. Version: 4.7.0-0.nightly-2020-10-14-101154 Steps to verify: 1. login to console which has a node scheduling disabled 2. navigate to PageSideBar>Compute>nodes and click on the node and go to details tab 3. Notice that the status has scheduling disabled warning 4. Now make the node scheduling enabled # oc adm uncordon <node> 5. Note the status is changed to ready 6. delete the node from the cluster and notice that it goes to not ready state. attached screen shots
Created attachment 1721601 [details] notReady status
Created attachment 1721602 [details] ready status
Created attachment 1721603 [details] schedulingDisabled
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 (Moderate: OpenShift Container Platform 4.7.0 security, bug fix, and enhancement 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/RHSA-2020:5633