Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support kgateway as a waypoint to Istio ambient #10453

Open
linsun opened this issue Jan 14, 2025 · 6 comments
Open

Support kgateway as a waypoint to Istio ambient #10453

linsun opened this issue Jan 14, 2025 · 6 comments
Assignees
Labels
Type: Enhancement New feature or request
Milestone

Comments

@linsun
Copy link
Contributor

linsun commented Jan 14, 2025

K8sGateway Version

latest

Is your feature request related to a problem? Please describe.

Can I run kgateway as a waypoint to Istio ambient? Istio ambient is designed with pluggable waypoints, would it be possible to have kgateway as a waypoint for Istio ambient?

If we do decide to support this, a few things to make decisions:

  • I'd expect k8s GW API (HTTPRoute, Gateway etc) would be supported.

  • Would kgateway support Istio's APIs or some of Istio's APIs? Examples to think through:

  1. -- VS
  2. -- DR
  3. -- AuthorizationPolicy, PeerAuthPolicy
  4. -- WasmPlugin?
  • Can I also use the waypoint as an egress waypoint?

cc @asayah @Sodman @yuval-k @stevenctl @ilrudie

@linsun linsun added the Type: Enhancement New feature or request label Jan 14, 2025
@ilrudie
Copy link
Contributor

ilrudie commented Jan 15, 2025

in Istio waypoints iirc:

  • VS is still experimental or alpha and not recommended, we can probably skip it
  • DR is partially supported but I don't recall off the top of my head which bits are supported

PeerAuthn is interesting. It might be irrelevant for waypoint as long as we're a sandwich. ztunnel would implement mTLS appropriately on our behalf.

AuthzPol I think is a firm must have for a waypoint.
DR needs research (or someone who just knows)

andy-fong pushed a commit to andy-fong/gloo that referenced this issue Jan 15, 2025
@yuval-k
Copy link
Contributor

yuval-k commented Jan 15, 2025

not sure about WasmPlugin, i don't believe we have seen it bring value to production users.

@yuval-k
Copy link
Contributor

yuval-k commented Jan 15, 2025

some context on DR being partially supported - It was done mainly to keep the scope of the DR support small for the initial implementation. Support more of it is possible.

@asayah
Copy link
Contributor

asayah commented Jan 21, 2025

It was done mainly to keep the scope of the DR support small for the initial implementation

Not in scope for this work

In Istio, DRs are a bloated concept. Working on transitioning to a Kubernetes Gateway API policy style would involve splitting a DR into multiple policies, offering a more streamlined and better-integrated approach to kgateway

@linsun
Copy link
Contributor Author

linsun commented Jan 21, 2025

A few other UX issues related to this that has been discussed privately:

For gloo waypoint, we want to make the proxy deployment and SA a bit more consistent, similar to istio waypoints; we want to get rid of the gloo-proxy- prefix.

Starting a thread on some UX related to gloo waypoint and getting some input. 1) I find the gloo-proxy-gloo-waypoint (currently used as the default pod name & service account name) and gloo-waypoint (used as the default waypoint name and gateway class name) a bit confusing. For example, I have to make sure in my authz policy when waypoint is added to update the allow-waypoint-to-dest L4 policy to the correct principal (if my yaml worked for istio-waypoint) by updating principal value from ["cluster.local/ns/default/sa/waypoint"] to ["cluster.local/ns/default/sa/gloo-proxy-gloo-waypoint"] 2) While debugging connectivity issue after adding gloo-waypoint, i added hosts to my Authz policy, which is hosts: [gloo-proxy-gloo-waypoint"]and undeclare/re-declare use-waypoint and realized it is gloo-waypoint not gloo-proxy-gloo-waypoint. I'd prefer them to be consistent like istio's which is waypoint from SA to the waypoint name.

@linsun
Copy link
Contributor Author

linsun commented Jan 21, 2025

Assign to @stevenctl for now as he expressed interest to work on this, thank you so much!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Enhancement New feature or request
Projects
Status: Planned
Development

No branches or pull requests

6 participants