apisix icon indicating copy to clipboard operation
apisix copied to clipboard

APISIX's V3 (2022) Roadmap

Open spacewander opened this issue 3 years ago • 17 comments

Issue description

We are going to release a new major version (V3) in 2022. As a major version, we will remove deprecated fields, bring break changes, and most importantly, add great features.

We are going to make APISIX easier to adopt:

  1. redesign documentation
  2. refactor the backend of Dashboard. Now, this backend will talk with Admin API instead of etcd.
  3. refactor the API definition in Admin API, so that it can match the backend of Dashboard.
  4. support different backend as the source of configuration instead of etcd.
  5. move some features to CP side.
  6. smarter way to diagnose runtime issues. Probably a builtin plugin?
  7. Connect to etcd via gRPC and reduce the number of etcd connection
  8. declarative configuration like what we have done in apisix-ingress (a better implementation of standalone mode or Admin API can sync configuration in file to etcd)

We are going to make APISIX connect to more ecosystems:

  1. integrate with more Open Source projects
  2. integrate with cloud vendors
  3. integrate with OpenAPI spec and other API spec definitions
  4. write plugin without Lua, in the traditional way (Plugin Runner) or the modern way (Wasm)
  5. native gRPC support as a client, so we can connect to further places

We are going to make APISIX proxy everything:

  1. xRPC: an L4 proxy framework to provide wire-level observability of databases & message queue & RPC. And more L4 observability: Prometheus & logger in the L4 level.
  2. support XDS so APISIX can be used as the DP of istio

spacewander avatar Mar 01 '22 01:03 spacewander

looking forward to service mesh of Apache APISIX

moonming avatar Mar 01 '22 03:03 moonming

  1. support different backend,support consul,mysql?

lizj3624 avatar Mar 01 '22 05:03 lizj3624

  1. support different backend,support consul,mysql?

yes

moonming avatar Mar 01 '22 06:03 moonming

  1. backend will talk with Admin API, apisix-adminctl or apisixctl will come into the plan together?

kwanhur avatar Mar 01 '22 16:03 kwanhur

  1. backend will talk with Admin API, apisix-adminctl or apisixctl will come into the plan together?

The full sentence is

  1. refactor the backend of Dashboard. Now, this backend will talk with Admin API instead of etcd.

this backend means the Dashboard's backend.

spacewander avatar Mar 02 '22 01:03 spacewander

Look forward to Service Mesh.

罗泽轩 @.***> 于2022年3月1日周二 09:44写道:

Issue description

We are going to release a new major version (V3) in 2022. As a major version, we will remove deprecated fields, bring break changes, and most importantly, add great features.

We are going to make APISIX easier to adopt:

  1. redesign documentation
  2. refactor the backend of Dashboard. Now, this backend will talk with Admin API instead of etcd.
  3. refactor the API definition in Admin API, so that it can match the backend of Dashboard.
  4. support different backend as the source of configuration instead of etcd.
  5. move some features to CP side.
  6. smarter way to diagnose runtime issues. Probably a builtin plugin?
  7. Connect to etcd via gRPC and reduce the number of etcd connection
  8. declarative configuration like what we have done in apisix-ingress (a better implementation of standalone mode or Admin API can sync configuration in file to etcd)

We are going to make APISIX connect to more ecosystems:

  1. integrate with more Open Source projects
  2. integrate with cloud vendors
  3. integrate with OpenAPI spec and other API spec definitions
  4. write plugin without Lua, in the traditional way (Plugin Runner) or the modern way (Wasm)
  5. native gRPC support as a client, so we can connect to further places

We are going to make APISIX proxy everything:

  1. xRPC: an L4 proxy framework to provide wire-level observability of databases & message queue & RPC. And more L4 observability: Prometheus & logger in the L4 level.
  2. support XDS so APISIX can be used as the DP of istio

— Reply to this email directly, view it on GitHub https://github.com/apache/apisix/issues/6473, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEXXFGMEDDSWW5R2BCI6ZUDU5VZBHANCNFSM5PSVWNMQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you are subscribed to this thread.Message ID: @.***>

wang-yeliang avatar Mar 02 '22 03:03 wang-yeliang

  1. backend will talk with Admin API, apisix-adminctl or apisixctl will come into the plan together?

The full sentence is

  1. refactor the backend of Dashboard. Now, this backend will talk with Admin API instead of etcd.

this backend means the Dashboard's backend.

apisix-dashboard#1884 discussion mentioned that uniformed data model for Dashboard's backend and command line's backend. So take some care of the both backends.

kwanhur avatar Mar 02 '22 06:03 kwanhur

apisix 2.11 是否能够无缝切换到3版本?

Horus-K avatar Mar 02 '22 07:03 Horus-K

apisix 2.11 是否能够无缝切换到3版本?

There will be many break changes so we can't do it.

spacewander avatar Mar 02 '22 11:03 spacewander

  1. backend will talk with Admin API, apisix-adminctl or apisixctl will come into the plan together?

The full sentence is

  1. refactor the backend of Dashboard. Now, this backend will talk with Admin API instead of etcd.

this backend means the Dashboard's backend.

apisix-dashboard#1884 discussion mentioned that uniformed data model for Dashboard's backend and command line's backend. So take some care of the both backends.

This purpose is marked as stale.

spacewander avatar Mar 02 '22 12:03 spacewander

Let's freeze this issue.

spacewander avatar Mar 04 '22 07:03 spacewander

2.15 is the last big version of 2.x this year?

wolgod avatar Sep 03 '22 13:09 wolgod

2.15 will be the biggest minor version of 2.x.

spacewander avatar Sep 04 '22 06:09 spacewander

if apisix v3 can support multi cluster of k8s'discovery?

Nobilta avatar Sep 06 '22 02:09 Nobilta

if apisix v3 can support multi cluster of k8s'discovery?

It's not in the roadmap.

spacewander avatar Sep 06 '22 05:09 spacewander

if apisix v3 can support multi cluster of k8s'discovery?

It's not in the roadmap.

fine,when we can use apisix v3 and what's the shecdule?the connection to etcd with gRPC is necessary.

Nobilta avatar Sep 06 '22 06:09 Nobilta

if apisix v3 can support multi cluster of k8s'discovery?

It's not in the roadmap.

fine,when we can use apisix v3 and what's the shecdule?the connection to etcd with gRPC is necessary.

The first rc version should be available at the end of this month.

tokers avatar Sep 06 '22 11:09 tokers

This issue has been marked as stale due to 350 days of inactivity. It will be closed in 2 weeks if no further activity occurs. If this issue is still relevant, please simply write any comment. Even if closed, you can still revive the issue at any time or discuss it on the [email protected] list. Thank you for your contributions.

github-actions[bot] avatar Aug 23 '23 10:08 github-actions[bot]

This issue has been closed due to lack of activity. If you think that is incorrect, or the issue requires additional review, you can revive the issue at any time.

github-actions[bot] avatar Sep 06 '23 10:09 github-actions[bot]