Envoy Gateway Operator
TOC
OverviewArchitectureRelated custom resourcesOperator-related custom resourcesGateway API related custom resourcesEnvoy Gateway deploy-related custom resourcesInstall Envoy Gateway via Envoy Gateway OperatorPrerequisitesInstallationStep 1: Install Envoy Gateway OperatorStep 2: Create an EnvoyGatewayCtl with the Recommended Default ValuesConfiguration Via YAMLAdvanced Config Via EnvoyGatewayCtlExample: Enable Backend RoutingNext StepOverview
Use envoy-gateway-operator to deploy and manage Envoy Gateway through platform-managed resources. The main custom
resources and runtime instances are EnvoyGatewayCtl, GatewayClass, Gateway, EnvoyProxy, envoy-gateway instance,
and envoy-proxy instance.
The envoy-gateway-operator packages the upstream envoy-gateway Helm chart as an Operator, so you can deploy and
manage an envoy-gateway instance declaratively through the EnvoyGatewayCtl custom resource instead of managing the
chart or rendered resources directly.
In ACP 4.3, envoy-gateway-operator packages the upstream envoy-gateway Helm chart version 1.7.0.
Because the Operator is maintained by the platform, it is also upgraded automatically together with the platform, which helps reduce the operational overhead of manually maintaining the Envoy Gateway installation.
Create an EnvoyGatewayCtl as the entry point for deploying and managing
Envoy Gateway through the platform.
After you understand these concepts and create an EnvoyGatewayCtl, continue with Gateway,
Route, and Policy configuration in the order listed in Next Step.
Architecture
The following workflow shows how envoy-gateway-operator, EnvoyGatewayCtl, GatewayClass, Gateway, and
EnvoyProxy work together to deploy and manage Envoy Gateway and its data plane.
-
After you install
envoy-gateway-operatorand create anEnvoyGatewayCtl, the operator deploys anenvoy-gateway instanceand creates a correspondingGatewayClass. TheGatewayClassname follows the<namespace>-<name>pattern. The recommended default example usescpaas-defaultin theenvoy-gateway-operatornamespace, which is also the default configuration prefilled on theCreate EnvoyGatewayCtlpage. In this case, the generatedGatewayClassisenvoy-gateway-operator-cpaas-default.Each
EnvoyGatewayCtlmust have a unique combination of namespace and name, so the correspondingGatewayClassnames are also unique. When creating aGateway, you select the appropriateGatewayClassto determine whichenvoy-gateway instancemanages it. -
When you create a
Gatewaythat references thisGatewayClass, theenvoy-gateway instancetakes ownership of thatGateway. If theGatewayreferences anEnvoyProxythrough.spec.infrastructure.parametersRef, thatEnvoyProxyis used to control how the underlyingenvoy-proxy instanceis deployed. -
The
envoy-gateway instancethen provisions and manages the correspondingenvoy-proxy instance, which serves as the data plane and handles incoming traffic for thatGateway. -
You can create
HTTPRoute,TCPRoute,UDPRoute,GRPCRoute, orTLSRouteresources and attach them to theGatewayto define how traffic is matched and forwarded to backend Services. You can also attach traffic policies such asClientTrafficPolicyorBackendTrafficPolicyfor more advanced behavior.
Related custom resources
The following custom resources are involved in deploying Envoy Gateway and configuring traffic behavior.
Operator-related custom resources
We recommend deploying a single envoy-gateway instance via EnvoyGatewayCtl per cluster for typical use cases.
For advanced scenarios, EnvoyGatewayCtl also allows you to deploy multiple envoy-gateway instance resources within the same cluster for stronger control and
isolation, such as different deployment mode.
Gateway API related custom resources
These resources describe the routing semantics of the gateway, including how traffic enters the gateway, how requests are matched and forwarded to backends, and what policies are applied during traffic processing.
For more details about these standard Gateway API resources, please refer to the Gateway API Concepts and Configure GatewayAPI Policy.
Envoy Gateway deploy-related custom resources
These resources control how Envoy Gateway and its data plane are deployed. Use the following custom resource for deployment-related configuration.
In the recommended deployment pattern, each Gateway references its own dedicated EnvoyProxy through .spec.infrastructure.parametersRef. When you create a
Gateway from the Web Console by using an EnvoyGatewayCtl-created GatewayClass, the console automatically creates a companion
EnvoyProxy resource with the same name and namespace. This one-to-one
mapping lets you control the Gateway's deployment configuration, such as replicas, resources, and scheduling, by updating the corresponding EnvoyProxy resource.
Install Envoy Gateway via Envoy Gateway Operator
Prerequisites
Before proceeding, review the concepts and architecture above.
Installation
Step 1: Install Envoy Gateway Operator
- Navigate to
Administrator -> Marketplace -> OperatorHub - Locate the
Alauda build of Envoy GatewayunderNetworkingCategory and clickInstall
Step 2: Create an EnvoyGatewayCtl with the Recommended Default Values
The following default values match the recommended example used in this workflow.
-
Navigate to
Administrator -> Marketplace -> OperatorHub -
Locate the
Alauda build of Envoy Gatewayunder theNetworkingcategory, then click it to open the details page. -
Navigate to the
All Instancestab -
Click
Create, then in the displayed dialog box, locate theEnvoyGatewayCtlInstance Type section and clickCreate -
The
Create EnvoyGatewayCtlpage displays the following configuration options:Recommendation: Use the default values for typical deployments. Click Create to proceed.
Configuration Via YAML
As an alternative to the Web Console, you can create an EnvoyGatewayCtl by applying YAML.
Default Config:
Advanced Config Via EnvoyGatewayCtl
EnvoyGatewayCtl is the custom resource used to configure an envoy-gateway instance. Its spec maps directly to the
values of the upstream envoy-gateway Helm chart. When you need to modify EnvoyGatewayCtl, refer to the upstream
chart values documentation for the available configuration options.
For detailed information about available configuration options, please refer to envoy-gateway-chart-values.
You should only configure the envoy-gateway instance through the EnvoyGatewayCtl resource. Do not directly modify rendered resources such as ConfigMaps, Deployments, as these changes may be lost during upgrades or reconciliation.
Example: Enable Backend Routing
The following example shows how to enable backend routing in the EnvoyGatewayCtl spec:
Next Step
After the Envoy Gateway operator and EnvoyGatewayCtl are ready, continue with the following tasks in order: