Rainbond网络治理插件ServiceMesh怎么用

发布时间:2022-04-21 09:07:49 作者:iii
来源:亿速云 阅读:265

这篇文章主要讲解了“Rainbond网络治理插件ServiceMesh怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Rainbond网络治理插件ServiceMesh怎么用”吧!

ServiceMesh网络治理插件

5.1.5版本后,Rainbond默认提供了综合网络治理插件(同时处理入站和出站网络)和出站网络治理插件两个插件可用。 网络治理插件工作在与业务容器同一个网络空间之中,可以监听一个分配端口,拦截入站的业务流量进行限流、断路等处理再将流量负载到业务服务的实际监听端口之上。

同时也可以工作在出站方向,业务服务需要访问上游服务时,通过访问本地出站治理插件监听的端口,进行流量路由、断路、安全验证等处理,再将流量负载到尚有服务的主机之上。 

Rainbond网络治理插件ServiceMesh怎么用

对于插件的开发者来说需要关注如下两点:

"base_ports":[
      {
          "service_alias":"gre484d9",
          "service_id":"9703228e9b42cde3e3a72f4826e484d9",
          "port":8080,
          "listen_port":65301,
          "protocol":"http",
          "options":{
              "LIMIT_DOMAIN":"limit.common",
              "OPEN_LIMIT":"NO"
          }
      }
  ]

插件运行时会自动注入DISCOVER_URL变量,通过此变量值的地址可以动态获取到如上的配置信息,入站网络治理插件必须通过以上配置来监听65301端口,将流量负载到127.0.0.1:8080端口。

"base_services":[
        {
            "service_alias":"gre484d9",
            "service_id":"9703228e9b42cde3e3a72f4826e484d9",
            "depend_service_alias":"grcff92d",
            "depend_service_id":"c81923991ff2428082a5d9d478cff92d",
            "port":5000,
            "protocol":"http",
            "options":{
                "BaseEjectionTimeMS":"30000",
                "ConsecutiveErrors":"5",
                "Domains":"todos",
                "Headers":"",
                "IntervalMS":"10",
                "MaxActiveRetries":"5",
                "MaxConnections":"10",
                "MaxEjectionPercent":"20",
                "MaxPendingRequests":"1024",
                "MaxRequests":"1024",
                "MaxRequestsPerConnection":"",
                "PROXY":"YES",
                "Prefix":"/",
                "Weight":"80"
            }
        }
]

使用上述原生配置发现和服务发现来让自定义插件工作,插件层面需要做较多的数据适配工作。Rainbond同时提供了基于envoy XDS(grpc)规范的动态配置发现服务,在插件中通过XDS_HOST_IP XDS_HOST_PORT两个变量来获取XDS服务的地址。

对用用户来说插件层的网络治理对于业务层是完全透明的,所有有依赖关系的分布式服务类似于运行同一台主机一样。

插件实践

综合网络治理插件

默认提供的综合网络治理插件基于envoy 1.9.0实现,综合网络插件同时实现了入站方向的治理和出站方向的治理,提供以下配置参数:

入站方向

全局限流:

断路:

出站方向

动态路由(HTTP协议):

Domains

请求域名,对于http协议的上游服务,支持基于域名路由并复用80端口。

Prefix

请求Path路径的前缀,基于前缀来路由不同的上游服务。

Headers

请求头,基于请求头的路由不同的上游服务。

Weight

权重,基于不同的权重来将流量分发到不同的上游服务。

断路(面向连接):

断路(面向上游主机):

出站网络治理插件

当服务无需使用入站方向的治理功能时,可只使用出站治理插件,配置参数与综合治理插件的出站方向一致。

感谢各位的阅读,以上就是“Rainbond网络治理插件ServiceMesh怎么用”的内容了,经过本文的学习后,相信大家对Rainbond网络治理插件ServiceMesh怎么用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. 内存治理的概念
  2. 用Fundebug插件记录网络请求异常的方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

rainbond servicemesh

上一篇:怎么用python画条形图

下一篇:Spring Boot怎么正确读取配置文件属性

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》