This guide walks you end-to-end through a hybrid deployment on OpenShift — the Data Plane, TrustGate, and Firewall run in your OpenShift cluster; the Control Plane UI, API, and Scheduler run on NeuralTrust SaaS. For the full-stack alternative, see OpenShift self-hosted.Documentation Index
Fetch the complete documentation index at: https://docs.neuraltrust.ai/llms.txt
Use this file to discover all available pages before exploring further.
What you’ll end up with
| Component | Location | Replicas |
|---|---|---|
| Data Plane API, worker, Kafka Connect | Your OpenShift cluster | 2, 1, 1 |
| TrustGate admin / gateway / actions | Your OpenShift cluster | 2 each |
| Firewall gateway + 5 workers | Your OpenShift cluster | 2 + 5 |
| ClickHouse, Kafka, PostgreSQL, Redis | Your OpenShift cluster (or external) | 1 each |
| Control Plane API, UI, Scheduler | NeuralTrust SaaS | — |
Prerequisites
| Resource | Recommended |
|---|---|
| OpenShift version | 4.10+ |
| CPU pool node spec | 8 vCPU / 32 GiB |
| Min CPU nodes | ≥ 4 across 3 AZs. Drop to 3 if Firewall workers run on GPU nodes. |
| GPU pool (optional, for GPU Firewall) | 4 vCPU / 16 GiB + 1 × NVIDIA GPU — 5 nodes (one per default Firewall worker). Requires NVIDIA GPU Operator. |
| Storage | Cluster default; for ROSA, gp3-csi; for ARO, managed-premium; for ODF, ocs-storagecluster-ceph-rbd |
| DNS | OpenShift wildcard or custom domain (e.g. platform.example.com) |
| Certificates | Router default cert, custom Route TLS, or cert-manager + Routes |
| Image pull | gcr-keys.json from NeuralTrust |
| NeuralTrust tenant | A SaaS Control Plane tenant — request from [email protected] |
Step 1 — Create the project
Step 2 — Create and link the image pull secret
gcr-secret to the component-specific service accounts as well (see Step 7).
Step 3 — Write your values overlay
Save asmy-values.yaml:
Using external managed services
Step 4 — Install
Step 5 — Check Routes and DNS
| Route | Host |
|---|---|
data-plane-api | data-plane-api.<domain> |
trustgate-admin | trustgate-admin.<domain> |
trustgate-gateway | trustgate-gateway.<domain> |
trustgate-actions | trustgate-actions.<domain> |
*.apps.<cluster>...), Routes are reachable immediately. For a custom domain, add CNAME records pointing to your router’s canonical hostname.
Step 6 — Custom TLS for Routes (optional)
By default, Routes use the OpenShift router’s wildcard certificate. To bring your own cert, attach it to each Route:Step 7 — Link pull secret to component service accounts
After install, ensure every component service account can pull from the private registry:oc get sa -n neuraltrust.)
Step 8 — Enroll the Data Plane with NeuralTrust SaaS
Connect the Data Plane
Team Settings → Advanced → Connect Data Plane. Provide the Data Plane Route URL (
https://data-plane-api.<domain>), the JWT secret, and the region. See Platform › Advanced.Step 9 — Send traffic through TrustGate
Point your AI applications at the TrustGate Route:https://trustgate-gateway.<domain>. For gateway / route / plugin configuration, see TrustGate › Getting started.
Verification
Upgrading
Migration to self-hosted
control-plane-api.<domain>, control-plane-app.<domain>, control-plane-scheduler.<domain>. See Self-hosted on OpenShift for the full picture.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
Pods stuck ImagePullBackOff | gcr-secret not linked to the SA | oc secrets link <sa> gcr-secret --for=pull -n neuraltrust |
| Route returns 503 | Backend pods not Ready | oc get pods — check readiness probes |
| Pod SCC error | Custom UID conflicts | Verify you haven’t overridden podSecurityContext to a fixed UID |
ClickHouse Permission denied on PVC | UID/GID conflict | The chart sets OpenShift-aware SCC; check that you haven’t disabled it |
| TrustGate can’t reach Firewall | Service name mismatch | Default is http://firewall:80 |
Related guides
- Self-hosted deployment on OpenShift — Control Plane in your cluster
- OpenShift overview — cluster prerequisites and OpenShift-specific defaults
- Deployment models — hybrid vs self-hosted comparison
- Image catalog — what runs in hybrid mode
- Secrets management — auto-generation, External Secrets Operator
- Firewall deployment — GPU workers on OpenShift