Argo CD
GitOps controller — syncs every tooling-plane workload from Git.
Dex · OpenLDAP sign-in
Agent book: setup & usage →SYSTEMS NOMINAL
Back matter · Appendix
The book’s reference tables, kept in the back the way books keep them: the status snapshot, every service’s name, and the one front door they all share.
The lab at a glance
Rendered at build time from inventory.json.
Snapshot: 2026-10-02T04:19:30.275541Z ·
source: recorded
Tooling plane
9
8 running · 1 planned
Docker Desktop Kubernetes
Workload cluster
3
apps deployed · 3 healthy
OpenShift 4.22 (CRC)
Operators
1
Supply chain
partial
covered in Chapter 3
rhels/team#107
| BSN | Language | Namespace | IaC repo | Health |
|---|---|---|---|---|
| app1001 | Java | app1001-dev | rhels/IAC.app1001 | Healthy |
| app1002 | Python | app1002-dev | rhels/IAC.app1002 | Healthy |
| app1003 | Redis-backed | app1003-dev | rhels/IAC.app1003 | Healthy |
Service directory
The lab’s front doors, as of the October 2026 ingress migration. This is a directory, not a status board — the cards don’t probe anything; every name resolves on the tailnet only.
Every name below is one Ingress behind the single tailnet front door — see “The front door” below.
GitOps controller — syncs every tooling-plane workload from Git.
Dex · OpenLDAP sign-in
Agent book: setup & usage →Container registry — images, charts, and vulnerability scans.
LDAP auth · built-in admin is break-glass only
Agent book: setup & usage →Secrets — the lab KV store (internal PKI planned).
Token auth · unseal key lives in the owner’s Keychain
Agent book: setup & usage →Dashboards for the tooling plane’s observability stack.
Viewer access open · local admin break-glass
Agent book: setup & usage →Metrics for the tooling plane.
No login · tailnet only
Agent book: setup & usage →Alert routing for the tooling plane.
No login · tailnet only
Agent book: setup & usage →This site — the showcase at /, the private agent book at /agent-docs/.
No login · tailnet only
Agent book: setup & usage →The namespace-provisioning POC: an MCP server in front of the lab’s one identity store.
mcp.rhels.com/mcp
Agent-first namespace provisioning — an app team’s agent asks, the platform answers.
LDAP bind login · opaque session token
Agent book: setup & usage →ldap · TCP 389
The lab’s one identity store — users plus per-BSN groups for every service above.
Bind · directory users
Agent book: setup & usage →Reached over the lab tunnel; sign-in is OpenShift OAuth backed by the same OpenLDAP.
The workload cluster’s web console.
OpenShift OAuth · LDAP identity provider
Agent book: setup & usage →OpenShift GitOps — delivers the agent platform onto CRC.
Log in via OpenShift
Agent book: setup & usage →Dashboards on the workload cluster.
OpenShift OAuth · no anonymous access
Agent book: setup & usage →The front door
The port-forward sprawl is gone. A Tailscale operator fronts a single ingress controller on the tailnet; ingress-nginx routes by name; cert-manager issues a Let’s Encrypt certificate for every name (DNS-01 via Cloudflare — the home connection can’t take inbound HTTP challenges). Adding a service is now one Ingress plus one DNS record.
Browser / agent
tailnet client
Tailscale operator
one front door
ingress-nginx
routes by name
Service
*.rhels.com
Connectivity
Tooling host reachable from the workload cluster over a private tailnet; SSH tunnel exposes the CRC API locally.
The directory above lists only the lab’s own rhels.com service names. By design, this site never publishes IP addresses, tailnet hostnames, tunnels, or credentials.