Higress 开源后,我们整理了开发者最关心的15个问题

本文涉及的产品
MSE Nacos/ZooKeeper 企业版试用,1600元额度,限量50份
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: 云原生架构下,网关承载着流量管理、服务调用、安全管理等多重职能,在稳定性、性能、安全性、易用性上存在着更高的要求。在 CNCF Landscpae 编排和管理的 API Gateway 领域中,已经有不少开源的网关选择,开发者们也有着不小的选型诉求。

云原生架构下,网关承载着流量管理、服务调用、安全管理等多重职能,在稳定性、性能、安全性、易用性上存在着更高的要求。在 CNCF Landscpae 编排和管理的 API Gateway 领域中,已经有不少开源的网关选择,开发者们也有着不小的选型诉求。

image.png

image.png


云原生网关 Higress 开源后,引起了开发者们的热烈讨论,我们整理了大家在 GitHub、钉群、微信群讨论的问题,并将回答汇总如下,方便各位更准确的读懂 Higress,也非常欢迎您和我们一起共建、定义 Higress。

Q1:Higress 现在适合上生产系统么?

A1:推荐发布 GA(General Availability)版本后再上生产,现阶段可以通过阅读源代码、测试环境试用来熟悉项目。

Q2:Higress 和 Envoy Gateway 有什么区别?

A2:Higress 是基于 Envoy 实现和扩展的,和 Envoy Gateway 一样遵循 Gateway API 标准,不同的是,还提供了:

  • Waf 防护、认证鉴权等安全插件能力
  • 多注册中心、协议转化、限流降级等服务管理插件能力,例如,对于传统使用 Dubbo 的微服务用户希望使用原生 RPC 方式暴露对外服务,但通常提供外部访问的服务以使用 HTTP 为主,为了帮助 Dubbo 用户降低服务暴露的开发成本,Higress 提供了 HTTP 转 Dubbo 协议功能,且通过 Console 为用户提供白屏化的配置方式,某客户使用后反馈“这是业界完成度最高的 HTTP 转 Dubbo 协议”功能。
  • 支持 WASM、Lua 等自定义插件,例如 Nginx 用户,我们还会支持进程外插件,满足多语言用户诉求,尤其是 Java 用户因现阶段 Java 社区对 WebAssembly 支持尚不完善但又希望对网关进行扩展的诉求。

Q3:Higress 和阿里巴巴的另一款开源网关 Tengine 有哪些不同?

A3:Tengine 是基于 Nginx 实现,通过 Lua 扩展,Higress 基于 istio + Envoy,通过 WASM 扩展,在技术架构上不太一样,开发者可以根据业务场景来进行选型。Higress 已经支持 Nginx Ingress 注解平滑迁移的能力,满足部分用户期望迁移到 Higress 但又不希望重新配置网关的诉求,同时 Higress 打破了 Nginx Ingress 只能关联单个 K8s 集群的限制,支持关联多个 K8s 集群,即可以将 Higress 作为统一接入网关使用,同时又可以享受 Ingress 的红利。

Q4:Higress 阿里云上的 MSE 云原生网关有什么关系?是基于此孵化的开源项目吗?

A4:MSE 云原生网关是 Higress 的商业化版本,能力上是有差异的,主要体现在性能、稳定性、易用性和安全性上,因为这些都非常依赖于云上的基础设施能力,详细资源还在整理,后续会在 MSE 的产品页和文档页进行展示,方便大家选型。当然,Higress 处于演进过程中,MSE 云原生网关上的哪些能力对外进行开源,我们会和社区一起定义,开源上我们也会规划一个插件市场。

Q5:Higress 将流量网关、微服务网关、安全网关三合一,这种做法业内是否通用?是否是一种发展趋势?

A5:流量网关、微服务网关、安全网关在业界中一直都有使用,部署形态大多采用各自使用独立集群部署,在K8s 主导的容器化背景下,K8s 通过 Ingress 标准化了入口网关,传统流量网关、微服务网关、安全网关独立部署模式在 K8s 下就显得部署成本高、运维复杂,站在用户角度只需要一款功能丰富的高集成网关即可,基于此我们判断高集成网关会是未来的一种发展趋势。

Q6:Higress 对上游进行了定制,是否存在着无法享受社区福利、还要背负生态跟进的问题?

A6:Higress 核心代码基本采用可插拔的 Filter 扩展,功能新增也尽量遵循可扩展原则,在上游跟进上为保持自身稳定性也不会马上跟进最新版本,比如 APISIX、Kong 内核都是基于 Nginx,但他们依然发展的很好,事实也说明上游跟进不会成为项目发展障碍。

Q7:Higress 支持 Nacos 的服务发现,是否有支持 Consul 的计划?

A7:Higress 和 Nacos 初步完成了整合,在整合完后,会提供给大家使用,Consul 的代码层面已经实现,生产还未验证,有计划开源和社区共建。

Q8:Higress 是否有离线部署版本?

A8:目前还没有现成的,可以拉取公网镜像推送到离线仓库进行构建。

Q9:Higress 能脱离 istio 环境,只基于 Docker 运行吗?

