-
Notifications
You must be signed in to change notification settings - Fork 159
Add --fallback-requisite-zones command line argument #1532
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 --fallback-requisite-zones command line argument #1532
Conversation
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: pwschuurman 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 |
617666c
to
55f8eec
Compare
/assign @msau42 |
/cc @amacaskill |
This LGTM. All the test cases you added helps make it clear this still works with volume cloning. The only testcase I didn't see was regional -> regional volume cloning with --fallback-requisite-zones specified / used. |
55f8eec
to
e1633ab
Compare
Thanks, added an extra test case for regional -> regional volume cloning. |
/lgtm |
/cherrypick release-1.12 |
@pwschuurman: new pull request created: #1542 In 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. |
What type of PR is this?
/kind bug
What this PR does / why we need it:
Fixes Regional Persistent Disk provisioning on GKE Autopilot clusters when there is only 0 or 1 zones available across nodes in the cluster.
Which issue(s) this PR fixes:
Fixes #1531
Special notes for your reviewer:
This changes the behavior for Regional PD CreateVolume calls that have only one preferred topology. Previously, if a Regional PD was provisioned with a single preferredTopology (zone), and a list of requisite topologies (Zone), the secondary zone would be selected at random. This differed from the logic in the external provisioner, which picks the secondary zone deterministically, based on the primary preferred topology.
We don't expect this scenario to occur in practice, since the external provisioner will either pass in in at least two preferred topologies, or only one (and currently will fail, unless the
--fallback-requisite-zones
flag is provided). So it is safe to change this behavior as there should not be any real world scenarios relying on the random selection of the secondary zone that would be broken by a change to determinism.Does this PR introduce a user-facing change?: