ITPub博客

首页 > 云计算 > 开源云工具 > Higress 0.7.0 版本发布:GA 进入倒计时

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

原创 开源云工具 作者:阿里巴巴云原生 时间:2023-04-03 17:09:43 0 删除 编辑

> 作者:Higress


## 进展概要


1.  Higress 控制台正式 release,涵盖 Higress 的服务/路由/域名/证书管理能力,并提供开箱即用的可观测功能

1.  安装/升级 Higress 时支持自动安装对应版本的 Higress Console,避免版本不适配的问题

1.  支持开启 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](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/8c6c3f313adb4683a75240550b3fbf17~tplv-k3u1fbpfcp-zoom-1.image "image.png")


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


![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/14e8916092cc4c088188c7a254ea1769~tplv-k3u1fbpfcp-zoom-1.image "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](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ada951ba0b804f789c5519817c3c6fa3~tplv-k3u1fbpfcp-zoom-1.image "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 协议转换的控制面配置简化

1.  Higress 控制台提供 Wasm 插件能力,支持配置自定义插件

1.  推出第一版 Higress Admin API,可以被其他平台/工具集成

1.  全面完善 Higress 官网文档,覆盖 Higress 全部功能的详细说明


## Higress 社区


欢迎认领 Higress Issue 任务:*[https://github.com/alibaba/higress/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22](https://github.com/alibaba/higress/issues?q=is%253Aopen+is%253Aissue+label%253A%2522help+wanted%2522)*


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


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


![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/ee2a586beddb4f63826578dfa26b5e3f~tplv-k3u1fbpfcp-zoom-1.image "image.png")


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69953029/viewspace-2943609/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
阿里云云原生公众号(ID:Alicloudnative)发布云原生技术最新资讯、汇集云原生技术最全内容,定期举办云原生活动、直播,阿里产品及用户最佳实践发布。与你并肩探索云原生技术点滴,分享你需要的云原生内容。

注册时间:2019-11-07

  • 博文量
    1497
  • 访问量
    710856