Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-24632

The configuration values of the CPMS generated by installer on vSphere is not the same with the master machines

XMLWordPrintable

    • Moderate
    • No
    • OpenShift SPLAT - Sprint 256, OpenShift SPLAT - Sprint 257, OpenShift SPLAT - Sprint 258, OpenShift SPLAT - Sprint 259
    • 4
    • False
    • Hide

      None

      Show
      None
    • Hide
      * Previously, the `ControlPlaneMachineSet` (CPMS) checked templates and the resource pool based on the full vCenter path. This caused the CPMS to start when it was not needed. With this release, CPMS also checks the file name and the issue is resolved. (link:https://issues.redhat.com/browse/OCPBUGS-24632[*OCPBUGS-24632*])
      _____________
      Fixed issue where CPMS was checking templates and resource pool based on full path. This lead to rollout of control plane machine when no changes were needed.
      Show
      * Previously, the `ControlPlaneMachineSet` (CPMS) checked templates and the resource pool based on the full vCenter path. This caused the CPMS to start when it was not needed. With this release, CPMS also checks the file name and the issue is resolved. (link: https://issues.redhat.com/browse/OCPBUGS-24632 [* OCPBUGS-24632 *]) _____________ Fixed issue where CPMS was checking templates and resource pool based on full path. This lead to rollout of control plane machine when no changes were needed.
    • Bug Fix
    • Done

      Description of problem:

      The configuration values of the CPMS generated by installer on vSphere is not the same with the configuration values of the master machines, although it doesn’t trigger update when installing the cluster with TechPreview, but it’s confusing for users. 
      
      Another, if installing a cluster without TechPreview, then enable TechPreview for day2 operation, the CPMS is inactive by default, then only active CPMS and do not change other configuration values, it will trigger update, this is not as expected.
      
      Also, on other providers(AWS, GCP, Azure, Nutanix), the configuration values of the CPMS generated by installer is the same with the configuration values of the master machines.    

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

      4.15.0-0.nightly-2023-12-04-223539

      How reproducible:

      Always 

      Steps to Reproduce:

      1.Create a cluster on vSphere with TechPreview, we use flexy-template: ipi-on-vsphere/versioned-installer_techpreview, there is CPMS by default and it’s Active.  
      liuhuali@Lius-MacBook-Pro huali-test % oc get clusterversion
      NAME      VERSION                              AVAILABLE   PROGRESSING   SINCE   STATUS
      version   4.15.0-0.nightly-2023-12-04-223539   True        False         6m1s    Cluster version is 4.15.0-0.nightly-2023-12-04-223539
      liuhuali@Lius-MacBook-Pro huali-test % oc project openshift-machine-api
      Already on project "openshift-machine-api" on server "https://api.huliu-vs07b.qe.devcluster.openshift.com:6443".
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine
      NAME                               PHASE     TYPE   REGION   ZONE   AGE
      huliu-vs07b-pkm69-master-0         Running                          27m
      huliu-vs07b-pkm69-master-1         Running                          27m
      huliu-vs07b-pkm69-master-2         Running                          27m
      huliu-vs07b-pkm69-worker-0-5cgd9   Running                          21m
      huliu-vs07b-pkm69-worker-0-ql9zv   Running                          21m
      liuhuali@Lius-MacBook-Pro huali-test % oc get controlplanemachineset
      NAME      DESIRED   CURRENT   READY   UPDATED   UNAVAILABLE   STATE    AGE
      cluster   3         3         3       3                       Active   27m   
      
      2.Check the configuration values in CPMS is not the same with the master machines. But they should be the same.
      liuhuali@Lius-MacBook-Pro huali-test % oc get controlplanemachineset cluster -oyaml
      …
              providerSpec:
                value:
                  apiVersion: machine.openshift.io/v1beta1
                  credentialsSecret:
                    name: vsphere-cloud-credentials
                  diskGiB: 120
                  kind: VSphereMachineProviderSpec
                  memoryMiB: 16384
                  metadata:
                    creationTimestamp: null
                  network:
                    devices: null
                  numCPUs: 4
                  numCoresPerSocket: 4
                  snapshot: ""
                  template: ""
                  userDataSecret:
                    name: master-user-data
                  workspace: {}
      …
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine huliu-vs07b-pkm69-master-2  -oyaml
      …
        providerSpec:
          value:
            apiVersion: machine.openshift.io/v1beta1
            credentialsSecret:
              name: vsphere-cloud-credentials
            diskGiB: 120
            kind: VSphereMachineProviderSpec
            memoryMiB: 16384
            metadata:
              creationTimestamp: null
            network:
              devices:
              - networkName: devqe-segment-221
            numCPUs: 4
            numCoresPerSocket: 4
            snapshot: ""
            template: huliu-vs07b-pkm69-rhcos-generated-region-generated-zone
            userDataSecret:
              name: master-user-data
            workspace:
              datacenter: DEVQEdatacenter
              datastore: /DEVQEdatacenter/datastore/vsanDatastore
              folder: /DEVQEdatacenter/vm/huliu-vs07b-pkm69
              resourcePool: /DEVQEdatacenter/host/DEVQEcluster//Resources
              server: vcenter.devqe.ibmc.devcluster.openshift.com
      …
      
      Must-gather: https://drive.google.com/file/d/1KC4fwvQudRRebi9DyNOVtRT2AmenL5ek/view?usp=sharing 
      
      3.Install a cluster on vSphere without TechPreview, we use flexy-template: ipi-on-vsphere/versioned-installer, there is no CPMS by default. 
      liuhuali@Lius-MacBook-Pro huali-test % oc get clusterversion                                                      
      NAME      VERSION                              AVAILABLE   PROGRESSING   SINCE   STATUS
      version   4.15.0-0.nightly-2023-12-04-223539   True        False         16m     Cluster version is 4.15.0-0.nightly-2023-12-04-223539
      liuhuali@Lius-MacBook-Pro huali-test % oc project openshift-machine-api
      Now using project "openshift-machine-api" on server "https://api.huliu-vs07c.qe.devcluster.openshift.com:6443".
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine
      NAME                               PHASE     TYPE   REGION   ZONE   AGE
      huliu-vs07c-p6258-master-0         Running                          41m
      huliu-vs07c-p6258-master-1         Running                          41m
      huliu-vs07c-p6258-master-2         Running                          41m
      huliu-vs07c-p6258-worker-0-78zxg   Running                          36m
      huliu-vs07c-p6258-worker-0-tv2rw   Running                          36m
      liuhuali@Lius-MacBook-Pro huali-test % oc get controlplanemachineset
      No resources found in openshift-machine-api namespace.
      
      4.Enable TechPreview, there is CPMS now, and it’s Inactive
      liuhuali@Lius-MacBook-Pro huali-test % oc edit featuregate                                            
      featuregate.config.openshift.io/cluster edited
      liuhuali@Lius-MacBook-Pro huali-test % oc get controlplanemachineset
      NAME      DESIRED   CURRENT   READY   UPDATED   UNAVAILABLE   STATE      AGE
      cluster   3         3         3                               Inactive   13m
      liuhuali@Lius-MacBook-Pro huali-test % oc get controlplanemachineset cluster -oyaml
      …
              providerSpec:
                value:
                  apiVersion: machine.openshift.io/v1beta1
                  credentialsSecret:
                    name: vsphere-cloud-credentials
                  diskGiB: 120
                  kind: VSphereMachineProviderSpec
                  memoryMiB: 16384
                  metadata:
                    creationTimestamp: null
                  network:
                    devices: null
                  numCPUs: 4
                  numCoresPerSocket: 4
                  snapshot: ""
                  template: ""
                  userDataSecret:
                    name: master-user-data
                  workspace: {}
      
      5.Edit the CPMS, only change Inactive to Active. It triggers update, but it shouldn’t, because I didn’t change any configuration values.
      
      liuhuali@Lius-MacBook-Pro huali-test % oc edit controlplanemachineset                             
      controlplanemachineset.machine.openshift.io/cluster edited
      liuhuali@Lius-MacBook-Pro huali-test % oc get machine
      NAME                               PHASE          TYPE   REGION   ZONE   AGE
      huliu-vs07c-p6258-master-0         Running                               59m
      huliu-vs07c-p6258-master-1         Running                               59m
      huliu-vs07c-p6258-master-2         Running                               59m
      huliu-vs07c-p6258-master-ccgth-0   Provisioning                          8s
      huliu-vs07c-p6258-worker-0-78zxg   Running                               54m
      huliu-vs07c-p6258-worker-0-tv2rw   Running                               54m
      liuhuali@Lius-MacBook-Pro huali-test % oc logs control-plane-machine-set-operator-85595cdfdf-zh9bk
      …
      I1207 08:59:32.993680       1 updates.go:473]  "msg"="Machine requires an update" "controller"="controlplanemachineset" "diff"=["Template: /DEVQEdatacenter/vm/huliu-vs07c-p6258/huliu-vs07c-p6258-rhcos-generated-region-generated-zone != huliu-vs07c-p6258-rhcos-generated-region-generated-zone"] "index"=2 "name"="huliu-vs07c-p6258-master-2" "namespace"="openshift-machine-api" "reconcileID"="da8e7371-8378-42df-8a41-bc3f4198fb20" "updateStrategy"="RollingUpdate"
      
      
      Must gather: https://drive.google.com/file/d/1LL_anFTNsH5O4cIJSUzioyHphS_avyTP/view?usp=sharing 

      Actual results:

      The configuration values of the CPMS generated by installer on vSphere is not the same with the configuration values of the master machines

      Expected results:

      The configuration values of the CPMS generated by installer on vSphere should be the same with the configuration values of the master machines 

      Additional info:

          

            rhn-support-ngirard Neil Girard
            huliu@redhat.com Huali Liu
            Gaoyun Pei Gaoyun Pei
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: