Skip to content

use virtio as NIC for anexia #1942

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

koflanx
Copy link

@koflanx koflanx commented Jun 26, 2025

What this PR does / why we need it:

Anexia does not support vmxnet3 as a NIC anymore. Requesting a machine with that NIC will result in a forever pending machine.

What type of PR is this?
/kind bug

Special notes for your reviewer:

This is anexia specific and can should only affect machines spawned on that cloud provider.

Does this PR introduce a user-facing change? Then add your Release Note here:

Fixes support for anexia machines by using the supported NIC.

** Documentation

Anexia supports only machines with virtio as the NIC since march 2025. 

@kubermatic-bot kubermatic-bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. kind/bug Categorizes issue or PR as related to a bug. do-not-merge/docs-needed Indicates that a PR should not merge because it's missing one of the documentation labels. sig/cluster-management Denotes a PR or issue as being assigned to SIG Cluster Management. labels Jun 26, 2025
@kubermatic-bot
Copy link
Contributor

[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 mohamed-rafraf for approval. For more information see the Code Review Process.

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

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

@kubermatic-bot kubermatic-bot added dco-signoff: no Denotes that at least one commit in the pull request doesn't have a valid DCO signoff message. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Jun 26, 2025
@kubermatic-bot
Copy link
Contributor

Hi @koflanx. Thanks for your PR.

I'm waiting for a kubermatic member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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.

@kubermatic-bot kubermatic-bot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. docs/provided Denotes a PR that has a valid documentation reference. and removed do-not-merge/docs-needed Indicates that a PR should not merge because it's missing one of the documentation labels. labels Jun 26, 2025
@koflanx koflanx force-pushed the for-upstream/virtio branch from 12f2aa8 to 530059f Compare June 26, 2025 10:59
@kubermatic-bot kubermatic-bot added dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. and removed dco-signoff: no Denotes that at least one commit in the pull request doesn't have a valid DCO signoff message. labels Jun 26, 2025
koflanx added a commit to anexia-it/machine-controller that referenced this pull request Jul 7, 2025
Upstream PRs
use virtio as nic kubermatic#1942
stop template resolving kubermatic#1943

Originally implemented in
- 11e2b3c
- 07f3827
koflanx added a commit to anexia-it/machine-controller that referenced this pull request Jul 7, 2025
Upstream PRs
use virtio as nic kubermatic#1942
stop template resolving kubermatic#1943

Originally implemented in
- 11e2b3c
- 07f3827

Stop template resolving if not needed
Avoiding the template ID resolving is needed, because otherwise the
teardown of existing machines can fail if the named template does not
longer exist. This happened as part of the Flatcar rollout (VSO-2422)
and led to node rotation issues.

Closes: ANXKUBE-1361

Refactor provisioning handling of VMs
Checking the returned errors alone does not match the behaviour of
the API, which keeps the errors field, even if later runs of the
provisioning task we're successful later.

Because of that, the machine controller was not able to delete machines
that were created, but not yet provisioned as nodes. By evaluating the
"status" field instead of the presence of errors, we can (hopefully)
better verify the provisioning status of a VM.

Furthemore, the default NIC type got changed to "virtio", because of
breaking API changes introduced and not yet reverted (VSSUP-16).

Unfortunately, in order to work with the newer go-anxcloud release, the
Go version in the Dockerfile had to be bumped as well.

Tested on my playground cluster, where the provisioning of new machines
is working.

Closes: ANXKUBE-1326
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. docs/provided Denotes a PR that has a valid documentation reference. kind/bug Categorizes issue or PR as related to a bug. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/cluster-management Denotes a PR or issue as being assigned to SIG Cluster Management. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants