Phase 3: Gateway and Ingress
Phase 3: Gateway and Ingress
This phase installs the ingress layer that exposes NVCF services externally. It consists of two parts: the Envoy Gateway infrastructure and the NVCF Gateway Routes chart that creates HTTPRoutes and TCPRoutes for each service.
All core services from standalone-core-services must be running before proceeding. The Gateway Routes chart depends on the Notary Service and API Keys being available.
Install Kubernetes Gateway CRDs
Install the Kubernetes Gateway API CRDs if not already present on your cluster:
If replacing the version (v1.2.0), ensure compatibility with the GatewayClass and Gateway resources created below.
Install Envoy Gateway
Install Envoy Gateway as the Gateway API controller:
Verify the Envoy Gateway pods are running:
Create GatewayClass
Create the GatewayClass resource that binds to the Envoy Gateway controller:
Create Gateway
Create the Gateway resource that provisions the external load balancer.
The annotations section is cloud-provider specific and controls how the external
load balancer is provisioned:
- AWS (EKS): Creates an internet-facing Network Load Balancer
- GCP (GKE): Creates an external HTTP(S) load balancer
- Azure (AKS): Creates a public load balancer
- On-prem: Requires a load balancer solution like MetalLB, or use NodePort. Consult your infrastructure documentation.
Verify the Gateway is ready and obtain the load balancer address:
Save the GATEWAY_ADDR value. You will need it for the Gateway Routes configuration
and for verifying API connectivity.
Gateway Routes
The Gateway Routes chart creates HTTPRoutes and TCPRoutes that connect external traffic to NVCF services through the Gateway.
Configuration
Create gateway-routes-values.yaml (download template):
gateway-routes-values.yaml
Replace <DOMAIN> with the GATEWAY_ADDR value obtained above.
Install
Verify
For details on how routing works, verification commands, and production DNS/HTTPS setup, see gateway-routing.
Enable Admin Issuer Proxy Route
The Admin Token Issuer Proxy was installed in standalone-core-services with
gateway.enabled: false because the Gateway CRDs did not yet exist. Now that the Gateway
is running, upgrade it to enable the admin endpoint HTTPRoute:
Verify the admin route was created:
Verify End-to-End Connectivity
With the gateway in place, verify the full stack is functional.
Generate an Admin Token
List Functions
(Optional) Create, Deploy, and Invoke a Test Function
The backend value should match the cluster group name registered by the NVCA operator.
The instanceType and gpu values depend on the GPU types available in your cluster.
For invocation, the Host header uses wildcard subdomain routing:
<function-id>.invocation.<gateway-addr>.
Uninstalling
To remove all gateway components:
Next Steps
Your NVCF control plane is now fully installed and accessible. Proceed to self-managed-clusters to install the NVCA Operator and connect your GPU nodes to the control plane.