You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apisix.apache.org by Jintao Zhang <zh...@apache.org> on 2021/07/30 11:43:41 UTC

[DISCUSS] New architecture of Apache APISIX Ingress controller

In the current architecture of the Apache APISIX Ingress controller, we use the Apache APISIX Ingress controller as a control plane component.
The user creates a specified type of CR in Kubernetes, and the Apache APISIX Ingress controller converts it into a data structure that can be received by Apache APISIX, and creates, modifies or deletes it by calling the admin API.
Such an architecture has the following advantages:
- The separation of CP and DP can ensure that even if the CP component is abnormal, DP can still run properly;
- Users can deploy DP in any location they like, including outside the Kubernetes cluster

But such an architecture will also have its disadvantages
Users need to maintain a complete Apache APISIX cluster, which cannot be done simply by modifying the replicas field of the Apache APISIX Ingress controller

I hope to introduce an architecture similar to ingress-nginx, which is widely used in Kubernetes.

In this way, users can complete the deployment directly through a Pod. At the same time, user can simply modify the replicas parameter to complete the scale.

Re: [DISCUSS] New architecture of Apache APISIX Ingress controller

Posted by wei jin <kv...@apache.org>.
Agree +1

Jintao Zhang <zh...@apache.org> 于2021年7月30日周五 下午7:43写道:

> In the current architecture of the Apache APISIX Ingress controller, we
> use the Apache APISIX Ingress controller as a control plane component.
> The user creates a specified type of CR in Kubernetes, and the Apache
> APISIX Ingress controller converts it into a data structure that can be
> received by Apache APISIX, and creates, modifies or deletes it by calling
> the admin API.
> Such an architecture has the following advantages:
> - The separation of CP and DP can ensure that even if the CP component is
> abnormal, DP can still run properly;
> - Users can deploy DP in any location they like, including outside the
> Kubernetes cluster
>
> But such an architecture will also have its disadvantages
> Users need to maintain a complete Apache APISIX cluster, which cannot be
> done simply by modifying the replicas field of the Apache APISIX Ingress
> controller
>
> I hope to introduce an architecture similar to ingress-nginx, which is
> widely used in Kubernetes.
>
> In this way, users can complete the deployment directly through a Pod. At
> the same time, user can simply modify the replicas parameter to complete
> the scale.
>

Re: [DISCUSS] New architecture of Apache APISIX Ingress controller

Posted by Chao Zhang <zc...@gmail.com>.
Good taste, +1 from me.

Chao Zhang
https://github.com/tokers

On July 30, 2021 at 19:43:44, Jintao Zhang (zhangjintao@apache.org) wrote:

Users need to maintain a complete Apache APISIX cluster, which cannot be
done simply by modifying the replicas field of the Apache APISIX Ingress
controller