Skip to content

Fix KVM driver (tests) timeouts #20852

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 2 commits into
base: master
Choose a base branch
from

Conversation

prezha
Copy link
Contributor

@prezha prezha commented May 27, 2025

Refactor KVM driver waiting logic for domain start, getting ip address and shutting domain down. Add more config/state outputs to aid future debugging.

Bump go/libvirt to v1.11002.0 and set the minimum memory required for running all tests to 3GB to avoid some really weird system behaviour.

fixes #20818
closes #20770

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label May 27, 2025
@k8s-ci-robot k8s-ci-robot requested a review from medyagh May 27, 2025 20:10
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: prezha

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

The pull request process is described 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

@k8s-ci-robot k8s-ci-robot requested a review from spowelljr May 27, 2025 20:10
@k8s-ci-robot k8s-ci-robot added approved Indicates a PR has been approved by an approver from all required OWNERS files. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels May 27, 2025
Rewrite KVM driver waiting logic for domain start, getting ip address
and shutting domain down. Add more config/state outputs to aid future
debugging.

Bump go/libvirt to v1.11002.0 and set the minimum memory required for
running all tests to 3GB to avoid some really weird system behaviour.
@prezha
Copy link
Contributor Author

prezha commented May 27, 2025

/ok-to-test

@k8s-ci-robot k8s-ci-robot added the ok-to-test Indicates a non-member PR verified by an org member that is safe to test. label May 27, 2025
@prezha prezha changed the title Fix KVM driver tests timeouts Fix KVM driver (tests) timeouts May 27, 2025
@minikube-pr-bot

This comment has been minimized.

sha256 6924efde5de86fe277676e929dc9917d466efa02fb934197bc2eba35d5680971 go1.23.4.linux-amd64.tar.gz
Copy link
Member

Choose a reason for hiding this comment

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

are you intending to build go ISO in this PR?

@@ -1098,8 +1098,8 @@ func suggestMemoryAllocation(sysLimit, containerLimit, nodes int) int {
return mem
}

const fallback = 2200
maximum := 6000
const fallback = 3072
Copy link
Member

Choose a reason for hiding this comment

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

I believe this means, we are bumping the mininum required memory for minikube ? if yes and if needed how about be done in an explicit separate PR that can get attention (since affects all drivers)

all other refactors seems to be doing good by unifying the error message wording

</features>
<cpu mode='host-passthrough'>
{{if gt .NUMANodeCount 1}}
{{- if gt .NUMANodeCount 1}}
Copy link
Member

Choose a reason for hiding this comment

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

was this not working in past ? seems to be a new syntax ?

@minikube-pr-bot
Copy link

kvm2 driver with docker runtime

+----------------+----------+---------------------+
|    COMMAND     | MINIKUBE | MINIKUBE (PR 20852) |
+----------------+----------+---------------------+
| minikube start | 44.7s    | 43.9s               |
| enable ingress | 14.8s    | 14.9s               |
+----------------+----------+---------------------+

Times for minikube start: 42.7s 45.0s 41.7s 44.6s 49.5s
Times for minikube (PR 20852) start: 42.8s 43.7s 47.6s 41.8s 43.8s

Times for minikube ingress: 15.0s 14.5s 15.0s 14.5s 15.0s
Times for minikube (PR 20852) ingress: 15.0s 15.5s 14.5s 15.0s 14.5s

docker driver with docker runtime

+----------------+----------+---------------------+
|    COMMAND     | MINIKUBE | MINIKUBE (PR 20852) |
+----------------+----------+---------------------+
| minikube start | 24.5s    | 24.2s               |
| enable ingress | 13.1s    | 13.4s               |
+----------------+----------+---------------------+

Times for minikube start: 26.5s 22.5s 25.2s 22.7s 25.4s
Times for minikube (PR 20852) start: 22.1s 24.1s 26.8s 22.4s 25.6s

Times for minikube ingress: 12.3s 12.8s 13.3s 13.3s 13.8s
Times for minikube (PR 20852) ingress: 13.3s 13.3s 13.3s 13.8s 13.3s

docker driver with containerd runtime

+----------------+----------+---------------------+
|    COMMAND     | MINIKUBE | MINIKUBE (PR 20852) |
+----------------+----------+---------------------+
| minikube start | 22.4s    | 22.0s               |
| enable ingress | 33.6s    | 32.8s               |
+----------------+----------+---------------------+

Times for minikube ingress: 39.0s 39.3s 22.8s 28.3s 38.8s
Times for minikube (PR 20852) ingress: 24.3s 39.3s 38.8s 38.8s 22.8s

Times for minikube start: 22.0s 21.8s 24.7s 21.9s 21.4s
Times for minikube (PR 20852) start: 21.0s 23.7s 21.7s 22.3s 21.3s

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
4 participants