-
Notifications
You must be signed in to change notification settings - Fork 219
Add support for nested virtualization on GCE instances #1537
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
base: main
Are you sure you want to change the base?
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: jwmay2012 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 |
Hi @jwmay2012. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the 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. |
✅ Deploy Preview for kubernetes-sigs-cluster-api-gcp ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
// +optional | ||
GuestAccelerators []Accelerator `json:"guestAccelerators,omitempty"` | ||
|
||
// EnableNestedVirtualization specifies whether to enable nested virtualization or not |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was wondering if we should nest this under advancedMachineFeatures
to reflect the GCP API, but to be honest I'm not sure that "advanced" is really a semantic grouping, so I think I prefer the flattened structure. It's always risky to change the structure because we can't predict the future evolution of the upstream API, but in this case I think it's fine!
https://cloud.google.com/compute/docs/instances/nested-virtualization/overview | ||
NOTE: Nested virtualization must be enabled at instance creation time and cannot be changed after the instance is created. No newline at end of file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we generally treat machines as immutable anyway - i.e. we would launch a new machine, even if the field was mutable. My understanding could be out of date though.
Not sure there's any harm in the NOTE though, but I don't think it's going to be a problem in practice
/ok-to-test |
/retest |
What type of PR is this?
/kind feature
What this PR does / why we need it:
Adds support for enabling nested virtualization on GCE instances via the
enableNestedVirtualization
field in GCPMachineSpec. This maps directly to GCP's AdvancedMachineFeatures.EnableNestedVirtualization API field.This enables running VMs inside GCE instances for container sandboxes, KVM, QEMU, etc.
Special notes for your reviewer:
This is a simple boolean field that maps directly to the GCP API. The field must be set at instance creation time and cannot be changed after creation (GCP limitation).
TODOs:
Release note: