Difference between namespace install vs managed namespace install in Argo Workflows?

Viewed 652

I am trying to install argo workflows and looking at the documentation I can see 3 different types of installation https://argoproj.github.io/argo-workflows/installation/.

Can anybody give some clarity on the namespace install vs managed namespace install? If its a managed namespace, how can I tell the managed namespace? Should I edit the k8's manifest for deployment? What benefit it can provide compared to simple namespace install ?

1 Answers

A namespace install allows Workflows to run only in the namespace where Argo Workflows is installed.

A managed namespace install allows Workflows to run only in one namespace besides the one where Argo Workflows is installed.

Using a managed namespace install might make sense if you want some users/processes to be able to run Workflows without granting them any privileges in the namespace where Argo Workflows is installed.

For example, if I only run CI/CD-related Workflows that are maintained by the same team that manages the Argo Workflows installation, it's probably reasonable to use a namespace install. But if all the Workflows are run by a separate data science team, it probably makes sense to give them a data-science-workflows namespace and run a "managed namespace install" of Argo Workflows from another namespace.

To configure a managed namespace install, edit the workflow-controller and argo-server Deployments to pass the --managed-namespace argument.

You can currently only configure one managed namespace, but in the future it may be possible to manage more than one.

Related