v1.0.0

higress-group/higressv1.0.0May 22, 2023by johnlanni

AI Summary

This is the first General Availability (GA) release of Higress, featuring a robust plugin system supporting multi-layer Wasm configuration, header manipulation, and path rewriting. It includes critical fixes for service discovery and compatibility with older Kubernetes versions.

Key Highlights

  • Support Wasm plugin OCI images containing more than two layers
  • Support adding, modifying and deleting HTTP headers when forwarding requests and responses
  • Support rewriting request path when forwarding requests
  • Support toggling Wasm plugins on following levels: global, domain, route
  • Use first-party-jwt authentication mode by default in older K8s clusters

Breaking Changes

  • Change Helm configuration model required for Skywalking integration

New Features

  • Multi-layer Wasm plugin support
  • HTTP header manipulation
  • Request path rewriting
  • Plugin configuration hierarchy (global/domain/route)
  • Local mode support
  • Namespace-specific Ingress watching
  • Zookeeper service discovery fix
  • Kubernetes compatibility fixes

Full Release Notes

这是 Higress 的首个正式 GA 版本。欢迎大家试用。如有任何问题,请在 [Issues](https://github.com/alibaba/higress/issues) 或 [Discussions](https://github.com/alibaba/higress/discussions) 里提出。

版本变化:

**Higress Core:**

功能优化:
1. 支持加载包含多于两层数据的 Wasm 插件 OCI 镜像 #244
2. 支持在转发请求和响应时对 HTTP 标头进行增删改操作 #254
3. 支持在转发请求时重写请求路径 #278
4. 支持在全局、域名和路由粒度禁用指定的 Wasm 插件 #255
5. 支持使用 `global.local` Helm 参数启用本地运行模式 #269
6. 支持限定仅监听部分命名空间下的 Ingress 资源以满足单个 K8s 集群多实例部署的需求 #280

问题修复:
1. 修复无法正常从 Apache ZooKeeper 中读取服务注册信息的问题 #253
2. 在低于 1.21.0 版本的 K8s 集群中默认只用 `first-party-jwt` 认证模式,修复由于 K8s 本身不支持 `third-party-jwt` 而导致的功能问题 #266
3. 修复使用路径前缀匹配模式时“不区分大小”写功能不工作的问题 #260
4. 修复在系统内核版本低于 4.11.0 的 K8s 集群上无法正常运行的问题 #301

不兼容改动:
1. 变更接入 Skywalking 所需的 Helm 配置模型 #333

**Higress Console:**

功能优化:
1. 支持在路由上配置请求重写、请求头操作、请求重试、跨域等路由策略 #198 #199 #201
2. 支持在全局、域名和路径等多层级继承 Wasm 插件配置,并在内置一系列插件的基础上,允许用户配置自定义的 Wasm 插件:#198 #199 #200 #201
3. 支持用户通过 Helm 参数自定义监控套件所使用的存储类型 #204
4. 支持自动升级内置监控看板的视图配置 #217

问题修复:

1. 修复对接 Apache Zookeeper 数据来源时的一些兼容性问题 #203
2. 修复监控看板页面在显示时可能出现循环嵌套问题 #205
3. 在单一服务名称和端口同时提供 TCP 和 UDP 协议访问时的界面展示问题  #209
4. 修复删除资源 API 返回的 HTTP 状态码错误的问题 #213
5. 修复启用监控套件后无法通过 `helm upgrade` 命令升级集群的问题 #218

感谢所有为此版本做出贡献的同学:@2456868764 @casun18 @CH3CHO @Charlie17Li @Fkbqf @johnlanni @OnlyPiglet @rinfx @songpengyuan @SpecialYang @tomkerkhove @WeixinX @XunZhuo @zhangjiahaol

---

This is the first GA release of Higress.  You are welcomed to have a try. If there are any questions or suggestions, please post them in [Issues](https://github.com/alibaba/higress/issues) or [Discussions](https://github.com/alibaba/higress/discussions).

Version Changes:

**Higress Core:**

Features:
1. Support Wasm plugin OCI images containing more than two layers #244
2. Support adding, modifying and deleting HTTP headers when forwarding requests and responses #254
3. Support rewriting request path when forwarding requests #278
4. Support toggling Wasm plugins on following levels: global, domain, route #255
5. Support enabling local mode with Helm property `global.local` #269
6. Allow watching Ingress resources in a specific namespace, so multiple Higress instances can be deployed within a single K8s cluster #280

Fixes:
1. Fix the bug that unable to load registered services from Apache Zookeeper #253
2. Use `first-party-jwt` authentication mode by default in K8s clusters with version < 1.21.0, to fix the malfuction caused by the unsupport of `third-party-jwt` mode #266
3. Fix the malfunction of "ignoreUriCase" function when matching it by prefix #260
4. Fix the pod initializing error in K8s clusters with kernal version lower than 4.11.0 #301

Incompatibles:
1. Use new configuration properties to enable Skywalking integration #333

**Higress Console:**

Features:

1. Support configuring strategy on routes: rewrite, header control, retry and CORS #198 #199 #201
2. Add Wasm plugin configuration support on following levels: global, domain and route. Besides a series of built-in plugins, user can also configure custom plugins. #198 #199 #200 #201
3. Allow customizing storageClass used by the built-in o11y suite via Helm properties #204
4. Support upgrading built-in dashboard configurations automatically #217

Fixes:
1. Fix some compatibility issues in Apache Zookeeper integration #203
2. Fix a possible nesting display issue on the dashboard page #205
3. Fix UI display issues when a host:port combination of service supports TCP and UDP protocols at the same time #209
4. Fix the incorrect response status code returned by DELETE APIs #213
5. Fix the malfunction of  `helm upgrade` commands based on an o11y-enabled installation #218

Higress would like to thank the following contributors for their contributions to this release:  @2456868764 @casun18 @CH3CHO @Charlie17Li @Fkbqf @johnlanni @OnlyPiglet @rinfx @songpengyuan @SpecialYang @tomkerkhove @WeixinX @XunZhuo @zhangjiahaol