🗒️Higress Notes
00 分钟
2024-4-24
2024-4-24
type
status
date
slug
summary
tags
category
icon

1:Higress 简介

notion image

2:Higress 是什么

notion image

3:Higress 的定位

notion image

4:Higress 为什么选择了 Envoy + Istio?

notion image

5:Higress 快速入门

5.1:Higress 安装

notion image
notion image

5.2:Higress 功能说明

5.2.1:服务来源

notion image

5.2.2:服务列表

notion image

5.2.3:路由配置

notion image

5.2.4:域名管理

notion image

5.2.5:证书管理

5.2.6:插件管理

notion image

5.3:Higress 简单案例

notion image
notion image
notion image
notion image
notion image
notion image

6:Higress 高级应用

6.1:跨域

6.2:Rewrite

6.2.1:重写 Path

6.2.2:重写 Host

6.3:重定向

6.3.1:配置 HTTP 重定向 HTTPS

6.3.2:永久重定向

6.2.3:临时重定向

6.4:配置后端服务协议

6.5:超时

6.6:灰度发布

notion image

6.6.1:基于 Header 灰度

notion image
notion image
notion image
notion image

6.6.2:基于 Cookie 灰度

notion image
notion image

6.6.3:基于 Weights 灰度

7:Higress 插件功能

7.1:Basic Auth

notion image
notion image
notion image
notion image
notion image
notion image

7.2:API Key Auth

notion image
notion image

7.3:WAF 防护

notion image
notion image

7.4:其他方式配置

字段名称
数据类型
填写要求
描述
defaultConfig
object
选填
插件默认配置,全局生效于没有匹配具体域名和路由配置的请求
matchRules
array of object
选填
匹配域名或路由生效的配置
字段名称
数据类型
填写要求
配置示例
描述
ingress
array of string
ingressdomain中必填一项
["default/foo","default/bar"]
匹配 ingress 资源对象,匹配格式为: 命名空间/ingress名称
domain
array of string
ingressdomain中必填一项
["example.com","*.test.com"]
匹配域名,支持泛域名
config
object
选填
-
匹配后生效的插件配置
插件名称
镜像地址
Key 认证
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/key-auth:1.0.0
Basic 认证
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/basic-auth:1.0.0
HMAC 认证
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/hmac-auth:1.0.0
JWT 认证
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/jwt-auth:1.0.0
机器人拦截
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/bot-detect:1.0.0
自定义应答
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/custom-response:1.0.0
请求屏蔽
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/request-block:1.0.0
基于 Key 限流
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/key-rate-limit:1.0.0
WAF 防护
higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/waf:1.0.0

7.5:自定义插件

HTTP 处理阶段
触发时机
挂载方法
HTTP 请求头处理阶段
网关接收到客户端发送来的请求头数据时
wrapper.ProcessRequestHeadersBy
HTTP 请求 Body 处理阶段
网关接收到客户端发送来的请求 Body 数据时
wrapper.ProcessRequestBodyBy
HTTP 应答头处理阶段
网关接收到后端服务响应的应答头数据时
wrapper.ProcessResponseHeadersBy
HTTP 应答 Body 处理阶段
网关接收到后端服务响应的应答 Body 数据时
wrapper.ProcessResponseBodyBy
分类
方法名称
用途
可以生效的 HTTP 处理阶段
请求头处理
GetHttpRequestHeaders
获取客户端请求的全部请求头
HTTP 请求头处理阶段
ReplaceHttpRequestHeaders
替换客户端请求的全部请求头
HTTP 请求头处理阶段
GetHttpRequestHeader
获取客户端请求的指定请求头
HTTP 请求头处理阶段
RemoveHttpRequestHeader
移除客户端请求的指定请求头
HTTP 请求头处理阶段
ReplaceHttpRequestHeader
替换客户端请求的指定请求头
HTTP 请求头处理阶段
AddHttpRequestHeader
新增一个客户端请求头
HTTP 请求头处理阶段
请求 Body 处理
GetHttpRequestBody
获取客户端请求 Body
HTTP 请求 Body 处理阶段
AppendHttpRequestBody
将指定的字节串附加到客户端请求 Body 末尾
HTTP 请求 Body 处理阶段
PrependHttpRequestBody
将指定的字节串附加到客户端请求 Body 的开头
HTTP 请求 Body 处理阶段
ReplaceHttpRequestBody
替换客户端请求 Body
HTTP 请求 Body 处理阶段
应答头处理
GetHttpResponseHeaders
获取后端响应的全部应答头
HTTP 应答头处理阶段
ReplaceHttpResponseHeaders
替换后端响应的全部应答头
HTTP 应答头处理阶段
GetHttpResponseHeader
获取后端响应的指定应答头
HTTP 应答头处理阶段
RemoveHttpResponseHeader
移除后端响应的指定应答头
HTTP 应答头处理阶段
ReplaceHttpResponseHeader
替换后端响应的指定应答头
HTTP 应答头处理阶段
AddHttpResponseHeader
新增一个后端响应头
HTTP 应答头处理阶段
应答 Body 处理
GetHttpResponseBody
获取客户端请求 Body
HTTP 应答 Body 处理阶段
AppendHttpResponseBody
将指定的字节串附加到后端响应 Body 末尾
HTTP 应答 Body 处理阶段
PrependHttpResponseBody
将指定的字节串附加到后端响应 Body 的开头
HTTP 应答 Body 处理阶段
ReplaceHttpResponseBody
替换后端响应 Body
HTTP 应答 Body 处理阶段
HTTP 调用
DispatchHttpCall
发送一个 HTTP 请求
-
GetHttpCallResponseHeaders
获取 DispatchHttpCall 请求响应的应答头
-
GetHttpCallResponseBody
获取 DispatchHttpCall 请求响应的应答 Body
-
GetHttpCallResponseTrailers
获取 DispatchHttpCall 请求响应的应答 Trailer
-
直接响应
SendHttpResponse
直接返回一个特定的 HTTP 应答
-
流程恢复
ResumeHttpRequest
恢复先前被暂停的请求处理流程
-
ResumeHttpResponse
恢复先前被暂停的应答处理流程
-