-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Bug 2025868: Check HyperVGenerations for instance type #5509
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
Bug 2025868: Check HyperVGenerations for instance type #5509
Conversation
|
@rna-afk: This pull request references Bugzilla bug 2025868, which is valid. The bug has been moved to the POST state. The bug has been updated to refer to the pull request using the external bug tracker. 3 validation(s) were run on this bug
Requesting review from QA contact: DetailsIn response to this:
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. |
9d063a9 to
2284454
Compare
2284454 to
ed4cdad
Compare
|
I believe (am trying to get images in order to test) that Gen2 VMs may work with compute nodes when we use images from the Azure Marketplace. Therefore, I think we should only run this validation against control plane nodes. Or perhaps also against compute nodes when a marketplace image is not being used. |
If an instance type that does not support HyperVGeneration version 1 then terraform returns an error mentioning there's support only for V1. Adding a check during install config to check for the versions supported by the instance type provided.
ed4cdad to
ae6805b
Compare
The install config does not support using marketplace images for the compute nodes yet, though, right? It still requires the user manually adjusting the machineset manifests. |
Ah, yes, that is correct. So you can ignore my comment and once we add support in the install config we can skip this check (assuming the images do support Gen2). |
|
On closer inspection, I believe what is happening is that we are creating the cluster image with the default Gen1 value (see https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/image#hyper_v_generation). This is going to create all VMs created from the image as Gen1. I believe this image is used throughout the lifespace of the cluster. I think it would be worth investigating whether there are any gen1-only instance types we want to support. Otherwise, I think we could just set the image to have generation = 2. I will try a test install with that configuration. |
|
By changing the |
|
Interesting so instead of this, can we just pass the generation value to terraform? |
I have been looking into this more and I think the best course of action is to add support for both Gen1 & Gen2 VMs in our next version. I was hoping we could either just choose all Gen1 or Gen2, but I think the Instance Type landscape is too diverse to do that. So I think what we should do as a new feature, is have the installer create two images, a gen1 and gen2 image. We would use code similar to what you have in this PR, but when an instance type has only gen1, we would set the gen1 image in the machineset and pass the values through to terraform for the masters. Otherwise we default to the gen2 image. I'm not sure if code changes would be needed for the machine-api operator. I don't think they would be needed, but it would be necessary if a new machineset were created that a compatible image and instance type were specified. This would probably just be a matter of documentation. So until we add this feature I am happy with this approach. |
|
/test e2e-azure |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: patrickdillon The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
1 similar comment
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
8 similar comments
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
@rna-afk: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions 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. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/skip e2e-alibaba |
|
e2e-alibaba is failing and was set to required by mistake. Overriding it. /skip |
|
@rna-afk: All pull requests linked via external trackers have merged: Bugzilla bug 2025868 has been moved to the MODIFIED state. DetailsIn response to this:
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. |
If an instance type that does not support HyperVGeneration version 1
then terraform returns an error mentioning there's support only for
V1. Adding a check during install config to check for the versions
supported by the instance type provided.