Bug 1886973 - Local storage operator doesn't include correctly populate LocalVolumeDiscoveryResult in console
Summary: Local storage operator doesn't include correctly populate LocalVolumeDiscover...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Storage
Version: 4.6
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
: 4.7.0
Assignee: Christian Huffman
QA Contact: Chao Yang
URL:
Whiteboard:
: 1887008 1947868 (view as bug list)
Depends On: 1887008
Blocks: 1904577
TreeView+ depends on / blocked
 
Reported: 2020-10-09 20:57 UTC by Jeremy Poulin
Modified: 2021-04-14 12:24 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Cause: The LocalVolumeDiscoveryResult object appeared in the management console, implying that these could be manually defined. Consequence: This internal object was displayed and providing confusing information. Fix: The LocalVolumeDiscoveryResult type has been flagged as an internal object, preventing it from being displayed. To view local disks, users should navigate to Compute -> Nodes -> Select Nodes -> Disks instead. Result: The LocalVolumeDiscoveryResult is no longer displayed in the management console as expected.
Clone Of:
: 1904577 (view as bug list)
Environment:
Last Closed: 2021-02-24 15:24:43 UTC
Target Upstream Version:


Attachments (Terms of Use)
Screencap of LocalStorageVolumeDiscoveryResult (208.86 KB, image/png)
2020-10-09 20:57 UTC, Jeremy Poulin
no flags Details
Diskmaker pod log (21.56 KB, text/plain)
2020-10-09 21:01 UTC, Jeremy Poulin
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Github openshift local-storage-operator pull 177 0 None closed Bug 1886973: Hide the LocalVolumeDiscoveryResult CRD from the UI 2021-01-28 18:20:04 UTC
Red Hat Product Errata RHSA-2020:5633 0 None None None 2021-02-24 15:25:21 UTC

Description Jeremy Poulin 2020-10-09 20:57:03 UTC
Created attachment 1720349 [details]
Screencap of LocalStorageVolumeDiscoveryResult

Description of problem:
I've set up a KVM based cluster with an addition 20Gb raw block and 20Gb ext-4 volume added added to the cluster. From there I've kicked off a discovery.

Interestingly, the logs of the discovery pod *do* see the devices, and an oc describe lists them out properly:

$ oc describe LocalVolumeDiscoveryResult/discovery-result-jpoulin-ocp-rdl8k-worker-0-z8jh8
 
    Device ID:  /dev/disk/by-id/virtio-1
    Fstype:     
    Model:      
    Path:       /dev/vdc
    Property:   Rotational
    Serial:     
    Size:       21474836480
    Status:
      State:    Available
    Type:       disk
    Vendor:     0x1af4
    Device ID:  /dev/disk/by-id/virtio-2
    Fstype:     
    Model:      
    Path:       /dev/vdd
    Property:   Rotational
    Serial:     
    Size:       21474836480
    Status:
      State:              Available
    Type:                 disk
    Vendor:               0x1af4
  Discovered Time Stamp:  2020-10-09T20:25:35Z

However, the devices are missing from the console report:
See attacked img.


Version-Release number of selected component (if applicable):
local-storage-operator.4.6.0-202010061132.p0

Comment 1 Jeremy Poulin 2020-10-09 21:01:44 UTC
Created attachment 1720351 [details]
Diskmaker pod log

Comment 2 Jeremy Poulin 2020-10-09 21:03:10 UTC
Full output of the relevant oc describe:
---
Name:         discovery-result-jpoulin-ocp-rdl8k-worker-0-z8jh8
Namespace:    openshift-local-storage
Labels:       discovery-result-node=jpoulin-ocp-rdl8k-worker-0-z8jh8
Annotations:  <none>
API Version:  local.storage.openshift.io/v1alpha1
Kind:         LocalVolumeDiscoveryResult
Metadata:
  Creation Timestamp:  2020-10-09T20:25:28Z
  Generation:          1
  Managed Fields:
    API Version:  local.storage.openshift.io/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:labels:
          .:
          f:discovery-result-node:
        f:ownerReferences:
          .:
          k:{"uid":"d2ac4b4f-db18-4075-af0c-2c4980fd7695"}:
            .:
            f:apiVersion:
            f:kind:
            f:name:
            f:uid:
      f:spec:
        .:
        f:nodeName:
      f:status:
        .:
        f:discoveredDevices:
        f:discoveredTimeStamp:
    Manager:    diskmaker
    Operation:  Update
    Time:       2020-10-09T20:25:28Z
  Owner References:
    API Version:     local.storage.openshift.io/v1alpha1
    Kind:            LocalVolumeDiscovery
    Name:            auto-discover-devices
    UID:             d2ac4b4f-db18-4075-af0c-2c4980fd7695
  Resource Version:  2131352
  Self Link:         /apis/local.storage.openshift.io/v1alpha1/namespaces/openshift-local-storage/localvolumediscoveryresults/discovery-result-jpoulin-ocp-rdl8k-worker-0-z8jh8
  UID:               5878d533-aec2-452c-a6e7-c2d2a51eb2a4
Spec:
  Node Name:  jpoulin-ocp-rdl8k-worker-0-z8jh8
Status:
  Discovered Devices:
    Device ID:  
    Fstype:     
    Model:      
    Path:       /dev/vda1
    Property:   Rotational
    Serial:     
    Size:       4194304
    Status:
      State:    Available
    Type:       part
    Vendor:     
    Device ID:  
    Fstype:     ext4
    Model:      
    Path:       /dev/vda2
    Property:   Rotational
    Serial:     
    Size:       402653184
    Status:
      State:    NotAvailable
    Type:       part
    Vendor:     
    Device ID:  
    Fstype:     crypto_LUKS
    Model:      
    Path:       /dev/vda4
    Property:   Rotational
    Serial:     
    Size:       31804341760
    Status:
      State:    NotAvailable
    Type:       part
    Vendor:     
    Device ID:  /dev/disk/by-id/virtio-1
    Fstype:     
    Model:      
    Path:       /dev/vdc
    Property:   Rotational
    Serial:     
    Size:       21474836480
    Status:
      State:    Available
    Type:       disk
    Vendor:     0x1af4
    Device ID:  /dev/disk/by-id/virtio-2
    Fstype:     
    Model:      
    Path:       /dev/vdd
    Property:   Rotational
    Serial:     
    Size:       21474836480
    Status:
      State:              Available
    Type:                 disk
    Vendor:               0x1af4
  Discovered Time Stamp:  2020-10-09T20:25:35Z
Events:                   <none>

Comment 6 Jan Safranek 2020-10-13 14:48:25 UTC
It looks like /dev/vdc / vdd is in LocalVolumeDiscoveryResult, just the console does not show it.

Comment 7 ygaponen 2020-10-13 18:16:44 UTC
Same behaviour I can observe for x86 libvirt cluster. In the console I can see DiscoveredDevices: Unsupported, however LocalVolumeDiscoveryResult has information about disks.

# oc describe localvolumediscoveryresult -n openshift-local-storage   discovery-result-test1-qt7qq-worker-0-hchz9
Name:         discovery-result-test1-qt7qq-worker-0-hchz9
Namespace:    openshift-local-storage
Labels:       discovery-result-node=test1-qt7qq-worker-0-hchz9
Annotations:  <none>
API Version:  local.storage.openshift.io/v1alpha1
Kind:         LocalVolumeDiscoveryResult
Metadata:
  Creation Timestamp:  2020-10-13T17:57:07Z
  Generation:          1
  Managed Fields:
    API Version:  local.storage.openshift.io/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:labels:
          .:
          f:discovery-result-node:
        f:ownerReferences:
          .:
          k:{"uid":"5ba79722-2945-461f-a20a-3ee667cbd181"}:
            .:
            f:apiVersion:
            f:kind:
            f:name:
            f:uid:
      f:spec:
        .:
        f:nodeName:
      f:status:
        .:
        f:discoveredDevices:
        f:discoveredTimeStamp:
    Manager:    diskmaker
    Operation:  Update
    Time:       2020-10-13T17:57:09Z
  Owner References:
    API Version:     local.storage.openshift.io/v1alpha1
    Kind:            LocalVolumeDiscovery
    Name:            auto-discover-devices
    UID:             5ba79722-2945-461f-a20a-3ee667cbd181
  Resource Version:  193042
  Self Link:         /apis/local.storage.openshift.io/v1alpha1/namespaces/openshift-local-storage/localvolumediscoveryresults/discovery-result-test1-qt7qq-worker-0-hchz9
  UID:               f3b9ead6-bc90-47b9-b12c-e3b8c013f83a
Spec:
  Node Name:  test1-qt7qq-worker-0-hchz9
Status:
  Discovered Devices:
    Device ID:
    Fstype:     ext4
    Model:
    Path:       /dev/vda1
    Property:   Rotational
    Serial:
    Size:       402653184
    Status:
      State:    NotAvailable
    Type:       part
    Vendor:
    Device ID:
    Fstype:     vfat
    Model:
    Path:       /dev/vda2
    Property:   Rotational
    Serial:
    Size:       133169152
    Status:
      State:    NotAvailable
    Type:       part
    Vendor:
    Device ID:
    Fstype:
    Model:
    Path:       /dev/vda3
    Property:   Rotational
    Serial:
    Size:       1048576
    Status:
      State:    NotAvailable
    Type:       part
    Vendor:
    Device ID:
    Fstype:     crypto_LUKS
    Model:
    Path:       /dev/vda4
    Property:   Rotational
    Serial:
    Size:       31674318336
    Status:
      State:              NotAvailable
    Type:                 part
    Vendor:
  Discovered Time Stamp:  2020-10-13T17:57:09Z
Events:                   <none>


Cluster version 4.6.0-0.nightly-2020-10-03-051134
local-storage-operator.4.6.0-202010061132.p0

Comment 8 ygaponen 2020-10-13 18:30:57 UTC
Same Unsupported value I can see for x86 and s390x libvirt clusters at the LocalVolumeDiscovery Details page for NodeSelector.

Comment 10 Jeremy Poulin 2020-10-14 15:35:05 UTC
I really don't think this should be closed with *at least* a fix for how the user interface is presented to the customer.

Why would I look for updates in the side nave Compute -> Nodes -> Select Nodes -> Disks when there are explicit UI fields available in the LocalVolumeDiscoveryResult objects that were created as a result of kicking off the LocalVolumeDiscovery instance?

It's extremely counter-intuitive to deploy an instance of this via the console and expect to see the results in the sibling API, only to find that the information is being tracked in an entirely different location.

Instead of "Not Supported", could we show the customer a link to the Disks page mentioned above?
Otherwise, is it possible to hide the LocalVolumeDiscoveryResult API from the UI entirely. It seems like it's not providing any useful information and drawing the user's attention away from where the information is actually available.

Comment 15 Christian Huffman 2020-10-27 17:13:03 UTC
*** Bug 1887008 has been marked as a duplicate of this bug. ***

Comment 17 Chao Yang 2020-11-04 05:51:57 UTC
No localvolumediscoveryresult API in console now.

Comment 20 errata-xmlrpc 2021-02-24 15:24:43 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 (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

Comment 21 Christian Huffman 2021-04-14 12:24:36 UTC
*** Bug 1947868 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.