Higress 0.7.0 版本发布:GA 进入倒计时

简介: 一个遵循开源Ingress/Gateway API标准,提供流量调度、服务治理、安全防护三合一的高集成、易使用、易扩展、热更新的下一代云原生网关。

进展概要


  1. Higress 控制台正式 release,涵盖 Higress 的服务/路由/域名/证书管理能力,并提供开箱即用的可观测功能
  2. 安装/升级 Higress 时支持自动安装对应版本的 Higress Console,避免版本不适配的问题
  3. 支持开启 Istio API,实现更多复杂的功能,并且也可以用于平滑替换 Istio Ingress Gateway


版本特性


Higress 控制台


现在通过 helm 命令安装 Higress 时将自动安装对应版本的 Higress Console,这里通过 higress-console.domain 参数,可以指定控制台的域名。

# 已经添加过 repo 的,请执行 helm repo update
helm repo add higress.io https://higress.io/helm-charts
helm install higress -n higress-system higress.io/higress --create-namespace --render-subchart-notes --set higress-console.domain=console.higress.io

image.png

注意:安装完成后会输出一段文本,其中包含获取控制台登录信息的命令。请执行该命令并记录用户名和密码。

image.png

正式环境部署时,建议控制台开启强制 HTTPS 访问,具体操作方式是,在 higress-system 命名空间下先创建好 TLS 证书和私钥对应的 secret,例如:

apiVersion: v1
kind: Secret
type: kubernetes.io/tls
data:
  tls.crt: -----BEGIN CERTIFICATE-----...
  tls.key: -----BEGIN RSA PRIVATE KEY-----...
metadata:
  name: my-tls-secret
  namespace: higress-system

然后通过下面 helm 命令开启强制 HTTPS 访问:

helm upgrade higress -n higress-system higress.io/higress --set higress-console.tlsSecretName=my-tls-secret

如果希望启用 Higress 自带的 Prometheus&Grafana,可以通过下面 helm 命令进行安装:

helm upgrade higress -n higress-system higress.io/higress --set higress-console.o11y.enabled=true

这样 Higress 控制台就可以看到自带的可观测大盘了:

image.png

当然,你也可以对接已有的 Prometheus&Grafana,使用这份 Higress 官方提供的 Dashboard 配置即可:https://higress.io/grafana/dashboard.json


可以登陆 Higress 控制台 Demo 试用现有所有功能: http://demo.higress.io


开启 Istio API


通过开启 Istio API,可以实现使用 Higress 平滑替换 Istio Ingress Gateway,具体 helm 命令如下:

helm upgrade higress -n higress-system higress.io/higress --set global.enableIstioAPI=true

基于 Istio API,可以实现目前 Higress 还未提供相应 Ingress 注解的能力,例如基于 Istio EnvoyFilter 来实现 HTTP to Dubbo 的协议转换配置方式:

apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: http-dubbo-transcoder
  namespace: higress-system
spec:
  configPatches:
  - applyTo: HTTP_FILTER
    match:
      context: GATEWAY
      listener:
        filterChain:
          filter:
            name: envoy.filters.network.http_connection_manager
            subFilter:
              name: envoy.filters.http.router
    patch:
      operation: INSERT_BEFORE
      value:
        name: envoy.filters.http.http_dubbo_transcoder
        typed_config:
          '@type': type.googleapis.com/udpa.type.v1.TypedStruct
          type_url: type.googleapis.com/envoy.extensions.filters.http.http_dubbo_transcoder.v3.HttpDubboTranscoder
  - applyTo: HTTP_ROUTE
    match:
      context: GATEWAY
      routeConfiguration:
        vhost:
          route:
            name: test
    patch:
      operation: MERGE
      value:
        route:
          upgrade_configs:
          - connect_config:
              allow_post: true
            upgrade_type: CONNECT
        typed_per_filter_config:
          envoy.filters.http.http_dubbo_transcoder:
            '@type': type.googleapis.com/udpa.type.v1.TypedStruct
            type_url: type.googleapis.com/envoy.extensions.filters.http.http_dubbo_transcoder.v3.HttpDubboTranscoder
            value:
              request_validation_options:
                reject_unknown_method: true
                reject_unknown_query_parameters: true
              services_mapping:
              - group: dev
                method_mapping:
                - name: sayName
                  parameter_mapping:
                  - extract_key: p
                    extract_key_spec: ALL_QUERY_PARAMETER
                    mapping_type: java.lang.String
                  passthrough_setting:
                    passthrough_all_headers: true
                  path_matcher:
                    match_http_method_spec: ALL_GET
                    match_pattern: /dubbo/hello
                name: com.alibaba.nacos.example.dubbo.service.DemoService
                version: 1.0.0
              url_unescape_spec: ALL_CHARACTERS_EXCEPT_RESERVED

上述配置比较复杂,原因是为了方便 Envoy 数据面程序逻辑处理而设计的 Schema。目前 Higress 社区已经在设计更方便 Ingress 配置使用的 CRD,后续也会在 Higress 控制台上提供对应的配置功能。


GA 版本规划


Higress 预计将在 3 月底/4 月初发布首个 GA 版本, 这个版本的主要规划如下:

  1. 实现 HTTP to Dubbo 协议转换的控制面配置简化
  2. Higress 控制台提供 Wasm 插件能力,支持配置自定义插件
  3. 推出第一版 Higress Admin API,可以被其他平台/工具集成
  4. 全面完善 Higress 官网文档,覆盖 Higress 全部功能的详细说明


Higress 社区


欢迎认领 Higress Issue 任务:

https://github.com/alibaba/higress/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22


完成一定数量的 Issues 就可以成为 Higress Committer,也有机会获得开源社区的礼物和荣誉🏆


欢迎加入 Higress 社区群,及时了解更多 Higress 动向:

image.png

相关文章
|
Oracle 安全 算法
重磅!JDK 17 发布,Oracle 宣布从 JDK 17 开始正式免费。。
JDK 16 刚发布半年(2021/03/16),JDK 17 又如期而至(2021/09/14),这个时间点牛逼啊,蹭苹果发布会的热度?记得当年 JDK 15 的发布也是同天,巧了。。
重磅!JDK 17 发布,Oracle 宣布从 JDK 17 开始正式免费。。
|
存储 Kubernetes 算法
ASI 2021 年双十一万级别超大规模集群的高性能提升
ASI 作为云原生的引领实施者,它的高性能,高可用,它的稳定性影响着甚至决定着阿里集团和云产品的业务的发展。
3890 110
ASI 2021 年双十一万级别超大规模集群的高性能提升
|
tengine 运维 Kubernetes
阿里巴巴重磅开源云原生网关: Higress
Higress 源自阿里巴巴内部电商、交易等核心生产场景的实践沉淀,遵循 Ingress/Gateway API 标准,将流量网关、微服务网关、安全网关三合一,并在此基础上扩展了服务管理插件、安全类插件和自定义插件,高度集成 K8s 和微服务生态,包括 Nacos 注册和配置、Sentinel 限流降级等能力,并支持规则变更毫秒级生效等热更新能力。
阿里巴巴重磅开源云原生网关: Higress
|
3月前
|
存储 人工智能 测试技术
基于 VectorDBBench 的性能评测与架构解析:Lindorm 向量引擎的优化实践
阿里云Lindorm向量检索服务重磅升级,依托CBO/RBO混合优化器与自适应混合索引,实测QPS达5.6万(百万级)、2.4万+(千万级),P99延迟低至2ms,融合检索性能行业领先,全面支撑AI时代高并发、低延迟、强一致的生产级向量应用。
548 4
|
Kubernetes API 计算机视觉
利用 member update 实现 etcd 灾难恢复 [也可实现 etcd 集群迁移]
利用 member update 实现 etcd 灾难恢复 [也可实现 etcd 集群迁移]
1861 0
|
4月前
|
存储 人工智能 监控
数据跨境、隐私泄露、审计溯源——出海企业三大安全必答题
AI 出海刚起步就被罚?阿里云日志服务 SLS 来了! 提供从跨域集中审计、智能数据脱敏到全链路溯源的一站式解决方案,让合规不再是负担,而是全球化竞争的护城河。
426 36
|
6月前
|
网络协议 数据挖掘 应用服务中间件
阿里云企业级199元服务器详细介绍:性能、适用场景及新购和续费政策
阿里云企业级199元服务器怎么样?适合初创企业用户的199元云服务器实例规格为通用算力型u1实例,支持多款Intel Xeon Platinum 可扩展处理器,基准vCPU算力与5代企业级实例持平,最高vCPU算力与6代企业级实例持平,2核CPU、4GB内存,5M独享固定带宽,搭配80G ESSD Entry盘云盘,阿里云的企业新老用户都能买,更重要的是续费也是199元一年的价格。本文为大家详细介绍一下阿里云199元云服务器的性能,包括CPU型号、公网带宽与系统盘以及适用场景等,以供了解和选择参考。
|
12月前
|
数据采集 自然语言处理 Java
Playwright 多语言一体化——Python/Java/.NET 全栈采集实战
本文以反面教材形式,剖析了在使用 Playwright 爬取懂车帝车友圈问答数据时常见的配置错误(如未设置代理、Cookie 和 User-Agent),并提供了 Python、Java 和 .NET 三种语言的修复代码示例。通过错误示例 → 问题剖析 → 修复过程 → 总结教训的完整流程,帮助读者掌握如何正确配置爬虫代理及其它必要参数,避免 IP 封禁和反爬检测,实现高效数据采集与分析。
714 3
Playwright 多语言一体化——Python/Java/.NET 全栈采集实战
|
网络协议
【Azure App Service】App Service 如何配置私网域名以及证书呢?
本文解答了关于 Azure App Service 如何配置私网域名及证书的问题。App Service 不支持私网域名,自定义域名需配置在公共 DNS 服务器上。文章引用官方文档详细说明了映射自定义 DNS 的步骤,并附带参考资料链接,帮助用户深入了解相关配置方法。
313 6