Today the gateway api plugin only supports *Routes with backendRefs of type k8s Service. This is a significant limitation for those leveraging Istio and wanting to perform canary deployment strategies on other backend types that Istio supports in their Gateway API implementation.
We should add support for Istio's implementation of the Gateway API specification for other backendRef types. More specifically, Istio's Gateway API implementation supports the following backendRef types:
- k8s service
networking.istio.io/Hostname - specific to hostnames defined in istio ServiceEntry CRs
multicluster.x-k8s.io/ServiceImport
sigs.k8s.io/gateway-api-inference-extension/InferencePool
Each of these backendRef types are supported by Istio for use in HTTPRoute, GRPCRoute, TLSRoute, and TCPRoute.
Additional Context:
- supporting this is pretty critical for users currently using Argo Rollouts with its first-class support of Istio's
VirtualService and DestinationRule subset, and who want to migrate to the k8s Gateway API.
Today the gateway api plugin only supports *Routes with backendRefs of type k8s Service. This is a significant limitation for those leveraging Istio and wanting to perform canary deployment strategies on other backend types that Istio supports in their Gateway API implementation.
We should add support for Istio's implementation of the Gateway API specification for other backendRef types. More specifically, Istio's Gateway API implementation supports the following backendRef types:
networking.istio.io/Hostname- specific to hostnames defined in istioServiceEntryCRsmulticluster.x-k8s.io/ServiceImportsigs.k8s.io/gateway-api-inference-extension/InferencePoolEach of these backendRef types are supported by Istio for use in
HTTPRoute,GRPCRoute,TLSRoute, andTCPRoute.Additional Context:
VirtualServiceandDestinationRulesubset, and who want to migrate to the k8s Gateway API.