-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
fix: resolve service name conflict for notebooks and tensorboards #7468
base: master
Are you sure you want to change the base?
fix: resolve service name conflict for notebooks and tensorboards #7468
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: 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 |
3c9608b
to
587555e
Compare
We need to consider what will happen to existing TensorBoard instances when this update is applied to the cluster. We should test what happens, it looks like we are setting the |
@thesuperzapper Could we re-run the tests it seems like the unit test of notebook-controller fails on some dependency, and is unrelated to the changes in the PR. 🙏🏻 Also, the integration tests and multi-arch build for the same pass. 😄 |
@mishraprafful can you please check what happens to the existing resources when you upgrade from the old version of the controller to the new version (specifically, does it remove the old If it leaves it, we should consider having the controller look for |
@mishraprafful There are failling tests. Can you take a look? |
Sure @rimolive Looking into it. |
Also, there was a historical PR to fix this issue, which also accounted for the case that the name is too long #6701 They put 63 characters, but I am not sure if VirtualServices/Services can actually be longer than that? |
@rimolive the tests are failing to pull some dependencies, the tests pass when I try them locally. Maybe we could re-trigger the tests as this seems like an intermediate issue. Feel free to point out if I'm missing something 🙌🏻 |
@thesuperzapper Service name has to be less than 64
|
Just an update: now that #7589 is merged, I'm testing a last few things, should add some more commits soon to finish the functionality. |
966afe2
to
774f001
Compare
cd2229d
to
4a57f11
Compare
@thesuperzapper @rimolive @kimwnasptd All issues addressed, tests passing, PR description updated. 🚀 |
@mishraprafful I am going to push this to 1.9.1, because we came across a better way to do this while building Notebooks 2.0. The key idea is to use the Obviously, this means we need to account for random names (which is also great for backwards compatibly). Rather than assuming the If there are no such resources, we can create a new one using the We will need to be careful about the |
616cc4a
to
1816a25
Compare
1816a25
to
26f7c81
Compare
Signed-off-by: mishraprafful <mishraprafful@gmail.com>
Signed-off-by: mishraprafful <mishraprafful@gmail.com>
Signed-off-by: mishraprafful <mishraprafful@gmail.com>
Signed-off-by: mishraprafful <mishraprafful@gmail.com>
b0af1d6
to
a8fe655
Compare
@thesuperzapper Apologies for the huge delay (life happened 😉 ), but I've updated the PR according to your last comment now. |
Thought that the default advice is to use deterministic names and take advantage of these subsequently, as per https://github.com/kubernetes-sigs/controller-runtime/blob/main/FAQ.md#q-my-cache-might-be-stale-if-i-read-from-a-cache-how-should-i-deal-with-that. Using generateName means extra work, as per that FAQ
|
After a quick look, seems to me Indexer is not used, as is in Notebooks 2.0
|
Related Issues/PRs
Closes kubeflow/dashboard#50
Changes
Notebook Controller
service
,virtualService
andstatefulset
resource to includenb-{notebook_name}-
withgenerateName
servicename
invirtualService
after reconciliation of serviceTensorboard Controller
name
ofservice
andvirtualService
totb-{notebook-name}
tensorboard-name
in pods and for service label selectornotebook-name
in serviceselector
Comments