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

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

作者:Higress


进展概要


  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

微服务引擎 MSE 折扣


【0元试用】服务治理试用版,开通后 30 天免费使用。

【新老同享】

服务治理资源包:专业版/(7200Agent*小时)67.5 元。

注册配置中心资源包:开发版/规格 1c2g 76.7 元

【首购专享】

注册配置中心专业版,引擎类型 Nacos,包年包月 7 折。

注册配置中心专业版,引擎类型 ZooKeeper,包年包月 7 折。

云原生网关,包年包月 7 折。

服务治理资源包(按量抵扣),包年包月 7 折。

相关文章
|
Kubernetes 负载均衡 网络协议
k8s学习-Service(概念、模板、创建、外部代理、删除等)
k8s学习-Service(概念、模板、创建、外部代理、删除等)
886 0
|
7月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
6月前
|
人工智能 自然语言处理 安全
氛围编程走远,规格驱动开发降临
本文分析了目前行业内github,openai,amazon等对规格驱动开发的尝试和工具,提出了需求规格在将来的开发模式中的重要作用。
937 5
|
8月前
|
监控 Linux
Linux系统监控报告CPU软锁定问题(soft lockup)诊断方法
以上方法结合起来使用将大大提高解决此类问题效率与成功率。实际操作过程需谨慎考虑当前环境与场景特点选择合适方法,并且要注意数据备份与恢复计划防止误操作造成不可挽回损失。
1031 13
|
10月前
|
机器学习/深度学习 人工智能 运维
阿里云PAI人工智能平台介绍、优势及收费标准,手动整理
阿里云人工智能平台PAI是面向开发者和企业的机器学习与深度学习工程平台,提供数据标注、模型构建、训练、部署及推理优化等全链路服务。内置140+优化算法,支持PyTorch、TensorFlow等多种框架,具备高性能训练与推理能力,适用于自动驾驶、金融风控、智能推荐、智慧医疗等多个行业场景。PAI提供零代码开发、可视化建模、大模型一键部署等功能,助力企业快速构建AI应用。支持多种购买方式,如按量付费、预付费等,满足不同业务需求。
|
人工智能 自然语言处理 Cloud Native
智保未来:国泰产险的 AI 网关革新之旅
国泰产险在数智化转型中,全面拥抱大模型技术,通过阿里云云原生API网关简化接入复杂性,提升数据安全性和成本管控能力。公司在外呼、客服、内容生成等业务场景深度应用大模型,解决了多模型统一接入、认证鉴权、内容安全、成本管控和审计风控五大挑战,成为保险行业数智化转型的典范。
618 14
|
存储 消息中间件 人工智能
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
早期 MiniMax 基于 Grafana Loki 构建了日志系统,在资源消耗、写入性能及系统稳定性上都面临巨大的挑战。为此 MiniMax 开始寻找全新的日志系统方案,并基于阿里云数据库 SelectDB 版内核 Apache Doris 升级了日志系统,新系统已接入 MiniMax 内部所有业务线日志数据,数据规模为 PB 级, 整体可用性达到 99.9% 以上,10 亿级日志数据的检索速度可实现秒级响应。
1118 14
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
|
tengine Kubernetes Cloud Native
Tengine-Ingress 高性能高可用的云原生网关
Tengine-Ingress 高性能高可用的云原生网关
919 0
|
运维 Kubernetes Perl
在K8S中,节点故障pod驱逐pod过程,时间怎么定义的?
在K8S中,节点故障pod驱逐pod过程,时间怎么定义的?
|
Kubernetes 网络协议 网络安全
在K8S中,如果不能在容器内部使用netstat查看端口号的情况下,还有其他方式吗?
在K8S中,如果不能在容器内部使用netstat查看端口号的情况下,还有其他方式吗?