Clusters
Deployed and supported. The fields and commands described here are stable within version v1alpha1.
StackNGO runs in several clusters, named <provider>-<location>-<n> (for example
ovh-gra-0). A tenant is born in one cluster, then can open in others. Your permissions are the
same everywhere; your applications live in the cluster where you deploy them.
Choose the cluster
In the console, the Cluster menu, next to the tenant menu, lists the available clusters. Everything you see next (applications, secrets, sites, monitoring) belongs to the selected cluster.
With the CLI, the cluster is the one of the API you target. The global API
https://api.dev.stackngo.fr directs you to the default cluster.
Open your tenant in another cluster
If you choose a cluster where your tenant does not exist yet, the console shows a button such as "Créer le tenant acme sur ovh-sbg-0" (create tenant acme in ovh-sbg-0). Creation is immediate when two conditions are met:
- the cluster is open to your tenant: some clusters are open to everyone, others on request to support;
- you hold the
tenant:createpermission for that cluster. Tenant administrators have it by default; you can grant or revoke it for each member with a policy:
{
"Version": "1",
"Statement": [
{ "Effect": "Allow", "Actions": ["tenant:create"], "Resources": ["cluster/ovh-sbg-0"] }
]
}
What the new cluster inherits
| Inherited | Not inherited |
|---|---|
| The tenant name | Applications, secrets and sites: the cluster starts empty |
| Your permissions, policies and bindings (shared by all clusters) | |
| The plan (tier) of the original cluster, adjustable per cluster afterwards | |
| The billing account |
The primary cluster
Each tenant has a primary cluster: the first one where it was created. It is the only one where what is shared by all its clusters is changed: permissions (policies, bindings, OIDC trusts), open clusters and the billing account.
From another cluster, those pages are read-only: the console shows a banner with a button to
switch to the primary cluster, and the CLI answers with a message naming it (STNG_API_URL
targets its API). Support can change the primary cluster, for example if a cluster closes.
Remove a tenant from a cluster
sng tenant destroy removes the tenant from the targeted cluster only. The primary cluster goes
last: while the tenant lives elsewhere, removal there is refused and the message lists the other
clusters.