hashicorp / hashicorp/nomad

Support for child namespaces

Open
#13,650 5 comments 2 reactions 0 assignees View on GitHub
stage/needs-discussion theme/namespaces type/enhancement
Dominant language
Go
Stars
17k
Forks
2.1k
Avg merge
1d 9h
Merged PRs (30d)
105

Description

### Proposal

Vault supports having a root namespace with childs under it. That's very useful for multi tenancy and helps teams organize their stuff in a hierarchical way. It would be very nice if we could match namespaces 1:1 between nomad and vault. This way each namespace would have it own vault and would be under the exact same structure, making it much easier to track.

### Use-cases

Complex systems tend to need isolated environments. This happens either because you need pre prod and prod envs or because you need to isolate different clients. It's possible to create child namespaces in vault than it makes sense to have the same feature in nomad. This way we can keep naming consistent between the two products and properly separate the environments.

### Attempted Solutions

We can use a mixed solution of child namespaces in vault matching independent namespaces in nomad, but it needs some workarounds to get all the naming right and makes much harder to automate that task. In the end it's much more complicated than it looks like and doesn't gives you the hierarchy you have in vault namespaces.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing Nomad's existing namespace model and its Vault integration, then compare them with Vault's hierarchical namespace behavior. Define how parent and child namespaces should be represented and matched, including isolation and naming, and validate the design against the stated multi-tenancy and environment use cases.

Written by the indexing model from the issue text.

Assessment

Domain
infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.