envoyproxy/gateway

How to patch Cluster with EnvoyPatchPolicy

Open

#7306 aperta il 22 ott 2025

Vedi su GitHub
 (3 commenti) (0 reazioni) (0 assegnatari)Go (802 fork)auto 404
documentationgood first issuehelp wanted

Metriche repository

Star
 (2871 star)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

Description: An example would be nice to determine how to modify cluster config in EnvoyPatchPolicy

apiVersion: gateway.networking.k8s.io/v1
kind: GatewayClass
metadata:
  name: eg
spec:
  controllerName: gateway.envoyproxy.io/gatewayclass-controller
---
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: eg
  namespace: envoy-poc
spec:
  gatewayClassName: eg
  listeners:
  - name: http
    port: 80
    protocol: HTTP
    allowedRoutes:
      namespaces:
        from: Same
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: server-route
  namespace: envoy-poc
spec:
  parentRefs:
  - name: eg
  rules:
  - matches:
    - path:
        type: PathPrefix
        value: /
    backendRefs:
    - name: server
      port: 8080
---
apiVersion: gateway.envoyproxy.io/v1alpha1
kind: EnvoyPatchPolicy
metadata:
  name: server-route-client-wrr
  namespace: envoy-poc
spec:
  type: JSONPatch
  targetRef:
    group: gateway.networking.k8s.io
    kind: GatewayClass
    name: eg
  jsonPatches:
  - type: type.googleapis.com/envoy.config.cluster.v3.Cluster
    name: httproute/envoy-poc/server-route/rule/0
    operation:
      op: add
      path: /load_balancing_policy
      value:
        policies:
        - typed_extension_config:
            name: envoy.load_balancing_policies.client_side_weighted_round_robin
            typed_config:
              "@type": type.googleapis.com/envoy.extensions.load_balancing_policies.client_side_weighted_round_robin.v3.ClientSideWeightedRoundRobin

I am doing the following but the patch is not working

Guida contributor