hyperconverged-cluster-operator icon indicating copy to clipboard operation
hyperconverged-cluster-operator copied to clipboard

WIP UDN: Add managedTap to Kubevirt CR

Open oshoval opened this issue 1 year ago • 28 comments

What this PR does / why we need it: Kubevirt introduce new binding for seamless migration, instead the Passt one. https://github.com/kubevirt/kubevirt/pull/13024 This PR adds support to it via the Kubevirt CR. Once it is adapted we can drop the Passt one, so the switch will be smooth.

After enabling the required FG kubectl patch hco -n kubevirt-hyperconverged kubevirt-hyperconverged --type=json -p='[{"op":"replace","path":"/spec/featureGates/primaryUserDefinedNetworkBinding","value":true}]'

oc get kubevirts -n kubevirt-hyperconverged kubevirt-kubevirt-hyperconverged -oyaml shows:

    network:
      binding:
        defaultPodNetworkBinding:
          domainAttachmentType: managedTap
          migration: {}
        passt:
          computeResourceOverhead:
            requests:
              memory: 500Mi
          migration:
            method: link-refresh
          networkAttachmentDefinition: default/primary-udn-kubevirt-binding
          sidecarImage: quay.io/kubevirt/network-passt-binding@sha256:43846ec7a193b45fb3a43aee1b3364df282f5736fd88c9b4ed123b7b50fc6e4d

The feature and the const DomainAttachmentType can be used only once the mentioned PR is merged, but the change itself is standalone if desired meanwhile.

Reviewer Checklist

Reviewers are supposed to review the PR for every aspect below one by one. To check an item means the PR is either "OK" or "Not Applicable" in terms of that item. All items are supposed to be checked before merging a PR.

  • [ ] PR Message
  • [ ] Commit Messages
  • [ ] How to test
  • [ ] Unit Tests
  • [ ] Functional Tests
  • [ ] User Documentation
  • [ ] Developer Documentation
  • [ ] Upgrade Scenario
  • [ ] Uninstallation Scenario
  • [ ] Backward Compatibility
  • [ ] Troubleshooting Friendly

Jira Ticket:


Release note:

UDN: Support managedTap binding

oshoval avatar Oct 13 '24 08:10 oshoval

Skipping CI for Draft Pull Request. If you want CI signal for your change, please convert it to an actual PR. You can still manually trigger a test run with /test all

kubevirt-bot avatar Oct 13 '24 08:10 kubevirt-bot

Skipping CI for Draft Pull Request. If you want CI signal for your change, please convert it to an actual PR. You can still manually trigger a test run with /test all

openshift-ci[bot] avatar Oct 13 '24 08:10 openshift-ci[bot]

Pull Request Test Coverage Report for Build 12063553262

Details

  • 9 of 9 (100.0%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.02%) to 71.863%

Totals Coverage Status
Change from base Build 12031091119: 0.02%
Covered Lines: 6020
Relevant Lines: 8377

💛 - Coveralls

coveralls avatar Oct 13 '24 08:10 coveralls

hco-e2e-upgrade-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-azure hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

hco-bot avatar Oct 13 '24 11:10 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-upgrade-operator-sdk-azure, ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

In response to this:

hco-e2e-upgrade-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-azure hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

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-sigs/prow repository.

kubevirt-bot avatar Oct 13 '24 11:10 kubevirt-bot

hco-e2e-upgrade-prev-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure hco-e2e-operator-sdk-gcp lane succeeded. /override ci/prow/hco-e2e-operator-sdk-aws

hco-bot avatar Oct 13 '24 12:10 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-operator-sdk-aws, ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure

In response to this:

hco-e2e-upgrade-prev-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure hco-e2e-operator-sdk-gcp lane succeeded. /override ci/prow/hco-e2e-operator-sdk-aws

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-sigs/prow repository.

kubevirt-bot avatar Oct 13 '24 12:10 kubevirt-bot

addressed comments, ptal

oshoval avatar Oct 14 '24 07:10 oshoval

Going to create a new PR doing the opposite, so the userDefinedPrimaryNetworkBinding will point to managedTap, we can test later on passt by installing HCO using the json capababilities so we patch the binding and change from managedTap to passt, no need for new binding.

qinqon avatar Oct 17 '24 07:10 qinqon

TODO - need first to add DynamicPodInterfaceNaming to the FG in this PR (added, need still to add UT) we might need HCO to consume latest kubevirt first (of course for the usage of the feature, but maybe it can be done in any order, as long as adding the FG first doesnt have regression)

oshoval avatar Oct 27 '24 14:10 oshoval

rebased

oshoval avatar Oct 27 '24 14:10 oshoval

changes https://github.com/kubevirt/hyperconverged-cluster-operator/pull/3139#issuecomment-2440037275

oshoval avatar Oct 27 '24 14:10 oshoval

hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure hco-e2e-upgrade-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-azure hco-e2e-upgrade-prev-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure

hco-bot avatar Oct 27 '24 16:10 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-upgrade-operator-sdk-azure, ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure, ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure

In response to this:

hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure hco-e2e-upgrade-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-azure hco-e2e-upgrade-prev-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure

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-sigs/prow repository.

kubevirt-bot avatar Oct 27 '24 16:10 kubevirt-bot

hco-e2e-operator-sdk-aws, hco-e2e-operator-sdk-gcp lanes succeeded. /override ci/prow/hco-e2e-operator-sdk-azure

hco-bot avatar Oct 27 '24 17:10 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-operator-sdk-azure

In response to this:

hco-e2e-operator-sdk-aws, hco-e2e-operator-sdk-gcp lanes succeeded. /override ci/prow/hco-e2e-operator-sdk-azure

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-sigs/prow repository.

kubevirt-bot avatar Oct 27 '24 17:10 kubevirt-bot

hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

hco-bot avatar Oct 27 '24 17:10 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

In response to this:

hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

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-sigs/prow repository.

kubevirt-bot avatar Oct 27 '24 17:10 kubevirt-bot

addded FG UT

oshoval avatar Oct 28 '24 07:10 oshoval

hco-e2e-upgrade-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-azure hco-e2e-upgrade-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-sno-azure hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

hco-bot avatar Oct 28 '24 09:10 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-upgrade-operator-sdk-azure, ci/prow/hco-e2e-upgrade-operator-sdk-sno-azure, ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

In response to this:

hco-e2e-upgrade-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-azure hco-e2e-upgrade-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-sno-azure hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure

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-sigs/prow repository.

kubevirt-bot avatar Oct 28 '24 09:10 kubevirt-bot

hco-e2e-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-operator-sdk-sno-azure hco-e2e-upgrade-prev-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure hco-e2e-upgrade-operator-sdk-azure lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-aws

hco-bot avatar Oct 28 '24 12:10 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-operator-sdk-sno-azure, ci/prow/hco-e2e-upgrade-operator-sdk-aws, ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure

In response to this:

hco-e2e-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-operator-sdk-sno-azure hco-e2e-upgrade-prev-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure hco-e2e-upgrade-operator-sdk-azure lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-aws

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-sigs/prow repository.

kubevirt-bot avatar Oct 28 '24 12:10 kubevirt-bot

hco-e2e-kv-smoke-azure lane succeeded. /override ci/prow/hco-e2e-kv-smoke-gcp

hco-bot avatar Oct 28 '24 14:10 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-kv-smoke-gcp

In response to this:

hco-e2e-kv-smoke-azure lane succeeded. /override ci/prow/hco-e2e-kv-smoke-gcp

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-sigs/prow repository.

kubevirt-bot avatar Oct 28 '24 14:10 kubevirt-bot

removed the FG enable commit due to discussion rebased

oshoval avatar Nov 11 '24 09:11 oshoval

used vendored kubevirt managedTap type directly

oshoval avatar Nov 11 '24 09:11 oshoval

hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure hco-e2e-upgrade-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-sno-azure hco-e2e-upgrade-prev-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure hco-e2e-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-operator-sdk-gcp

hco-bot avatar Nov 11 '24 11:11 hco-bot

@hco-bot: Overrode contexts on behalf of hco-bot: ci/prow/hco-e2e-operator-sdk-gcp, ci/prow/hco-e2e-upgrade-operator-sdk-sno-azure, ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure, ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure

In response to this:

hco-e2e-upgrade-prev-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-azure hco-e2e-upgrade-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-sno-azure hco-e2e-upgrade-prev-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-prev-operator-sdk-sno-azure hco-e2e-operator-sdk-aws lane succeeded. /override ci/prow/hco-e2e-operator-sdk-gcp

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-sigs/prow repository.

kubevirt-bot avatar Nov 11 '24 11:11 kubevirt-bot

hco-e2e-consecutive-operator-sdk-upgrades-aws lane succeeded. /override ci/prow/hco-e2e-consecutive-operator-sdk-upgrades-azure hco-e2e-upgrade-operator-sdk-sno-aws lane succeeded. /override ci/prow/hco-e2e-upgrade-operator-sdk-sno-azure

hco-bot avatar Nov 11 '24 11:11 hco-bot