简介

cluster_conf.data为集群转发配置文件。

配置

基础配置

配置项 类型 描述
Version String 配置文件版本
Config Map<String, ClusterConf> 集群转发配置参数,key 是集群名称, value是集群转发配置参数

集群转发配置 ClusterConf

后端基础配置 BackendConf

配置项 类型 描述
TimeoutConnSrv Int 连接后端的超时时间,单位是毫秒
TimeoutResponseHeader Int 从后端读响应头的超时时间,单位是毫秒
MaxIdleConnsPerHost Int BFE实例与每个后端的最大空闲长连接数
RetryLevel Int 请求重试级别。0:连接后端失败时,进行重试;1:连接后端失败、转发GET请求失败时均进行重试

健康检查配置 CheckConf

配置项 类型 描述
Schem String 健康检查协议,支持HTTP和TCP
Uri String 健康检查请求URI (仅HTTP)
Host String 健康检查请求HOST (仅HTTP)
StatusCode Int 期待返回的响应状态码 (仅HTTP)
FailNum Int 健康检查启动阈值F(转发请求连续失败F次后,将后端实例置为不可用状态,并启动健康检查)
SuccNum Int 健康检查成功阈值S(健康检查连续成功S次后,将后端实例置为可用状态)
CheckTimeout Int 健康检查的超时时间,单位是毫秒
CheckInterval Int 健康检查的间隔时间,单位是毫秒

GSLB基础配置 GslbBasic

配置项 类型 描述
CrossRetry Int 跨子集群最大重试次数
RetryMax Int 子集群内最大重试次数
BalanceMode String 负载均衡模式,默认为WRR
HashConf Struct 会话保持的HASH策略配置- HashStrategy: 会话保持的哈希策略。例如:ClientIdOnly, ClientIpOnly, ClientIdPreferred- HashHeader: 会话保持的hash请求头- SessionSticky: 是否开启会话保持 (开启后,可以保证来源于同一个用户的请求可以发送到同一个后端)

集群基础配置 ClusterBasic

配置项 类型 描述
TimeoutReadClient Int 读用户请求wody的超时时间,单位为毫秒
TimeoutWriteClient Int 写响应的超时时间,单位为毫秒
TimeoutReadClientAgain Int 连接闲置超时时间,单位为毫秒

示例

  1. {
  2. "Version": "20190101000000",
  3. "Config": {
  4. "cluster_example": {
  5. "BackendConf": {
  6. "TimeoutConnSrv": 2000,
  7. "TimeoutResponseHeader": 50000,
  8. "MaxIdleConnsPerHost": 0,
  9. "RetryLevel": 0
  10. },
  11. "CheckConf": {
  12. "Schem": "http",
  13. "Uri": "/healthcheck",
  14. "Host": "example.org",
  15. "StatusCode": 200,
  16. "FailNum": 10,
  17. "CheckInterval": 1000
  18. },
  19. "GslbBasic": {
  20. "CrossRetry": 0,
  21. "RetryMax": 2,
  22. "HashConf": {
  23. "HashStrategy": 0,
  24. "HashHeader": "Cookie:UID",
  25. "SessionSticky": false
  26. }
  27. },
  28. "ClusterBasic": {
  29. "TimeoutReadClient": 30000,
  30. "TimeoutWriteClient": 60000,
  31. "TimeoutReadClientAgain": 30000,
  32. }
  33. }
  34. }
  35. }