Skip to content

Conversation

@yanhua121
Copy link
Contributor

  1. Revendor the openshift/api to use the newly added NutanixMachineProviderConfig fields: Add optional new fields to NutanixMachineProviderConfig api#1390
  2. Changes to support working with the Windows Machine VM
  3. Fix a bug hit when testing the Windows VM worker node Machine.

@openshift-ci openshift-ci bot requested review from damdo and odvarkadaniel January 26, 2023 20:14
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 26, 2023

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign elmiko for approval by writing /assign @elmiko in a comment. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@yanhua121
Copy link
Contributor Author

/retest-required

@yanhua121
Copy link
Contributor Author

/test e2e-nutanix

@yanhua121
Copy link
Contributor Author

/test e2e-nutanix-operator

@yanhua121
Copy link
Contributor Author

/test e2e-nutanix

2 similar comments
@yanhua121
Copy link
Contributor Author

/test e2e-nutanix

@yanhua121
Copy link
Contributor Author

/test e2e-nutanix

Copy link
Contributor

@elmiko elmiko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changes look good to me, we just need to update the API vendor links once the other PR merges

@yanhua121
Copy link
Contributor Author

/retest-required

@huali9
Copy link

huali9 commented Feb 7, 2023

Hi @yanhua121 @elmiko I tried to test this before pr merge. But the machine stuck in Provisioning, machine-api-controllers pod get CrashLoopBackOff, can you please take a look? Thanks!
Step:

  1. Build image with Support for the Windows Machine VM #37 and Support categories and project fields of NutanixMachineProviderConfig #38 using cluster-bot.

job build openshift/machine-api-provider-nutanix#37,openshift/machine-api-provider-nutanix#38 succeeded

(I cannot build image also with openshift/api#1390, get error invalid configuration: you must define at least one test or image build in 'tests' or 'images'
job build openshift/api#1390,openshift/machine-api-provider-nutanix#37,openshift/machine-api-provider-nutanix#38 failed)

  1. Install a cluster using the image builded from the previous step

liuhuali@Lius-MacBook-Pro huali-test % oc get clusterversion
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS
version 4.13.0-0.ci.test-2023-02-07-024406-ci-ln-ibyrin2-latest True False 62m Cluster version is 4.13.0-0.ci.test-2023-02-07-024406-ci-ln-ibyrin2-latest
liuhuali@Lius-MacBook-Pro huali-test % oc get machine
NAME PHASE TYPE REGION ZONE AGE
huliu-nu7b-74hps-master-0 Running AHV Unnamed Development-LTS 91m
huliu-nu7b-74hps-master-1 Running AHV Unnamed Development-LTS 91m
huliu-nu7b-74hps-master-2 Running AHV Unnamed Development-LTS 91m
huliu-nu7b-74hps-worker-24sw6 Running AHV Unnamed Development-LTS 88m
huliu-nu7b-74hps-worker-knbcx Running AHV Unnamed Development-LTS 88m

  1. Do the following steps to use the new field, if not, the new filed will be removed.

liuhuali@Lius-MacBook-Pro huali-test % oc scale deployment -n openshift-cluster-version cluster-version-operator --replicas 0
deployment.apps/cluster-version-operator scaled
liuhuali@Lius-MacBook-Pro huali-test % oc scale deployment -n openshift-machine-api machine-api-operator --replicas 0
deployment.apps/machine-api-operator scaled
liuhuali@Lius-MacBook-Pro huali-test % oc delete mutatingwebhookconfiguration machine-api
mutatingwebhookconfiguration.admissionregistration.k8s.io "machine-api" deleted

  1. Create machineset with the new filed bootType: UEFI

liuhuali@Lius-MacBook-Pro huali-test % vim ms1.yaml
liuhuali@Lius-MacBook-Pro huali-test % oc create -f ms1.yaml
Warning: providerSpec.value: Unsupported value: "bootType": Unknown field (bootType) will be ignored
machineset.machine.openshift.io/huliu-nu7b-74hps-1 created
liuhuali@Lius-MacBook-Pro huali-test % oc get machine
NAME PHASE TYPE REGION ZONE AGE
huliu-nu7b-74hps-1-svb6t Provisioning 59m
huliu-nu7b-74hps-master-0 Running AHV Unnamed Development-LTS 165m
huliu-nu7b-74hps-master-1 Running AHV Unnamed Development-LTS 165m
huliu-nu7b-74hps-master-2 Running AHV Unnamed Development-LTS 165m
huliu-nu7b-74hps-worker-24sw6 Running AHV Unnamed Development-LTS 162m
huliu-nu7b-74hps-worker-knbcx Running AHV Unnamed Development-LTS 162m
liuhuali@Lius-MacBook-Pro huali-test % oc get machine huliu-nu7b-74hps-1-svb6t -o yaml
...
providerSpec:
value:
apiVersion: machine.openshift.io/v1
bootType: UEFI
...
status:
conditions:

  • lastTransitionTime: "2023-02-07T06:17:51Z"
    status: "True"
    type: Drainable
  • lastTransitionTime: "2023-02-07T06:17:51Z"
    message: Instance has not been created
    reason: InstanceNotCreated
    severity: Warning
    status: "False"
    type: InstanceExists
  • lastTransitionTime: "2023-02-07T06:17:51Z"
    status: "True"
    type: Terminable
    lastUpdated: "2023-02-07T06:17:51Z"
    phase: Provisioning
    liuhuali@Lius-MacBook-Pro huali-test % oc get pod
    NAME READY STATUS RESTARTS AGE
    cluster-autoscaler-operator-76dbf8cd69-2fdlm 2/2 Running 0 128m
    cluster-baremetal-operator-674f5cf8d5-sbmf7 2/2 Running 0 128m
    control-plane-machine-set-operator-648b4fc749-n276k 1/1 Running 0 128m
    machine-api-controllers-74cddc6d-44vlw 6/7 CrashLoopBackOff 11 (2m58s ago) 132m
    liuhuali@Lius-MacBook-Pro huali-test % oc logs machine-api-controllers-74cddc6d-44vlw -c machine-controller
    ....
    I0207 07:14:46.154957 1 controller.go:117] "msg"="Observed a panic in reconciler: runtime error: invalid memory address or nil pointer dereference" "controller"="machine-controller" "name"="huliu-nu7b-74hps-1-svb6t" "namespace"="openshift-machine-api" "object"={"name":"huliu-nu7b-74hps-1-svb6t","namespace":"openshift-machine-api"} "reconcileID"="d9742539-44da-43aa-9b55-50816fc756eb"
    panic: runtime error: invalid memory address or nil pointer dereference [recovered]
    panic: runtime error: invalid memory address or nil pointer dereference
    [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x168633c]

