新一代网关Higress入门介绍

Higress 是阿里云开源的一款下一代云原生网关,它结合了阿里巴巴内部的实践经验和技术积累,旨在提供一个标准化、高集成、易于扩展并且支持热更新的云原生网关解决方案。实现了流量网关 + 微服务网关 + 安全网关三合一的高集成能力,深度集成Dubbo、Nacos、Sentinel等微服务技术栈。

目录

一、历史介绍

二、功能介绍

1、传统网关介绍

2、新网关(三网合一)

3、higress网关

三、使用场景

四、入门示例

1、安装

2、 配置路由和访问验证

1)登录控制台

2)创建服务来源

3)创建域名

4)创建路由

5)验证

五、总结


一、历史介绍

  • Higress 的开发始于阿里巴巴内部的电商、交易等核心业务场景的实际需求。
  • 在经过内部验证后,Higress 被开源出来,以便更广泛的开发者社区可以受益于这套成熟的解决方案。
  • 自开源以来,Higress 经过了多个版本的迭代,逐渐完善了其功能并增加了更多的集成选项。
  • 2022 年 11 月:Higress 在云栖大会上首次宣布开源。
  • 2023 年 1 月:发布0.6.0版本,K8s 下黑屏操作(kubectl)达到GA状态;发布控制台预览版,提高安装部署的易用性。
  • 2023 年 2 月:发布0.7.0版本,控制台发布正式版本,集成开箱即用的可观测。
  • 2023 年 5 月:Higress 发布了 GA (General Availability) 版本 1.0.0,标志着该软件已经达到了生产可用的标准。
  • 2023 年 7 月发布1.1.0版本,增强控制台功能中微服务网关相关能力;支持非 K8s 下安装部署。
  • 2023 年 8 月发布1.2.0版本,支持作为 Knative 的网络层使用;支持 ARM 架构部署;支持对接 Consul。
  • 2023 年 11月:发布1.3.0版本,完整支持 GatewayAPI;支持 Operator 模式部署。
  • 2024 年 5 月:发布1.4.0版本,WASM 支持 redis 调用;简化 HTTPS 证书管理。
  • 2024 年 8 月:发布2.0.0版本,Istio/Envoy 内核版本升级,更丰富的 API 网关能力。

二、功能介绍

1、传统网关介绍

       过去通常把网关分为两个大类:流量网关与业务网关,流量网关主要提供全局性的、与后端业务无关的策略配置;业务网关主要提供独立业务域级别的、与后端业务紧耦合策略配置,随着应用架构模式从单体演进到现在的分布式微服务,业务网关也有了新的叫法 - 微服务网关(如下图说明)。

2、新网关(三网合一)

在虚拟化时期的微服务架构下,业务通常采用流量网关 + 微服务网关的两层架构,流量网关负责南北向流量调度和安全防护,微服务网关负责东西向流量调度和服务治理,而在容器和 K8s 主导的云原生时代,Ingress 成为 K8s 生态的网关标准,赋予了网关新的使命,使得流量网关 + 微服务网关合二为一成为可能。

作为面向南北向的公网网关,使用Waf防护异常流量是很常规的需求,而且随着互联网环境变得越来越复杂,用户对防护的诉求是持续增强的,常规做法是将流量先接入Waf安全网关,过滤后再将流量转发给流量网关,最后到达微服务网关;Higress希望通过内置Waf模块,使得用户的请求链接只经过Higress就可以同时完成Waf防护、流量分发、微服务治理,既可以降低链路RT,也可以降低网关的运维复杂度。因此Higress实现了流量网关 + 微服务网关 + 安全网关三合一的高集成能力。

3、higress网关

  • 流量网关 + 微服务网关 + 安全网关三合一:Higress 将传统的多种网关功能整合在一起,提供统一的入口点,简化了网络架构并提高了运维效率。
  • 基于 Envoy 和 Istio:Higress 采用了 Envoy 作为其核心代理组件,并利用 Istio 的服务网格功能,提供了高级的服务间通信和管理功能。
  • 深度集成阿里云生态系统:Higress 与阿里云的其他服务紧密集成,例如 Dubbo、Nacos 和 Sentinel 等,这使得开发者可以更加方便地使用阿里云提供的服务和工具。

三、使用场景

  • 微服务架构:在微服务环境中,Higress 可以作为一个统一的入口点来处理外部请求,并将它们路由到正确的服务实例。
  • API 网关:对于 API 的管理和发布,Higress 提供了丰富的路由规则和策略支持。
  • 安全控制:Higress 内置了多种安全机制,如身份验证、授权和加密,以保护应用免受攻击。

四、入门示例

1、安装

请参考本人另一博文:CSDN

2、 配置路由和访问验证

1)登录控制台

在浏览器中输入http://{安装ip}:8080 进入 Higress 控制台,首次访问时需要先初始化管理员账号。

初始化完成后,界面会自动跳转至登录页面。请使用前面设置的用户名密码登录 Higress 控制台。 

2)创建服务来源

点击“服务来源”导航栏,然后点击页面右侧的“创建服务来源”按钮。按照下图所示内容填写表单并点击“确定”按钮。 

3)创建域名

点击左侧“域名管理”导航栏,然后点击页面右侧的“创建域名”按钮。按照下图所示内容填写表单并点击“确定”按钮。

4)创建路由

点击“路由管理”导航栏,然后点击页面右侧的“创建路由”按钮。按照下图片所示内容填写表单并点击“确定”按钮。 

5)验证

打开命令行,执行命令:

curl http://localhost/get?foo=bar -H 'host: foo.bar.com'

五、总结

Higress是阿里云开源的云原生网关,集成了流量、微服务与安全网关功能,支持热更新,深度集成微服务技术栈。其开发源自阿里内部需求,自2022年开源以来持续迭代,增强功能与集成能力。Higress将传统网关功能整合,基于Envoy和Istio,深度集成阿里云生态。适用于微服务、API管理和安全控制场景,提供统一的入口点简化网络架构,提升运维效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拾光编程

您的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值