-
Notifications
You must be signed in to change notification settings - Fork 567
CNTRLPLANE-3608: Add nested virtualization support for AWS EC2 NodePools #8681
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?
Changes from all commits
1c88676
3c20084
84e81db
b08cc1c
111f611
4f13ad3
0de600a
ccc4a56
9b6af5e
1f86f20
9a1adc2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -75,6 +75,15 @@ type AWSNodePoolPlatform struct { | |
| // | ||
| // +optional | ||
| Placement *PlacementOptions `json:"placement,omitempty"` | ||
|
|
||
| // cpuOptions specifies CPU configuration for EC2 instances. | ||
| // Supported on C8i, M8i, and R8i instance families. | ||
| // When omitted, AWS defaults are used (nested virtualization is not enabled). | ||
| // To revert to default behavior after setting cpuOptions, remove the entire | ||
| // cpuOptions field rather than clearing individual sub-fields. | ||
| // | ||
| // +optional | ||
| CPUOptions CPUOptions `json:"cpuOptions,omitzero"` | ||
| } | ||
|
|
||
| // PlacementOptions specifies the placement options for the EC2 instances. | ||
|
|
@@ -176,6 +185,31 @@ const ( | |
| AWSResourceTagOverridePolicyDeny AWSResourceTagOverridePolicy = "Deny" | ||
| ) | ||
|
|
||
| // CPUOptions specifies CPU configuration for EC2 instances. | ||
| // At least one field must be specified when cpuOptions is present. | ||
| // | ||
| // +kubebuilder:validation:MinProperties=1 | ||
|
jhjaggars marked this conversation as resolved.
|
||
| type CPUOptions struct { | ||
| // nestedVirtualizationPolicy indicates whether to enable nested virtualization on the instance. | ||
| // Supported on C8i, M8i, and R8i instance families. | ||
| // When omitted, nested virtualization is not enabled (AWS default behavior). | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. One last godoc change from the API perspective: enums should document possibly values and their usage, for example, something like |
||
| // | ||
| // +optional | ||
|
jhjaggars marked this conversation as resolved.
|
||
| // +kubebuilder:validation:Enum=Enabled;Disabled | ||
| NestedVirtualizationPolicy NestedVirtualizationPolicy `json:"nestedVirtualizationPolicy,omitempty"` | ||
| } | ||
|
|
||
| // NestedVirtualizationPolicy indicates whether nested virtualization is enabled or disabled. | ||
| type NestedVirtualizationPolicy string | ||
|
|
||
| const ( | ||
| // NestedVirtualizationEnabled enables nested virtualization on the instance. | ||
| NestedVirtualizationEnabled NestedVirtualizationPolicy = "Enabled" | ||
|
|
||
| // NestedVirtualizationDisabled disables nested virtualization on the instance. | ||
| NestedVirtualizationDisabled NestedVirtualizationPolicy = "Disabled" | ||
| ) | ||
|
|
||
| // MarketType describes the market type for EC2 instances. | ||
| type MarketType string | ||
|
|
||
|
|
||
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Uh oh!
There was an error while loading. Please reload this page.