This is an automated email from the ASF dual-hosted git repository.
liuxiran pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/apisix-website.git
The following commit(s) were added to refs/heads/master by this push:
new cbe9a62 docs: add 2.10 & 2.9 release notes (#633)
cbe9a62 is described below
commit cbe9a628317805954dec3872d1bbdd5d721beaeb
Author: yilinzeng <[email protected]>
AuthorDate: Thu Sep 30 15:17:52 2021 +0800
docs: add 2.10 & 2.9 release notes (#633)
---
website/blog/2021-06-06-apisix-two-years.md | 2 +-
.../blog/2021-07-06-celebrate-200-contributors.md | 2 +-
.../blog/2021-07-28-release-apache-apisix-2.8.md | 2 +-
.../2021-08-27-release-apache-apisix-2.9-en.md | 72 +++++++++++++
.../blog/2021-08-27-release-apache-apisix-2.9.md | 2 +-
.../2021-09-29-release-apache-apisix-2.10-en.md | 112 ++++++++++++++++++++
.../blog/2021-09-29-release-apache-apisix-2.10.md | 114 +++++++++++++++++++++
7 files changed, 302 insertions(+), 4 deletions(-)
diff --git a/website/blog/2021-06-06-apisix-two-years.md
b/website/blog/2021-06-06-apisix-two-years.md
index 9aa8df0..92c68d6 100644
--- a/website/blog/2021-06-06-apisix-two-years.md
+++ b/website/blog/2021-06-06-apisix-two-years.md
@@ -7,7 +7,7 @@ keywords:
- APISIX
- opensource
description: Apache APISIX is now two years old, thanks for all contributors.
-tags: [Release]
+tags: [Events]
---
> Apache APISIX 开源 2 周年啦!
diff --git a/website/blog/2021-07-06-celebrate-200-contributors.md
b/website/blog/2021-07-06-celebrate-200-contributors.md
index d7e4849..0c2800e 100644
--- a/website/blog/2021-07-06-celebrate-200-contributors.md
+++ b/website/blog/2021-07-06-celebrate-200-contributors.md
@@ -8,7 +8,7 @@ keywords:
- Apache APISIX
- News
Description: Apache APISIX has over 200 contributors in GitHub main repo!
-tags: [Release]
+tags: [Events]
---
> Apache APISIX has over 200 contributors in GitHub main repo!
diff --git a/website/blog/2021-07-28-release-apache-apisix-2.8.md
b/website/blog/2021-07-28-release-apache-apisix-2.8.md
index c8a86fa..5d07f88 100644
--- a/website/blog/2021-07-28-release-apache-apisix-2.8.md
+++ b/website/blog/2021-07-28-release-apache-apisix-2.8.md
@@ -8,7 +8,7 @@ keywords:
- Release Notes
- Apache APISIX
description: Apache APISIX 2.8 版本正式发布!
-tags: [Events]
+tags: [Release]
---
> Apache APISIX 2.8 版本正式发布!
diff --git a/website/blog/2021-08-27-release-apache-apisix-2.9-en.md
b/website/blog/2021-08-27-release-apache-apisix-2.9-en.md
new file mode 100644
index 0000000..1687038
--- /dev/null
+++ b/website/blog/2021-08-27-release-apache-apisix-2.9-en.md
@@ -0,0 +1,72 @@
+---
+title: "Release Apache APISIX 2.9"
+author: "Zexuan Luo"
+authorURL: "https://github.com/spacewander"
+authorImageURL: "https://avatars.githubusercontent.com/u/4161644?v=4"
+keywords:
+- APISIX
+- Apache APISIX
+- Release Notes
+description: Apache APISIX version 2.9 is released!
+tags: [Release]
+---
+
+> Apache APISIX version 2.9 is released!
+
+<!--truncate-->
+
+Apache APISIX version 2.9 is officially released! 🎉 This release has 30+
developers, 100+ PR submissions, 2 new features, and further improved support
for plugins, come and learn about the new features in Apache APISIX 2.9!
+
+## New Plugin: authz-casbin
+
+The Casbin community has contributed
[authz-casbin](https://github.com/apache/apisix/blob/d9b928321fcdd12eef024df8c7c410424c1e0c8b/docs/en/latest/)
to APISIX plugins/authz-casbin.md) plugin to APISIX, and in the new APISIX 2.9
release, APISIX can combine Casbin to do granular permission management at the
route level.
+
+Casbin is an open source access control framework that supports configuration
to decide whether to allow a certain access operation. With the authz-casbin
plugin, we can do multiple roles of access control in one route at the same
time.
+
+This control can be set either through a configuration file or through the
APISIX Control Plane; it can take effect for a given route or set global
defaults. It is very flexible.
+
+If you are interested in this plugin, you are welcome to read [Authorization
with Casbin in Apache
APISIX](https://apisix.apache.org/blog/2021/08/25/Auth-with-Casbin-in-Apache-APISIX).
+
+## New Feature: Dynamic Configuration of real-ip at Route Level
+
+Apache APISIX version 2.9 now supports dynamic configuration of real-ip at the
route level!
+
+The new version adds the
[real-ip](https://apisix.apache.org/zh/docs/apisix/plugins/real-ip/) plugin,
which dynamically changes the IP and port of the client seen by APISIX.
+
+We can use this plugin to dynamically set real-ip parameters.
+
+```JSON
+{
+ "plugins": {
+ "real-ip": {
+ "source": "http_x_forwarded_for",
+ "trusted_addresses": ["127.0.0.0/24"]
+ }
+ }
+}
+```
+
+## Improvement: External Plug-in Mechanism
+
+Apache APISIX version 2.9 further improves the support for external plugins
with two major changes:
+
+1. When sending a plugin configuration to Plugin Runner, a unique key is sent.
because APISIX is a multi-process architecture, in the past, a plugin
configuration was sent several times, causing Plugin Runner to update the
plugin configuration repeatedly. Now, with this unique key, Plugin Runner can
identify duplicate configurations. This makes it possible to implement a
plug-in inside Plugin Runner that limits flow!
+
+2. Add a mechanism to get APISIX information from Plugin Runner in the reverse
direction. In addition to the request header and request path information sent
from APISIX to Plugin Runner, Plugin Runner can also query information from
APISIX in the reverse direction. The Var API has been implemented in the Go
Plugin Runner implementation to use this mechanism to get information about
Nginx variables such as the request_time of the request.
+
+The [Go Plugin
Runner](https://github.com/apache/apisix-go-plugin-runner/tree/6f249010b83a124bc30e940635db7fa0838e2c4a),
which includes this change, will be released next week Version 0.2.0 will be
released next week, so stay tuned!
+
+## Improvement: Existing Plug-ins Enhancement
+
+APISIX version 2.9 improves the functionality of existing plugins with two
major changes:
+
+1. the [request-id](https://apisix.apache.org/docs/apisix/plugins/request-id/)
plugin supports ID generation via the snowflake algorithm. the snowflake ID
generation algorithm is a distributed ID generation mechanism, which generates
The snowflake ID generation algorithm is a distributed ID generation mechanism
that combines machine IDs, timestamps, and generation sequences. We use etcd to
ensure that each worker is assigned a unique machine ID.
+
+2. The
[error-log-logger](https://apisix.apache.org/docs/apisix/plugins/error-log-logger/)
plugin supports reporting error logs to skywalking, adding to the
observability of APISIX. This adds to the observability of APISIX.
+
+## Download
+
+Download Apache APISIX 2.9
+
+- Source code: please visit [download
page](https://apisix.apache.org/downloads/)
+- Binary installation package: please visit [Installation
Guide](https://apisix.apache.org/docs/apisix/how-to-build/)
diff --git a/website/blog/2021-08-27-release-apache-apisix-2.9.md
b/website/blog/2021-08-27-release-apache-apisix-2.9.md
index bc6fc1a..644a583 100644
--- a/website/blog/2021-08-27-release-apache-apisix-2.9.md
+++ b/website/blog/2021-08-27-release-apache-apisix-2.9.md
@@ -11,7 +11,7 @@ keywords:
- Nginx
- APISIX 2.9
description: Apache APISIX 2.9 版本正式发布!该版本新增了 2 个新功能,进一步完善了对插件的支持。
-tags: [Events]
+tags: [Release]
---
> Apache APISIX 2.9 版本正式发布!
diff --git a/website/blog/2021-09-29-release-apache-apisix-2.10-en.md
b/website/blog/2021-09-29-release-apache-apisix-2.10-en.md
new file mode 100644
index 0000000..013340e
--- /dev/null
+++ b/website/blog/2021-09-29-release-apache-apisix-2.10-en.md
@@ -0,0 +1,112 @@
+---
+title: "Release Apache APISIX 2.10.0"
+author: "Zexuan Luo"
+authorURL: "https://github.com/spacewander"
+authorImageURL: "https://avatars.githubusercontent.com/u/4161644?v=4"
+keywords:
+- Apache APISIX
+- API Gateway
+- Release Notes
+- APISIX 2.10
+description: Apache APISIX 2.10.0 is released! This is the first LTS release
of Apache APISIX.
+tags: [Release]
+---
+
+> Apache APISIX 2.10.0 is released!
+
+<!--truncate-->
+
+Apache APISIX 2.10.0 is officially released! 🎉 This is the first LTS release
of Apache APISIX with support for 10+ new features and new plugins. Have a
quick read to learn about the new features in version 2.10.0!
+
+## Milestone: The First LTS Release
+
+This 2.10.0 release is a milestone for Apache APISIX, as Apache APISIX 2.10.0
is our first LTS (Long Time Support) release.
+
+We will be releasing subsequent patch versions on top of Apache APISIX 2.10.0,
i.e. 2.10.1, 2.10.2, etc. These releases will backport bugfixes from the main
branch.
+
+In October, we plan to release the first patch for the first LTS version,
Apache APISIX 2.10.1.
+
+We will then release alternating version lines 2.10.x (e.g. 2.10.2) and 2.x
(e.g. 2.11.0) to keep the features iterative while ensuring that the LTS
version gets the newer bugfixes.
+
+## New Feature: Add Hosts Attribute to Service
+
+In Apache APISIX 2.10.0, we added the `hosts` property to `service`. Like the
other fields in `service`, `route` can inherit the `hosts` attribute from
`service`.
+
+For example, the following configurations are equivalent in Apache APISIX
2.10.0:
+
+```json
+# services/1
+{
+ "hosts": ["bar.com"]
+}
+# routes/1
+{
+ "upstream": {
+ "nodes": {
+ "127.0.0.1:1980": 1
+ },
+ "type": "roundrobin"
+ },
+ "service_id": "1",
+ "uri": "/hello"
+}
+```
+
+```json
+# routes/1
+{
+ "upstream": {
+ "nodes": {
+ "127.0.0.1:1980": 1
+ },
+ "type": "roundrobin"
+ },
+ "hosts": ["bar.com"],
+ "uri": "/hello"
+}
+```
+
+With this change, the relationship between `route` and `service` in Apache
APISIX is becoming more and more similar to the relationship between `location`
and `server` in Nginx. This change brings `service` back into the core Apache
APISIX configuration:
[Route](http://apisix.apache.org/docs/apisix/architecture-design/route),
[Upstream](http://apisix.apache.org/docs/apisix/architecture-design/upstream),
and [Service](http://apisix.apache.org/docs/apisix/architecture-design/service).
+
+## New Feature: Support Setting the Ratio of Mirror Requests
+
+The proxy-mirror plugin's support for setting the ratio of mirrored requests
is a feature users have been waiting for, and we support it on Apache APISIX
2.10.
+
+By setting `sample_ratio`, you can control the number of requests that are
mirrored to the test service. For example, the following configuration with
`sample_ratio` set to 0.5 will mirror half of the requests to the test service.
+
+```json
+{
+ "plugins": {
+ "proxy-mirror": {
+ "host": "http://127.0.0.1:1986",
+ "sample_ratio": 0.5
+ }
+ },
+ "upstream": {
+ "nodes": {
+ "127.0.0.1:1980": 1
+ },
+ "type": "roundrobin"
+ },
+ "uri": "/hello"
+}
+```
+
+## New Plugin: APISIX Python Plugin Runner
+
+Following [Java Plugin
Runner](https://apisix.apache.org/blog/2021/06/21/use-Java-to-write-Apache-APISIX-plugins/)
and [Go Plugin
Runner](https://apisix.apache.org/blog/2021/08/19/go-makes-Apache-APISIX-better/),
there is a new Plugin Runner for Apache APISIX.
+
+The [Apache APISIX Python Plugin
Runner](https://github.com/apache/apisix-python-plugin-runner) has been
released in version 0.1.0 on September 6.
+
+Python is a popular programming language that has always been known for its
ease of use and flexibility. Now you and I can use the language to write
plugins for Apache APISIX.
+
+In addition to the Python Plugin Runner, our community partners are also
developing Plugin Runners for other programming languages, such as the
[JavaScript Plugin
Runner](https://github.com/zenozeng/apisix-javascript-plugin-runner), and
everyone is welcome to participate in the development.
+
+## Download
+
+In addition to the above new features and components, the Apache APISIX 2.10.0
release introduces more than a dozen new features and plugins, for details
please see the [Change
log](https://github.com/apache/apisix/blob/release/2.10/) corresponding to this
release CHANGELOG.md#2100).
+
+Download Apache APISIX 2.10.0
+
+- Source code: Please visit [Download
page](https://apisix.apache.org/downloads/)
+- Binary installation package: Please visit [Installation
Guide](https://apisix.apache.org/docs/apisix/how-to-build/)
diff --git a/website/blog/2021-09-29-release-apache-apisix-2.10.md
b/website/blog/2021-09-29-release-apache-apisix-2.10.md
new file mode 100644
index 0000000..95cd116
--- /dev/null
+++ b/website/blog/2021-09-29-release-apache-apisix-2.10.md
@@ -0,0 +1,114 @@
+---
+title: "Apache APISIX 2.10.0 正式发布,带来第一个 LTS 版本!"
+author: "罗泽轩"
+authorURL: "https://github.com/spacewander"
+authorImageURL: "https://avatars.githubusercontent.com/u/4161644?v=4"
+keywords:
+- Apache APISIX
+- API 网关
+- Release Notes
+- APISIX 2.10.0
+description: Apache APISIX 2.10.0 版本正式发布!这是 Apache APISIX 首个 LTS 版本,同时支持 10+
个新功能和新插件。
+tags: [Release]
+---
+
+> Apache APISIX 2.10.0 版本正式发布!
+
+<!--truncate-->
+
+Apache APISIX 2.10 版本正式发布!🎉 这是 Apache APISIX 首个 LTS 版本,同时支持 10+
个新功能和新插件。快速阅读了解 2.10 版本的新特性吧!
+
+## 里程碑:第一个 LTS 版本
+
+对于 Apache APISIX 来说,本次发布的 2.10.0 是一个具有里程碑意义的版本,因为 Apache APISIX 2.10.0 是我们的第一个
LTS (Long Time Support)的版本。
+
+我们会在 Apache APISIX 2.10.0 的基础上发布后续的 patch 版本,也就是 2.10.1、2.10.2 等版本。这些版本会从主分支上
backport bugfix。
+
+按计划,10 月份我们会发布首个 LTS 版本的首个 patch 版本,也就是 Apache APISIX 2.10.1。
+
+之后我们会交替发布 2.10.x(例如 2.10.2 ) 和 2.x(例如 2.11.0)两个版本线,保持功能迭代的同时,确保 LTS 版本能够得到较新的
bugfix。
+
+## 新功能:service 增加 hosts 属性
+
+在 Apache APISIX 2.10.0 版本里面,我们给 `service` 加上了 `hosts` 属性。就像 `service`
里面其他字段一样,`route` 可以从 `service` 中继承 `hosts` 属性。
+
+下面的配置:
+
+```json
+# services/1
+{
+ "hosts": ["bar.com"]
+}
+# routes/1
+{
+ "upstream": {
+ "nodes": {
+ "127.0.0.1:1980": 1
+ },
+ "type": "roundrobin"
+ },
+ "service_id": "1",
+ "uri": "/hello"
+}
+```
+
+相当于:
+
+```json
+# routes/1
+{
+ "upstream": {
+ "nodes": {
+ "127.0.0.1:1980": 1
+ },
+ "type": "roundrobin"
+ },
+ "hosts": ["bar.com"],
+ "uri": "/hello"
+}
+```
+
+这么修改之后,Apache APISIX 里面的 `route` 和 `service` 的关系与 Nginx 里面的 `location` 和
`server` 的关系越来越相似。 可以这么说,本次修改让 `service` 从鸡肋变成了鸡腿,把 `service` 又拉回了 Apache
APISIX
配置核心三角:[Route](http://apisix.apache.org/zh/docs/apisix/architecture-design/route)、
[Upstream](http://apisix.apache.org/zh/docs/apisix/architecture-design/upstream)、[Service](http://apisix.apache.org/zh/docs/apisix/architecture-design/service)
之中。
+
+## 新功能:支持设置镜像请求的比例
+
+proxy-mirror 插件支持设置镜像请求的比例,是用户们一直在期待的功能,我们在 Apache APISIX 2.10.0 上支持了这个功能。
+
+通过设置 `sample_ratio`,可以控制被镜像到测试服务的请求数量。比如,下述的配置将 `sample_ratio` 设置为
0.5,会将一半的请求镜像到测试服务上:
+
+```json
+{
+ "plugins": {
+ "proxy-mirror": {
+ "host": "http://127.0.0.1:1986",
+ "sample_ratio": 0.5
+ }
+ },
+ "upstream": {
+ "nodes": {
+ "127.0.0.1:1980": 1
+ },
+ "type": "roundrobin"
+ },
+ "uri": "/hello"
+}
+```
+
+## 新组件:APISIX Python Plugin Runner
+
+继 [Java Plugin
Runner](https://apisix.apache.org/blog/2021/06/21/use-Java-to-write-Apache-APISIX-plugins/)
和 [Go Plugin
Runner](https://apisix.apache.org/blog/2021/08/19/go-makes-Apache-APISIX-better/)
之后,Apache APISIX 又迎来了新的 Plugin Runner。
+
+[Apache APISIX Python Plugin
Runner](https://github.com/apache/apisix-python-plugin-runner) 已于 9 月 6 日发布了
0.1.0 版本。
+
+Python 是一门有着深厚群众基础的编程语言,一直以容易上手和灵活多变而著称。如今你我也能用这门语言,给 Apache APISIX 编写插件了。
+
+除了 Python Plugin Runner 之外,社区的伙伴也在开发其他编程语言的 Plugin Runner,比如 [JavaScript
Plugin
Runner](https://github.com/zenozeng/apisix-javascript-plugin-runner),欢迎大家参与开发。
+
+## 下载
+
+除了上述新功能和组件外,Apache APISIX 2.10.0 版本还引入了十余个新功能和插件,详情请查看本次发布对应的 [Change
log](https://github.com/apache/apisix/blob/release/2.10/CHANGELOG.md#2100)。
+
+下载 Apache APISIX 2.10.0
+
+- 源代码:请访问[下载页面](https://apisix.apache.org/downloads/)
+- 二进制安装包:请访问[安装指南](https://apisix.apache.org/zh/docs/apisix/how-to-build/)