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
Add support for Ultra Disks as Persistent Volumes #2421
Add support for Ultra Disks as Persistent Volumes #2421
Conversation
Welcome @damdo! |
Hi @damdo. 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/test-infra repository. |
@@ -86,6 +86,10 @@ type AzureMachineSpec struct { | |||
// +optional | |||
AdditionalTags Tags `json:"additionalTags,omitempty"` | |||
|
|||
// AdditionalCapabilities specifies additional capabilities enabled or disabled on the virtual machine. | |||
// +optional | |||
AdditionalCapabilities *AdditionalCapabilities `json:"additionalCapabilities,omitempty"` |
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.
So I see that the Azure SDK type spec defines this AdditionalCapabilities
struct to contain the UltraSSD config... I wonder if we want to expose that to capz users, or simply add UltraSSDEnabled
to the existing flat configuration property structure in AzureMachineSpec
.
Thoughts @CecileRobertMichon @mboersma
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.
lol I see this was discussed at length in the linked issue
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.
Yeah :) we agreed with @CecileRobertMichon on going with this design.
Thanks for this @damdo! |
/ok-to-test |
@damdo can you do the following:
This will allow us to get E2E test signal on this PR before it merges, and to better ensure its functionality going forward. Thanks! |
@jackfrancis the base template is published as a reference template for users and is the default flavor that If we want to test it in e2e, we should add it to one of the test templates as a kustomize patch. |
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.
Thanks for putting this together @damdo, looks good, just one nit in the documentation I found
@damdo I tried to test this manually and got this error:
We'll need to automatically set the |
- add AdditionalCapabilities struct field, add UltraSSDEnabled field support - add AdditionalCapabilities and UltraSSDEnabled tests - add Ultra disks as Persistent Volumes docs - add AdditionalCapabilities, UltraSSDEnabled generated manifests & conversion
@damdo I confirmed that the following template addition to a dataDisk spec works in this PR:
So let's get the |
@CecileRobertMichon I cross-referenced your docs with the regions we test and all of our testing regions support zones + ultrassd. After this PR merges I'll start testing a change where we confiure our etcd data disk to use ultrassd in reference templates. I think that is in fact a "best practice" configuration. |
Hey @jackfrancis, thanks for manually testing this. If I'm understanding the error correctly here, this is strictly related to specifying a Data Disk of type I think is something not strictly related or introduced in this PR, even though part of the same overall big feature (Ultra Disks). That said I completely agree with your suggestions for fixing this. Thanks! |
/test pull-cluster-api-provider-azure-e2e |
@jackfrancis I've created a bug issue #2429 to track that |
@damdo sgtm! thanks for the add'l PR! |
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.
/lgtm
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jackfrancis 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 |
What type of PR is this?
/kind feature
What this PR does / why we need it:
Following the design conversations held on #1852
we are introducing a new
AdditionalCapabilities
field in the Machine spec which will allow us to specify these types of capabilities on Azure Machines.More specifically, this change is introduced to allow users to specify the
UltraSSDEnabled
Additional Capability, which will instruct Azure to allow or disallow the use of Ultra Disks with an host instance. More on this on the linked issue.Which issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)
format, will close the issue(s) when PR gets merged):Fixes #1852
TODOs:
Release note: