Bug 1688658

Summary: The InstallMode of the Descheduler operator should NOT be `AllNamespaces`
Product: OpenShift Container Platform Reporter: Jian Zhang <jiazha>
Component: NodeAssignee: ravig <rgudimet>
Status: CLOSED ERRATA QA Contact: Jian Zhang <jiazha>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.1.0CC: aos-bugs, chezhang, dyan, jfan, jokerman, mmccomas, rgudimet, schoudha, sjenning
Target Milestone: ---   
Target Release: 4.2.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-10-16 06:27:58 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:

Description Jian Zhang 2019-03-14 07:40:24 UTC
Description of problem:
The InstallMode of the descheduler operator is "AllNamespaces", but it doesn't support watching all namespaces.

Version-Release number of selected component (if applicable):
Current version: 4.0.0-0.nightly-2019-03-13-233958

How reproducible:
always

Steps to Reproduce:
1. Install the OCP 4.0 via the installer.
2. Install the Descheduler Operator on the Web console. It will be installed in the "openshift-operators" project.
3. Create a descheduler resource in another project called "test", like below:
apiVersion: descheduler.io/v1alpha1
kind: Descheduler
metadata:
  name: example-2
  namespace: test
spec:
  schedule: "*/1 * * * ?"       
  strategies: 
    - name: "lownodeutilization"
      params:
       - name: "cputhreshold"
         value: "10"
       - name: "memorythreshold"
         value: "20"
       - name: "memorytargetthreshold"
         value: "30"

Actual results:
Only the Descheduler kind generated, no corresponding resource generated.
[jzhang@dhcp-140-18 ocp14]$ oc get pods -n test
No resources found.
[jzhang@dhcp-140-18 ocp14]$ oc get descheduler -n test
NAME        AGE
example     77m
[jzhang@dhcp-140-18 ocp14]$ oc get descheduler -n test example-2 -o yaml
apiVersion: descheduler.io/v1alpha1
kind: Descheduler
metadata:
  creationTimestamp: 2019-03-14T06:23:31Z
  generation: 1
  name: example-2
  namespace: test
  resourceVersion: "109848"
  selfLink: /apis/descheduler.io/v1alpha1/namespaces/test/deschedulers/example-2
  uid: b0223e30-4621-11e9-8f2d-0a82fa5c54fe
spec:
  schedule: '*/1 * * * ?'
  strategies:
  - name: lownodeutilization
    params:
    - name: cputhreshold
      value: "10"
    - name: memorythreshold
      value: "20"
    - name: memorytargetthreshold
      value: "30"


Expected results:
The descheduler resource should be generated successfully. Because its csv support watching all namespaces.
[jzhang@dhcp-140-18 ocp14]$ oc get csv descheduler.v0.0.1 -o yaml |grep -i installmode -A 9
  installModes:
  - supported: true
    type: OwnNamespace
  - supported: true
    type: SingleNamespace
  - supported: false
    type: MultiNamespace
  - supported: true
    type: AllNamespaces

Additional info:
If created the descheduler resource in the same project as the descheduler operator, it works well.

Comment 6 Jian Zhang 2019-06-28 03:27:39 UTC
It works well on OCP 4.1, LGTM, verify it. Details as below:

mac:~ jianzhang$ oc get clusterversion
NAME      VERSION                             AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.2.0-0.nightly-2019-06-27-204704   True        False         28m     Cluster version is 4.2.0-0.nightly-2019-06-27-204704

Install it on the Web console.
mac:~ jianzhang$ oc get csv -n default descheduler.v0.0.1 -o yaml | grep -i installmode -A 9
  installModes:
  - supported: true
    type: OwnNamespace
  - supported: true
    type: SingleNamespace
  - supported: false
    type: MultiNamespace
  - supported: false
    type: AllNamespaces
  keywords:

mac:~ jianzhang$ oc get sub -n default
NAME          PACKAGE       SOURCE                CHANNEL
descheduler   descheduler   community-operators   alpha
mac:~ jianzhang$ 
mac:~ jianzhang$ 
mac:~ jianzhang$ oc get csv -n default
NAME                 DISPLAY       VERSION   REPLACES   PHASE
descheduler.v0.0.1   Descheduler   0.0.1                Succeeded
mac:~ jianzhang$ oc get pods -n default
NAME                                    READY   STATUS    RESTARTS   AGE
descheduler-operator-74cd48d498-xqpmk   1/1     Running   0          57s

Comment 7 errata-xmlrpc 2019-10-16 06:27:58 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, 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-2019:2922

Comment 8 Red Hat Bugzilla 2023-09-14 05:25:25 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days