Hango 是一个基于 Envoy 构建的高性能、可扩展、功能丰富的云原生API网关。
Hango 提供请求代理、动态路由、负载均衡、限流、熔断、健康检查、安全防护等功能,可用于微服务网关、七层负载均衡、Kubernetes Ingress、Serverless网关等应用场景。
通过Hango Rider模块,用户可以自定义多语言插件进行能力扩展。
指引文档: 介绍功能、版本、配置、实践等内容的各类文档
博客: 介绍Hango相关动态
技术路线:基于领先的网络代理组件 Envoy 构建,具备丰富的功能、优异的性能与可观测性
扩展性:可用于生产的增强级 Lua 扩展框架 Rider;基于 WebAssembly 的多语言扩展插件能力(Alpha,后续提供)
多场景:具备支撑微服务网关、七层负载均衡、Kubernetes Ingress、Serverless网关等多种场景能力
云原生:以云原生标准数据面组件 Envoy 作为核心引擎,天然亲和云原生;可作为 Kubernetes、Service Mesh、Serverless 的 Ingress、Gateway 实现
API生态与集成:以 API 为中心的生态管理,提供数百种工业级协议快速集成能力(后续提供)
控制平面:易用的控制台进行网关、服务、路由等多维度管理,简化使用者操作
HTTP、gRPC、Websocket 等多协议代理
支持 Kubernetes 等注册中心服务发现
L7 流量代理、连接池配置
基于请求参数的动态路由、主动被动健康检查策略、丰富的负载均衡算法
多场景限流、熔断、降级、重试等流量治理功能
IP黑白名单控制、认证鉴权等安全防护功能
自定义Header黑白名单,内置UA、Refer黑白名单
可视化控制台进行网关配置管理
得益于 Envoy 优异的性能,单实例性能可达10w TPS以上
自定义插件框架,支持用户用多种语言开发自定义插件,参考Hango自定义插件使用手册
Hango 基于云原生理念构建,数据面基于 Envoy 进行扩展,增强插件链,提供 Rider 模块用于自定义插件扩展;控制面组件包括 Slime,Istio,API Plane 以及 Portal 模块。
得益于 Slime 良好的扩展性与兼容性,用户可以直接选择社区 Istio 作为控制面进行 Hango 构建。
Hango 是一个云原生架构下的网关项目,聚合了以下工程:
可以点击链接详细了解每个项目模块。
目前,安装Hango需要具备Kubernetes环境,目前支持1.17及以上 Kubernetes。 通过Helm,可以一键部署Hango。具体部署可以参考Hango部署手册
Hango UI提供了用户使用指南,通过使用指南用户可以方面上手 Hango,可以参考通过Hango UI配置Hango路由
同时,也可以通过API调用的方式进行配置,可以参考通过OpenAPI配置Hango路由
真诚的欢迎各位和我们进行交流. 我们提供以下方式:
同时,也可以通过以下方式进行项目贡献:
Hango 的建设离不开社区成员有价值的工作,这里特别感谢 Envoy 与 Istio