Uploaded image for project: 'OpenShift Hive'
  1. OpenShift Hive
  2. HIVE-1789

Hive MachinePool generates duplicate oVirt MachineSets

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Undefined Undefined
    • None
    • None
    • False
    • None
    • False

      Reported on slack in: https://coreos.slack.com/archives/C0300PTR25B/p1648127699393869

      We are specifying worker compute in both install-config.yaml and in a MachinePool, but on the provisioned cluster, I see MachineSets named both “worker” and “worker-0". The “worker-0” MachineSet is labelled to be associated with the Hive MachinePool, and the other is not. So we are getting twice as many compute nodes as desired.Is this expected? For other platforms, it seems like we don’t get a doubled count of nodes. I am not sure if we need to exclude compute from install-config.yaml for RHV

      Hive is generating a worker MachineSet with a "-0" suffix which does not match the MachineSet name generated by the installer during initial creation. This results in two sets of workers being provisioned via two (duplicate, aside from the name) MachineSets.

      Reproduce: Create an ovirt ClusterDeployment (eg test-cluster) w/ a worker MachinePool (eg test-cluster-worker). Two MachineSets exist on the remote cluster eg "test-cluster-worker", "test-cluster-worker-0".

      Expected outcome: Only one MachineSet exists on the remote cluster, eg "test-cluster-worker".

      Additionally, noticed several nil pointer dereferences in the environment.

      time="2022-03-23T22:47:02.882Z" level=info msg="reconcile complete" controller=machinepool elapsedMillis=132 elapsedMillisGT=0 machinePool=rhv-cluster-07/rhv-cluster-07-worker outcome=unspecified reconcileID=2tld9xvh
      panic: runtime error: invalid memory address or nil pointer dereference
      [signal SIGSEGV: segmentation violation code=0x1 addr=0x4 pc=0x3dfd550]
      
      goroutine 1422 [running]:
      github.com/openshift/hive/pkg/controller/machinepool.(*OvirtActuator).GenerateMachineSets(0xc0020420a0, 0xc007514600, 0xc00000d4a0, {0xc005020000, 0xc000054060})
              github.com/openshift/hive/pkg/controller/machinepool/ovirt.go:67 +0xf0
      github.com/openshift/hive/pkg/controller/machinepool.(*ReconcileMachinePool).generateMachineSets(0xc000b98460, 0xc00000d4a0, 0xc003f780e0, 0x50e5c10, 0xc000b98460, {0x50e5c10, 0xc000b98460})
              github.com/openshift/hive/pkg/controller/machinepool/machinepool_controller.go:423 +0xc4
      github.com/openshift/hive/pkg/controller/machinepool.(*ReconcileMachinePool).Reconcile(0xc000987310, {0x505b7d8, 0xc005380420}, {{{0xc005a2e730, 0xe}, {0xc00224aaf8, 0x15}}})
              github.com/openshift/hive/pkg/controller/machinepool/machinepool_controller.go:318 +0x1106
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile(0xc0000f5d90, {0x505b7d8, 0xc005317fb0}, {{{0xc005a2e730, 0x48b4d60}, {0xc00224aaf8, 0x186c394}}})
              sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/controller/controller.go:114 +0x26f
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler(0xc0000f5d90, {0x505b730, 0xc000a94f80}, {0x45407c0, 0xc003f6c000})
              sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/controller/controller.go:311 +0x33e
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem(0xc0000f5d90, {0x505b730, 0xc000a94f80})
              sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/controller/controller.go:266 +0x205
      sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2()
              sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/controller/controller.go:227 +0x85
      created by sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2
              sigs.k8s.io/controller-runtime@v0.11.0/pkg/internal/controller/controller.go:223 +0x357 

              abutcher@redhat.com Andrew Butcher
              abutcher@redhat.com Andrew Butcher
              Jianping Shu Jianping Shu
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: