Knative is an extension of Kubernetes and is specifically designed for serverless workloads. Knative Serving, as one of the core components of Knative, runs scalable containers based on ingress gateway as its network layer to route traffic and control the flow of API calls. Currently, Istio is the default ingress gateway of Knative Serving. Other community-based gateway implementations such as Kong and Gloo are also supported.

APISIX, a dynamic, real-time, and high-performance API gateway, comes with an ingress controller which can be used in Kubernetes. The ingress controller of APISIX, however, has no support for Knative. This limits its use scenarios. This project aims at providing support for APISIX for Knative. Main tasks include

  1. understanding the mechanism of Knative Serving and APISIX ingress controller.
  2. Implement support for APISIX as Knative ingress gateway
  3. Writing tests documentation, or articles for the newly added feature

As a result, APISIX ingress controller will be an alternative Knative network layer to manage ingress traffic.

Student

Fang Hu

Mentors

  • Shuyang Wu
  • Ming Wen
close

2021