Moving from the open source project to Agent Router Enterprise
Tetrate Agent Router Enterprise runs the same Envoy-based gateway as the open source project. What changes is how it is configured: the Admin Console and Admin API replace the YAML, and a Tetrate-hosted management plane replaces the controller run today. This guide covers what carries over, what is set up again, and how to move traffic with a way back. For teams still deciding, see why teams move to Enterprise.
The open source Agent Router (formerly Envoy AI Gateway) runs in the customer's own cluster, with routes, providers, and credentials held in AIGatewayRoute, AIServiceBackend, and BackendSecurityPolicy resources applied by hand. Agent Router Enterprise installs its own data plane and Controller, and the Controller takes its configuration from the management plane. The open source install is not upgraded in place: the Enterprise data plane is stood up beside it, traffic is moved, and the old gateway is retired when nothing calls it.
What carries over and what is set up again
| Area | Open source today | With Agent Router Enterprise |
|---|---|---|
| The proxy | Envoy, through Envoy Gateway | Same. The Enterprise data plane is Envoy with the Agent Router gateway modules. |
| Client API | OpenAI-compatible | Same, plus the Anthropic API. Client code changes a base URL and a key. |
| Providers and credentials | AIServiceBackend and BackendSecurityPolicy YAML | Set up again in the Admin Console or Catalog API. Provider accounts do not change: existing keys are reused, or Bedrock workload identity is used. |
| Routing, fallback, splits | AIGatewayRoute YAML | Set up again as routing policies in the console. The Controller writes the gateway configuration. |
| Quotas and rate limits | Policy YAML, per gateway | Budgets, rate limits, and spend ceilings by project, key, team, and user. Shared across every data plane. |
| API keys for app teams | Keys already issued | Issued from the console, per project. App teams get new keys. |
| Gateway endpoint | The existing Service or Ingress | A new hostname behind an ingress created for it. Tetrate has no inbound path to it. |
The aigw CLI | Local runs and development | Not used with Enterprise. The tetrate CLI installs, checks, and upgrades the data plane. |
| Helm and GitOps | Existing charts and manifests | Still Helm. The serve-helm chart renders manifests that can be committed for Argo CD or Flux. |
| What you know about Envoy Gateway | Years of running it | Most of that experience still applies. The GatewayClass, namespaces, and deployment names are new. |
Two things do not move: hand-written routing YAML and previously issued API keys.
Where the Enterprise data plane can run
The Enterprise data plane needs a cluster of its own. It installs a GatewayClass named tars-egress under the controller name gateway.envoyproxy.io/gatewayclass-controller. An Envoy Gateway that watches the whole cluster claims that class too, and the two controllers fight over it. The open source install runs Envoy Gateway cluster-wide, so the two cannot share a cluster. There is no override.
A new cluster is planned before starting, and a small one is enough. The prerequisites page lists the sizing and the pre-install check, which is two commands:
kubectl get gatewayclass
kubectl get deployments -A -l app.kubernetes.io/name=envoy-gateway
Both should come back empty on the target cluster.
What leaves the cluster
Requests and responses travel only through the data plane. The management plane stores configuration, user records, and telemetry such as latency and token counts. At the default settings it also stores request and response bodies, and the text matched by guardrail rules. Setting the request log mode and the guardrail trigger content mode to Metadata only removes that content from those records (see Control what request data leaves the cluster). The Controller polls api.<tenant>.tetrate.ai on TCP 443 for configuration. That is the only connection that stays open. If the link drops, the data plane keeps routing on the last configuration it received. Details are in Network and security and Prerequisites.
Steps
-
Create the cluster and check compatibility. A dedicated cluster with no Envoy Gateway on it. The Kubernetes and Gateway API ranges are listed per release on Release compatibility. The installer enforces them.
-
Get a tenant and onboard. Start from the Fast Track Eval or contact Tetrate. Complete self-hosted onboarding: organization, SSO, and the data plane credential. Download
data-plane-credentials.json. -
Recreate providers and models. In the Admin Console, add each provider currently defined as an
AIServiceBackend, with the same account and credential. Add the models the apps call. See Provision models and providers. -
Install the data plane. Follow the Helm install guide or the guide for the target cloud. The Controller lands in
tars-systemand the gateway intars-dataplane.tetrate agentrouter dataplane install "${DP_CREDENTIAL}" -
Expose the gateway. Create an ingress to the
egressservice on port 10080, with a chosen hostname, and declare it inglobal.gateway.hostnames. See Gateway installation. -
Create a project and issue keys. One project per team or app. See Issue a project-scoped API key.
-
Recreate routing. Fallback chains and traffic splits become routing policies. Start with one policy that mirrors one
AIGatewayRoute. See the Routing policy reference. -
Verify.
tetrate agentrouter doctor "${DP_CREDENTIAL}" --verboseThen one request is sent to the new hostname with a project key and located in the request log in the Admin Console.
-
Move one team. Change that team's base URL and key, watch Analytics for a day, then move the next team.
-
Retire the open source gateway when nothing calls it.
What app teams change
Two values: the base URL and the API key. The request body doesn't change. Teams on the Anthropic SDK can use the Anthropic endpoint directly.
How to roll back
The open source gateway keeps running until step 10, so rollback is a base URL change.
- Point the team's base URL and key back at the open source gateway.
- To remove the Enterprise data plane, run
helm uninstall tars -n tars-system. Leave the CRDs, which move forward only, as the install guide states. - Revoke the data plane credential in the Admin Console. See Data plane credentials.
Two limits apply. The Enterprise install never reads or changes the open source resources, so nothing needs restoring on that side. Budgets, request logs, and analytics live in the management plane, so rolling back loses that view. Traffic keeps flowing.
Try the console first
The Fast Track Eval is fully managed, so nothing is installed. A first routed request is possible about 15 minutes after onboarding, and a small team with a cost readout by the end of the day. It shows the Admin Console, budgets, and Analytics before the self-hosted cluster is built. The open source gateway keeps running throughout.
Get help
- Open source community: Discord and the GitHub repo.
- Enterprise support: Maintenance and support terms.
- Talk to an engineer: the link above.