@@ -38,6 +38,19 @@ helm --kube-context kind-osmo upgrade --install osmo deployments/charts/osmo \
3838 --values deployments/charts/osmo/profiles/quickstart.yaml \
3939 --set-string compute.backendName=default \
4040 --wait \
41+ --wait-for-jobs \
42+ --timeout 20m
43+ ```
44+
45+ After the first installation bootstraps the retained master-encryption-key
46+ Secret, disable its one-time bootstrap Job and Secret-creation permission:
47+
48+ ``` bash
49+ helm --kube-context kind-osmo upgrade osmo deployments/charts/osmo \
50+ --namespace osmo \
51+ --reuse-values \
52+ --set secrets.masterEncryptionKey.bootstrap.enabled=false \
53+ --wait \
4154 --timeout 20m
4255```
4356
@@ -51,7 +64,56 @@ See the [`osmo` quick-start guide](osmo/README.md#quick-start) for prerequisite
5164installation, browser and CLI access, a hello-world workflow, capacity,
5265troubleshooting, cleanup, and the profile's non-production limitations.
5366
54- ## Production Shape
67+ ## Self-contained production
68+
69+ Use ` profiles/self-contained.yaml ` to host the control plane, compute plane,
70+ PostgreSQL, Valkey, and object storage in one production Kubernetes cluster.
71+ The cluster must provide KAI Scheduler, the CloudNativePG operator, and a
72+ default dynamic StorageClass. It must also provide a NetworkPolicy-enforcing
73+ CNI, at least four schedulable nodes, the cluster network CIDRs, and a TLS edge
74+ in front of the chart's ClusterIP gateway. The current workflow policy requires
75+ IPv4 pod and Service CIDRs. Separately, register an OIDC client with an identity
76+ provider reachable by users and OSMO gateway workloads. The provider may run
77+ inside or outside Kubernetes. Its tokens must contain an array-valued ` roles `
78+ claim and assign ` osmo-admin ` to an initial operator. The chart creates and
79+ retains the workflow namespace and runs OAuth2 authentication plus OSMO
80+ semantic authorization behind the edge.
81+
82+ ``` bash
83+ kubectl create namespace osmo
84+ kubectl --namespace osmo create secret generic osmo-oauth2-proxy \
85+ --from-literal=client_secret=' <oidc-client-secret>' \
86+ --from-literal=cookie_secret=' <32-byte-random-cookie-secret>'
87+ helm dependency build deployments/charts/osmo
88+ cp deployments/charts/osmo/examples/self-contained-environment-values.yaml \
89+ self-contained-environment-values.yaml
90+ # Edit self-contained-environment-values.yaml for the target environment.
91+ helm upgrade --install osmo deployments/charts/osmo \
92+ --namespace osmo \
93+ --values deployments/charts/osmo/profiles/self-contained.yaml \
94+ --values self-contained-environment-values.yaml \
95+ --wait \
96+ --wait-for-jobs \
97+ --timeout 30m
98+ ```
99+
100+ After the first installation bootstraps the retained master-encryption-key
101+ Secret, persist ` secrets.masterEncryptionKey.bootstrap.enabled: false ` in the
102+ environment overlay and apply it. The immediate Helm cleanup transaction is:
103+
104+ ``` bash
105+ helm upgrade osmo deployments/charts/osmo \
106+ --namespace osmo \
107+ --reuse-values \
108+ --set secrets.masterEncryptionKey.bootstrap.enabled=false \
109+ --wait \
110+ --timeout 30m
111+ ```
112+
113+ See the [ ` osmo ` self-contained guide] ( osmo/README.md#self-contained-production )
114+ for availability, storage, identity, network-isolation, backup, and edge details.
115+
116+ ## Other production shapes
55117
56118For production, use environment-specific unified chart values or the legacy
57119chart interfaces required by an existing deployment:
@@ -65,5 +127,5 @@ chart interfaces required by an existing deployment:
65127 and compute clusters. Configure the unified chart's
66128 ` secrets.backendApiTokens.credentials[].existingSecret.name `
67129 and ` compute.authentication.existingSecret ` to consume the matching Secret.
68- Managed backend-token and MEK generation is intended only for single-cluster
69- development where both planes consume namespace-local Secrets .
130+ The self-contained profile can generate these namespace-local Secrets when
131+ both planes run in one cluster .
0 commit comments