goroutine 528 [running]:
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile.func1()
/go/src/github.com/openshift/machine-api-provider-nutanix/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:118 +0x1f4
panic({0x186e7a0, 0x2b122e0})
/usr/lib/golang/src/runtime/panic.go:884 +0x212
github.com/openshift/machine-api-provider-nutanix/pkg/actuators/machine.createVM(0xc000e922d0, {0xc000fd1c00?, 0xc0009f0c00?, 0x1c?})
/go/src/github.com/openshift/machine-api-provider-nutanix/pkg/actuators/machine/vm.go:353 +0x131c
github.com/openshift/machine-api-provider-nutanix/pkg/actuators/machine.(*Reconciler).create(0xc000749440)
/go/src/github.com/openshift/machine-api-provider-nutanix/pkg/actuators/machine/reconciler.go:61 +0x4cf
github.com/openshift/machine-api-provider-nutanix/pkg/actuators/machine.(*Actuator).Create(0xc0003be720, {0x1d7be98, 0xc00080af00}, 0xc000724000)
/go/src/github.com/openshift/machine-api-provider-nutanix/pkg/actuators/machine/actuator.go:89 +0x2b2
github.com/openshift/machine-api-operator/pkg/controller/machine.(*ReconcileMachine).Reconcile(0xc0006c4af0, {0x1d7be98, 0xc00080af00}, {{{0xc000575728?, 0x10?}, {0xc000575710?, 0x40db47?}}})
/go/src/github.com/openshift/machine-api-provider-nutanix/vendor/github.com/openshift/machine-api-operator/pkg/controller/machine/controller.go:381 +0xbb8
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile(0x1d7bdf0?, {0x1d7be98?, 0xc00080af00?}, {{{0xc000575728?, 0x19ead00?}, {0xc000575710?, 0x4045d4?}}})
/go/src/github.com/openshift/machine-api-provider-nutanix/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:121 +0xc8
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler(0xc000190e60, {0x1d7bdf0, 0xc000718800}, {0x18edc00?, 0xc00049c380?})
/go/src/github.com/openshift/machine-api-provider-nutanix/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:320 +0x33c
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem(0xc000190e60, {0x1d7bdf0, 0xc000718800})
/go/src/github.com/openshift/machine-api-provider-nutanix/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:273 +0x1d9
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2()
/go/src/github.com/openshift/machine-api-provider-nutanix/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:234 +0x85
created by sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2
/go/src/github.com/openshift/machine-api-provider-nutanix/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:230 +0x333

@elmiko
Copy link
Contributor

elmiko commented Feb 7, 2023

just following up here, @yanhua121 and @huali9 have been talking through slack to work on getting the proper controller in place. it required an update to the MAO to ensure we could build a test image based on the new API changes.

@yanhua121
Copy link
Contributor Author

/test e2e-nutanix

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 8, 2023

@yanhua121: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-nutanix b999a7a link false /test e2e-nutanix

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@yanhua121
Copy link
Contributor Author

Since the changes in this PR are covered in PR #38, we can close this one.

@yanhua121 yanhua121 closed this Feb 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants