Description
Apache APISIX
Apache APISIX is a dynamic, real-time, high-performance API gateway, based on the Nginx library and etcd.
APISIX provides rich traffic management features such as load balancing, dynamic upstream, canary release, circuit breaking, authentication, observability, and more.
You can use Apache APISIX to handle traditional north-south traffic, as well as east-west traffic between services. It can also be used as a k8s ingress controller.
Background
Knative Serving is a platform allowing you to deploy serverless applications based on Kubernetes[1]. Especially compared to bare Kubernetes, Knative could do scale-to-zero without help with binding to cloud providers.
Currently, Knative has supported ingress gateway like Istio, Gloo and Kong as its network layer[2-3]. In this project, we hope you could support APISIX ingress controller as an alternative Knative network layer, and then we could use APISIX to manage ingress traffic, especially add APISIX plugins when we need, for serverless workloads in Knative.
Task
- Get familiar with Knative serving, and current offers of network layers
- Implement support for APISIX for Knative
- Add test, docs, and preferably articles, for the new feature.
Relevant Skills
- Golang
- Familiar with Kubernetes
- Familiar with Knative/APISIX-ingress-controller/other ingress is a plus
Mentor
Shuyang Wu, committer of Apache APISIX, shuyangw@apache.org
Ref