A9:当前是需要依赖 K8s 的,控制面在 istio 上,后续会考虑仅只依赖 Nacos 做控制。

Q10:Higress 除了运行在 K8s 上,是否支持在虚拟机和物理机上运行呢?

A10:还不支持,但后续会通过 Nacos 做配置管理,来支持这个需求。

Q11:Higress 的 Dashboard 会对外开源么?

A11:有计划的,非常希望借助社区的力量来加速 Dashboard 的开源,好用的后端开源项目需要搭配好用的控制台。

Q12:当前开源的版本支持 Waf 功能么,有相关的最佳实践么?

A12:支持的,并且会遵循 WASM 插件的社区生态,这方面的最佳实践会逐步提供出来。

Q13:Higress 是否支持弹性伸缩,网关是无状态的么?

A13:Higress 基于 K8s HPA,是支持弹性伸缩的,网关无状态,是个 deployment 。

Q14:Higress 有 roadmap 了么?

A14:最近的 milestone 是 0.6.0,更新内容包括:

  • Higress Controller 提供管控平面的 RESTful API
  • 发布 Higress CLI 工具,简化安装、升级、运维步骤
  • 推出 Higress Console,支持域名/路由/服务管理的 UI 交互操作
  • 提供开箱即用的指标监控和日志分析能力


近期的 roadmap 如下:

image.png


Q15:如何加入 Higress 社区进行贡献,已经迫不及待了。

A15:我们非常欢迎大家通过各种形式参与到我们项目的建设中,包括但不限于:

  • 架构设计
  • 模块设计
  • 代码实现
  • Bug Fix
  • Demo 样例
  • 文档、网站和翻译

具体的参与方法可以参见我们官网的开发者指引(https://higress.io/zh-cn/docs/developers/contributor-guide),或与 higress@googlegroups.com 联系。实际上,我们并不拘泥于贡献的形式,开发者提出的每一个 issue,无论是 Bug Report、改进建议或者甚至是问题咨询都代表着对项目的关注和帮助。希望 Higress 项目和社区一起健康成长,成为云原生网关领域一个优秀的解决方案。



相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
资源调度 监控 API
开源API网关APISIX分析与使用
开源API网关APISIX分析与使用
1276 0
|
负载均衡 Kubernetes 网络协议
Istio:xDS协议解析
Istio:xDS协议解析
Istio:xDS协议解析
|
存储 安全 Java
OAuth2实现单点登录SSO完整教程,其实不难!(上)
OAuth2实现单点登录SSO完整教程,其实不难!
4382 1
OAuth2实现单点登录SSO完整教程,其实不难!(上)
|
应用服务中间件 Linux 网络安全
Linux 安装 Nginx 并配置为系统服务(超详细)
Linux 安装 Nginx 并配置为系统服务(超详细)
|
存储 负载均衡 Kubernetes
Openresty动态更新(无reload)TCP Upstream的原理和实现
本文介绍了对Openresty或Nginx的TCP Upstream的动态更新(无需Reload)的一种实现方式,这种实现对于正在尝试做Nginx扩展的开发者是一种参考。文中我们对nginx结合lua对一次请求的处理流程和可扩展方式也进行了说明,重要的是给出了实际代码帮助开发者理解。目前社区中比如Kong、nginx-ingress-controller等基于Nginx扩展的项目都是类似的思路。
11841 1
Openresty动态更新(无reload)TCP Upstream的原理和实现
|
人工智能 Kubernetes API
应用网关的演进历程和分类
唯一不变的是变化,在现代复杂的商业环境中,企业的业务形态与规模往往处于不断变化和扩大之中。这种动态发展对企业的信息系统提出了更高的要求,特别是在软件架构方面。为了应对不断变化的市场需求和业务扩展,软件架构必须进行相应的演进和优化。网关作为互联网流量的入口,其形态也在跟随软件架构持续演进迭代中。我们下面就聊一聊网关的演进历程以及在时下火热的 AI 浪潮下,网关又会迸发怎样新的形态。
814 157
|
Ubuntu 编译器 Linux
go语言中SQLite3驱动安装
【11月更文挑战第2天】
407 7
|
Cloud Native 安全 Java
云原生网关MSE-Higress测评报告
MSE-Higress是遵循开源Ingress/Gateway API标准的下一代网关产品,将传统的流量网关、微服务网关、安全网关合三为一,具有高集成、易使用、易扩展、热更新的特点。本报告将从流量调度、服务治理、插件市场等方面对MSE-Higress进行详细测评,并对比其他网关如Nginx、APISIX、Spring Cloud Gateway等,分析其在功能、性能、架构、可扩展性、运维、价格等方面的优势和不足。
897 48
|
11月前
|
Java Maven
Maven编译报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile 解决方案
在执行Maven项目中的`install`命令时,遇到编译插件版本不匹配的错误。具体报错为:`maven-compiler-plugin:3.13.0`要求Maven版本至少为3.6.3。解决方案是将Maven版本升级到3.6.3或降低插件版本。本文详细介绍了如何下载、解压并配置Maven 3.6.3,包括环境变量设置和IDEA中的Maven配置,确保项目顺利编译。
12634 5
Maven编译报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile 解决方案

热门文章

最新文章