volcano icon indicating copy to clipboard operation
volcano copied to clipboard

Namespace-scoped Queues and Numatopologies resources

Open antonipp opened this issue 2 years ago • 0 comments

What would you like to be added:

Currently both Queues and Numatopologies are defined as cluster-scoped resources:

  • https://github.com/volcano-sh/volcano/blob/74b211451dbc16618bfd2d51a7288f0c0268551f/config/crd/v1beta1/scheduling.volcano.sh_queues.yaml#L20
  • https://github.com/volcano-sh/volcano/blob/74b211451dbc16618bfd2d51a7288f0c0268551f/config/crd/v1beta1/nodeinfo.volcano.sh_numatopologies.yaml#L19

What is the reason for that? Would it be possible to make them namespace-scoped?

Why is this needed:

The use-case we have is that we operate a multi-tenant cluster with multiple teams using different Volcano queues. We want to put in place RBAC with least-privilege access so that each team can only touch the queues they own.

All of our access-control is currently based on Kubernetes namespaces with each team owning resources in their individual namespaces. With cluster-scoped resources, this model is hard to maintain since we are only able to reference the queues by name in the ClusterRoles we create (docs) which doesn't scale very well.

antonipp avatar Aug 26 '22 12:08 antonipp