Hello All,
Ran into a hurdle on tenant design and I really need some pointers. A bit of context: I am trying to utilize Octopus to bootstrap new Kubernetes clusters. Whenever we deploy a new cluster, we also need to bootstrap it with the following applications:
- Load balancer controller
- Istio
- Secrets CSI Driver
- Vault CSI Provider
Cluster-specific values such as vault_mount_path
are injected into the project using the tenant variable template
.
Because these clusters are managed by different teams. We have decided to approach it with multiple tenants per team, one tenant per region
, so for example, Team-A deploying to us-east-1
and us-west-1
will have these tenants: Team-A us-east-1
Team-A us-west-1
. But we started to run into problems when we have to deploy more than one Kubernetes cluster in a single region (tenant) because each cluster needs to define its own cluster-specific values that are used during deployment as mentioned above, which isn’t possible with tenant variable, which will affect all clusters within a tenant. For example, the vault_mount_path
is calculated out using the name of the cluster.
So my question is: is there any way to define cluster-specific values that I can pass into the project for deployment? Or would you suggest that I re-model my tenant design? Thank you very much in advance!