You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: charts/ontoserver-extras/values.schema.json
+17Lines changed: 17 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -22,6 +22,11 @@
22
22
"default": "",
23
23
"description": "Override the Kubernetes service name Varnish proxies to. Defaults to RELEASE-ontoserver-service (the ontoserver chart's service). Only needed when the extras chart and ontoserver chart have different release names."
24
24
},
25
+
"closureBackend": {
26
+
"type": "string",
27
+
"default": "",
28
+
"description": "Kubernetes hostname for the $closure operation backend. The $closure FHIR operation is stateful — set to a stable pod hostname (e.g. RELEASE-statefulset-0.RELEASE-ontoserver-headless) for scaled deployments. Empty string disables dedicated $closure routing."
Copy file name to clipboardExpand all lines: charts/ontoserver-extras/values.yaml
+6Lines changed: 6 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,12 @@ varnish:
4
4
enabled: false
5
5
## @param varnish.backendServiceName Kubernetes service name for the Varnish backend (defaults to RELEASE-ontoserver-service)
6
6
backendServiceName: ""
7
+
## @param varnish.closureBackend Kubernetes hostname for the $closure operation backend. The $closure FHIR operation is stateful — it requires all requests to hit the same instance. Set to a stable pod hostname (e.g. RELEASE-statefulset-0.RELEASE-ontoserver-headless) when using a scaled deployment. Empty string disables dedicated $closure routing.
8
+
closureBackend: ""
9
+
## @param varnish.replicas Number of Varnish pod replicas. For a scaled Ontoserver deployment consider 2+ to avoid a single point of failure. Note: multiple replicas each maintain their own independent cache.
10
+
replicas: 1
11
+
## @param varnish.graceSeconds Seconds to serve stale cached content when the backend is unavailable (e.g. during a rolling update). Set to 0 to disable grace mode.
Copy file name to clipboardExpand all lines: charts/ontoserver/README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -67,7 +67,7 @@ The recommended production topology separates content development from publicati
67
67
68
68
**Development / local** — ephemeral storage with the sidecar PostgreSQL avoids cloud disk provisioning. The index is rebuilt from syndication feeds on each start, which is acceptable at small scale.
69
69
70
-
> **`$closure`note:** The [`$closure` FHIR operation](https://www.hl7.org/fhir/conceptmap-operation-closure.html) is stateful. On a scaled read-only cluster it requires either sticky sessions (client-side routing) or a dedicated stateful instance alongside the cluster — the scaled cluster provides no built-in sticky session support.
70
+
> **`$closure`routing:** The [`$closure` FHIR operation](https://www.hl7.org/fhir/conceptmap-operation-closure.html) is stateful — all requests for a given closure table must reach the same instance. For scaled StatefulSet deployments, the chart automatically creates a dedicated `RELEASE-ontoserver-pod0-service` that selects only pod-0, and routes `/fhir/ConceptMap/$closure` to it in both the Gateway HTTPRoute and Ingress — before the catchall `/` rule. This keeps `$closure` functional on a scaled cluster without requiring client-side sticky sessions. The routing is active whenever `deployment.kind: StatefulSet` and `deployment.type: scaled`, regardless of other settings.
71
71
>
72
72
> **Feeds must stay available:** New instances (after a pod is rescheduled or the cluster is scaled up) rebuild their local index from the syndication feeds that originally loaded the content. If those feeds become unavailable, new instances cannot complete startup and will not become ready.
0 commit comments