[Proposal] Model Registry UI Installation
Overview
After porting the UI manifests to the root directory as proposed in this issue we wanna improve the use experience installing Model Registry in kubeflow.
Current installation
Kubeflow central dashboard uses profiles to manage user access to resources and namespaces. The default installation experience makes that the user has no access to the default namespace (kubeflow), so, for a regular user to experience Model Registry UI, it should follow this steps:
- Install Kubeflow following the official instructions.
- Deploy Model Registry UI following the instructions under Istio deployment.
- Once deployed in the cluster, modify the central dashboard configmap to add a new section inside
menuLinks
apiVersion: v1
data:
links: |-
{
"menuLinks": [
{
"icon": "assignment",
"link": "/model-registry/",
"text": "Model Registry",
"type": "item"
},
....
- Now you should see Model Registry inside Kubeflow.
- Deploy Model Registry following the instructions to the namespace your user has access to (Profile).
- Now you should see a new Model Registry in Central Dashboard.
Proposal
There's a few things we can do to improve the installation, the main action points would be:
-
Change the Model Registry installation instructions to reflect the steps mentioned above.
-
Tweak the UI to point at the instructions mentioned above to deploy MR in a given namespace rather than the administrator empty view.
-
Talk with the community around how to overlay the central dashboard configmap given that there's already an overlay for kserve
Next steps
Given that most of the use cases with Model Registry is sharing an instance between several users/teams, it might be interesting to enable All Namespaces in the namespace selector as described here, so users can share MR that are out of scope of the Profiles they have access to.
"menuLinks": [
{
"icon": "assessment",
"link": "/model-registry/",
"text": "Model Registry",
"type": "item"
},
We should consider using a different icon since the assessment icon is already used. See https://www.webcomponents.org/element/@polymer/iron-icons/demo/demo/index.html for options
"Given that most of the use cases with Model Registry is sharing an instance between several users/teams, it might be interesting to enable All Namespaces in the namespace selector as described here, so users can share MR that are out of scope of the Profiles they have access to." Sharing is good, but by default there should be hard multi-tenancy. Sharing must be an opt in.
I mean you could even drop the central default instance and just have a proper hard multi-tenancy (100 % isolated) by default and opt-in sharing for private MRs.
"Given that most of the use cases with Model Registry is sharing an instance between several users/teams, it might be interesting to enable All Namespaces in the namespace selector as described here, so users can share MR that are out of scope of the Profiles they have access to." Sharing is good, but by default there should be hard multi-tenancy. Sharing must be an opt in.
Yeah, I agree, @juliusvonkohout, there's a section in the issue for "Next steps" that detail exactly that. I don't think we can get this for 1.10 but I would 100% that's the best solution we can aim in the near future.
I'll close this issue and open a new one just focused on enabling All namespaces for the near future, what do you think @tarilabs @juliusvonkohout @ederign
#848 the same issue.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.