-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
backendstorage: use fixed volume name #12261
Conversation
/uncc @AlonaKaplan @0xFelix |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jean-edouard 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 |
Required labels detected, running phase 2 presubmits: |
Currently, the backend storage state pod volume name is generated from the vmi name. Pod Volume names must respect [RFC 1123 Label Names](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-label-names). Using the vmi name is not correct since the latter must respect [DNS Subdomain Names](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-subdomain-names), which is more relaxed compared with the first one. This can cause an unschedulable pod in the following cases: - the vmi name contains dots(".") - the resulting volume name has a length > 63 Besides that, there is no reason to reference the vmi name inside the pod volume name, since they must be unique just inside the container pod. Let's just use a fixed name `backendstorage-state`, as we already do, for example, for `private-libvirt`. Signed-off-by: fossedihelm <ffossemo@redhat.com>
aa2f145
to
c1f18a8
Compare
/unhold |
Required labels detected, running phase 2 presubmits: |
/cherrypick release-1.3 |
@fossedihelm: once the present PR merges, I will cherry-pick it on top of release-1.3 in a new PR and assign it to you. 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-sigs/prow repository. |
@fossedihelm: new pull request created: #12278 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-sigs/prow repository. |
@fossedihelm: #12261 failed to apply on top of branch "release-1.0":
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-sigs/prow repository. |
@fossedihelm: new pull request created: #12279 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-sigs/prow repository. |
@fossedihelm: new pull request created: #12280 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-sigs/prow repository. |
What this PR does
Currently, the backend storage state pod volume
name is generated from the vmi name.
Pod Volume names must respect RFC 1123 Label Names.
Using the vmi name is not correct since the latter must respect DNS Subdomain Names,
which is more relaxed compared with the first one.
This can cause an unschedulable pod in the following cases:
Besides that, there is no reason to reference the vmi name inside the pod volume name,
since they must be unique just inside the container pod.
Let's just use a fixed name
vm-state
, as we already do, for example, forprivate-libvirt
.Before this PR:
Using tpm results in an unschedulable pod if the vmi name contains dots(".")
After this PR:
tpm can be used with vmis containing dots in their names.
Why we need it and why it was done in this way
The following tradeoffs were made:
The following alternatives were considered:
Links to places where the discussion took place:
Special notes for your reviewer
Release note