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

Add cilium to conformance testing #553

Open
acelinkio opened this issue Oct 5, 2023 · 10 comments
Open

Add cilium to conformance testing #553

acelinkio opened this issue Oct 5, 2023 · 10 comments
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.

Comments

@acelinkio
Copy link

Please add Cilium into knative's testing of the gatewayapi.

Cilium is a CNI, kube-proxy replacement, sidecar-less service mesh, load balancer, and observability tool that also offers a gateway controller. Cilium 1.15 will support all gateway-api features except for one as seen in their conformance report, https://github.com/kubernetes-sigs/gateway-api/blob/main/conformance/reports/v0.8.1/cilium-cilium.yaml.

Cilium is growing in popularity and leverages some of the most recent Linux features. Greatly appreciate if it could be added and regularly tested against Knative!

@bittermandel
Copy link

Happy to help out with the implementation of this! We're looking to use Cilium for Gateway API and it feels like the best way to make it work with Knative.

@acelinkio
Copy link
Author

acelinkio commented Jan 5, 2024

hey @tomaszkiewicz, thanks for opening the filters issue. I have applied that filters fix but not sure how to configure the rest of this project to work with Cilium. Would you happen to have an example of how you setup Knative?

I had kourier ingress working, but not understanding how to get the gateway setup functioning. If anyone has any working examples that would be great!

my setup: https://github.com/acelinkio/argocd-homelab/blob/main/manifest/knative-serving.yaml

@tomaszkiewicz
Copy link

Hi, sure: I simply followed a readme on this repository to deploy both KNative as well as all the settings, then fine tuned some of them in config-gateway config map:

 visibility: |                                                   
   ExternalIP:                                                   
     class: cilium                                               
     gateway: default/cilium-gateway                             
     service: default/cilium-gateway-cilium-gateway              
   ClusterLocal:                                                 
     class: cilium                                               
     gateway: default/cilium-gateway                             
     service: default/cilium-gateway-cilium-gateway                                               

Then I created a gateway object like that:

apiVersion: gateway.networking.k8s.io/v1beta1
kind: Gateway
metadata:
  name: cilium-gateway
spec:
  gatewayClassName: cilium
  listeners:
    - protocol: HTTP
      port: 80
      name: web

@acelinkio

This comment was marked as off-topic.

@tomaszkiewicz

This comment was marked as off-topic.

@dprotaso

This comment was marked as off-topic.

@dprotaso
Copy link
Contributor

dprotaso commented Apr 2, 2024

Depends on #621

Copy link
Contributor

github-actions bot commented Jul 2, 2024

This issue is stale because it has been open for 90 days with no
activity. It will automatically close after 30 more days of
inactivity. Reopen the issue with /reopen. Mark the issue as
fresh by adding the comment /remove-lifecycle stale.

@github-actions github-actions bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 2, 2024
@blackliner
Copy link

cilium/cilium#29080 has been closed/merged, what does this mean for this issue?

@github-actions github-actions bot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 9, 2024
@dprotaso
Copy link
Contributor

dprotaso commented Jul 9, 2024

/lifecycle frozen

Hey @blackliner it would be good for someone to take on this issue and add cillium testing. Then we can see what's broken and see if there's some resolution.

To layout the work you can look at what I did for envoy gateway

First I added optional presubmit jobs to our CI here knative/infra#451. This will run against pull requests.

With that in place you can add all the cillium stuff to this repo - the envoy gateway example is here #738

I'm a bit busy with other stuff to take this on - but I can assist

@knative-prow knative-prow bot added the lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. label Jul 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
None yet
Development

No branches or pull requests

5 participants