Skip to content
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

Stop considering nodes without kubevirt.io/schedulable label when finding lowest TSC frequency on the cluster #10182

Merged

Conversation

iholder101
Copy link
Contributor

@iholder101 iholder101 commented Jul 27, 2023

What this PR does / why we need it:
This is a follow-up to #10169.
It basically reverts the previous changes and instead filters nodes without kubevirt.io/schedulable label from the TSC discovery.

For more info:

Fixes #10181

Release note:

Stop considering nodes without `kubevirt.io/schedulable` label when finding lowest TSC frequency on the cluster

@kubevirt-bot kubevirt-bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. dco-signoff: no Indicates the PR's author has not DCO signed all their commits. size/M labels Jul 27, 2023
… and spec.Unschedulable"

This reverts commit 27d3636.

Signed-off-by: Itamar Holder <iholder@redhat.com>
…ter nodes"

This reverts commit bfd2f1d.

Signed-off-by: Itamar Holder <iholder@redhat.com>
Signed-off-by: Itamar Holder <iholder@redhat.com>
@iholder101 iholder101 force-pushed the bugfix/revert-tsc-master-nodes branch from 62b5598 to 6adf3e5 Compare July 27, 2023 10:34
@kubevirt-bot kubevirt-bot added dco-signoff: yes Indicates the PR's author has DCO signed all their commits. and removed dco-signoff: no Indicates the PR's author has not DCO signed all their commits. labels Jul 27, 2023
@iholder101
Copy link
Contributor Author

/cc @rmohr

@iholder101
Copy link
Contributor Author

/retest-required

@acardace
Copy link
Member

/approve

@kubevirt-bot kubevirt-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 28, 2023
}

return true
return node.Labels[virtv1.NodeSchedulable] == "true"
Copy link
Member

Choose a reason for hiding this comment

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

I just want to point out that this will be changed to false if e.g. the virt-handler daemonset needs to pull an image for a long time during update, or if there are other issues on virt-handler. As a consequence we may even exclude this node while there are actually VMs running on it.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thank you @rmohr, that's a good point!
Added, PTAL.

Add two new filter predicates that would be used to filter
nodes for TSC frequency calculations:

Or(): Can be used to express logical or between multiple
filters, e.g. Or(filter1, filter2).

IsNodeRunningVmis(vmiStore): returns a filter that includes
the node if VMIs are running on it.

This way nodes that are considered for TSC frequency calculations
need to be either schedulable or have VMIs running on it.

Signed-off-by: Itamar Holder <iholder@redhat.com>
Signed-off-by: Itamar Holder <iholder@redhat.com>
@iholder101
Copy link
Contributor Author

/test pull-kubevirt-e2e-k8s-1.26-sig-storage

Copy link
Member

@rmohr rmohr left a comment

Choose a reason for hiding this comment

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

/approve
/lgtm

Let's see that we can investigate if we can get a clearer signal from the daemonset if we expect our daemon to be there on the long term, replacing this logic.

@kubevirt-bot kubevirt-bot added the lgtm Indicates that a PR is ready to be merged. label Aug 1, 2023
@kubevirt-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: acardace, rmohr

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

@kubevirt-commenter-bot
Copy link

/retest-required
This bot automatically retries required jobs that failed/flaked on approved PRs.
Silence the bot with an /lgtm cancel or /hold comment for consistent failures.

@kubevirt-bot
Copy link
Contributor

@iholder101: 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
pull-kubevirt-e2e-k8s-1.25-sig-compute 2410c96 link unknown /test pull-kubevirt-e2e-k8s-1.25-sig-compute

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.

@kubevirt-bot kubevirt-bot merged commit 2e43a39 into kubevirt:main Aug 2, 2023
34 of 36 checks passed
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. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. lgtm Indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/L
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Do not consider unschedulable nodes when finding lowest TSC frequency
5 participants