Sign up to take part
Registered users can ask their own questions, contribute to discussions, and be part of the Community!
Added on September 6, 2024 1:31AM
Likes: 0
Replies: 4
A user must be Admin on the Automation node project in order to be able to deploy a bundle there. But Admin permissions in Production seems like too much for an ordinary user to have given the risk of impacts to production assets.
Should deployment then be restricted to a smaller set of users, such as project leads or a dedicated ML support team?
Interested to hear what deployment processes and governance people are using in practice.
"A user must be Admin on the Automation node project in order to be able to deploy a bundle there"
Not really correct. Not sure where you got this from. You can certainly have non-admin users doing deployments. You just need to permission all the relevant areas properly. The first project deployment into Automation node always needs a bit more work as you need to set the project permissions in the Automation node. This is because Dataiku does not move the project permissions from the Design node as this will usually be different in the Automation node.
Your question should be answered by your Operating Model. Different organizations have different needs on how to use and manage the platform. But maybe there are some useful golden nuggets you can get out of our story.
We have three types of users that have permission to deploy something to the next MLOps stage: a platform admin with God-mode power, a less previleged admin from the business department and a Team Lead.
We have two types of workloads, this is how the process goes:
We don't give the admin form the business department global admin permissions, but project level admin permissions. We use a script in the project creation macro to give them project admin rights on every newly created project.
This has been my experience over the past few years and I also just set up a new test project to validate it (see below); Dataiku Support also verified that "a user must be a project admin or project owner in order to deploy a bundle to the automation node".
To be clear, here is the scenario I have just tested:
Not sure how you have managed to achieve this - what do you mean by "you need to set the project permissions in the Automation node"? Are you actually giving users Admin permission here in order to be able to deploy, when they're not the project owner?
Thanks Jonathyan, that model makes a lot of sense. This does seem ideal, as an "ordinary" user who is just contributing to the project probably shouldn't have the ability to deploy to production due to the risk. We do plan to think through our ML operating model and find something that works for us given our use cases and resourcing.