Repository navigation
docs(rfc): propose sandbox service exposure architecture - #4267
Conversation
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
Signed-off-by: Drew Newberry <anewberry@nvidia.com>
|
Thank you for the doc, leaving some diagrams that might help with discussions: Discussed this with @kon-angelo and @dimityrmirchev, our opinion is that option 3 fits the best in a k8s environment specifically. Existing k8s clusters have their networking configured using k8s primitives, so having a proxy being created by During a talk with @drew and @johntmyers, we came to the conclusion that |
Signed-off-by: Taylor Mutch <taylormutch@gmail.com>
Signed-off-by: Taylor Mutch <taylormutch@gmail.com>
Signed-off-by: Taylor Mutch <taylormutch@gmail.com>
|
Picking this RFC up from @drew, I'll be pushing an update to this branch that includes the feedback from @rrhubenov and the community call. |
Signed-off-by: Taylor Mutch <taylormutch@gmail.com>
|
@TaylorMutch I spent a bit of time on the RFC and I think it generally looks great! :) |
|
|
||
| ## Open questions | ||
|
|
||
| - Should TLS terminate at supervisors or the proxy? How are certificates provisioned and rotated? |
There was a problem hiding this comment.
Leaving some additional feedback here, can leave it on the implementation PR as well when it gets created.
In a kubernetes context, cluster administrators often terminate TLS at different points in the cluster, e.g.:
- in the cloud load balancer, even before the cluster
- at the edge, using the ingress controller (e.g. nginx)
- using a service mesh with sidecars, where every connection is terminated and rewrapped between pods, mTLS
So terminating TLS at the supervisor might cause friction with these setups.
The RFC mentions terminating TLS at the edge, I'd say making that the default might land better



Summary
RFC 0017 proposes a dedicated application listener on supervisors so sandbox HTTP and WebSocket traffic can bypass the gateway and its control connection. This lets operators scale application ingress and configure its access policies separately from gateway management.
The gateway continues to manage service declarations and publishes supervisor-advertised routes through authenticated discovery. Operators can integrate existing ingress with that discovery or use the optional
openshell-sandbox-proxyas a reference implementation.Design
Validation
Related issue
Closes #4266
Related work