我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Rainbond网络治理插件ServiceMesh怎么用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Rainbond网络治理插件ServiceMesh怎么用

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

ServiceMesh网络治理插件

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

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

Rainbond网络治理插件ServiceMesh怎么用

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

  • 入站治理插件需要根据系统分配的端口转发规则进行流量转发,比如UI服务本身是监听的8080端口,这是不能改变的,但是我们可以改变从边缘网关访问UI服务时的访问端口,因此Rainbond应用运行时为动态为入站网络治理插件生成监听端口对,比如下述配置:

"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实现,综合网络插件同时实现了入站方向的治理和出站方向的治理,提供以下配置参数:

入站方向

全局限流:

  • OPEN_LIMIT 开启全局限流功能,全局限流功能依赖于第三方的限流服务,比如 ratelimit , 当前服务需要依赖ratelimit服务,并设置RATE_LIMIT_SERVER_HOST和RATE_LIMIT_SERVER_PORT环境变量。

  • LIMIT_DOMAIN 限流链路的domain key,与全局限流服务的配置对应

断路:

  • MaxConnections 最大连接数,Http协议时仅适用于http1.1,TCP协议时设置最大TCP连接数。

  • MaxRequests 并发请求数,适用于HTTP协议

  • MaxPendingRequests 最大等待请求数,适用于HTTP协议

  • MaxActiveRetries 最大重试次数,适用于HTTP协议

  • MaxRequestsPerConnection 单连接最大请求数,适用于HTTP协议,支持http1.1 和http2

出站方向

动态路由(HTTP协议):

Domains

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

Prefix

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

Headers

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

Weight

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

断路(面向连接):

  • MaxConnections 最大连接数,Http协议时仅适用于http1.1,TCP协议时设置最大TCP连接数。

  • MaxRequests 并发请求数,适用于HTTP协议

  • MaxPendingRequests 最大等待请求数,适用于HTTP协议

  • MaxActiveRetries 最大重试次数,适用于HTTP协议

  • MaxRequestsPerConnection 单连接最大请求数,适用于HTTP协议,支持http1.1 和http2

断路(面向上游主机):

  • ConsecutiveErrors 上游服务主机发生500错误的被逐出的次数。

  • BaseEjectionTimeMS 主机被逐出的基础时间,及第一次被逐出的时间,如果被逐出n次,时间则为n*BaseEjectionTimeMS

  • MaxEjectionPercent 被逐出主机的最大比例,如果设置为100则允许全量逐出。

  • IntervalMS 分析主机是否应该被逐出的时间间隔

  • HealthyPanicThreshold 进入恐慌模式的比例,默认是50

出站网络治理插件

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

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

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Rainbond网络治理插件ServiceMesh怎么用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Rainbond网络治理插件ServiceMesh怎么用

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

docker中网络插件flannel怎么用

这篇文章主要为大家展示了“docker中网络插件flannel怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“docker中网络插件flannel怎么用”这篇文章吧。 跨节点通讯,需要
2023-06-04

怎么使用Vundle管理Vim插件

本篇内容介绍了“怎么使用Vundle管理Vim插件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Vundle(Vim bundle)是一个V
2023-06-27

网络扫描管理软件Network Radar for Mac怎么用

这篇文章给大家分享的是有关网络扫描管理软件Network Radar for Mac怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Network Radar for Mac是Mac平台上一款能够为您进行网络
2023-06-06

怎么用代理ip玩网络游戏

本篇内容介绍了“怎么用代理ip玩网络游戏”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代理IP是IP交换最方便的软件,许多网络工作者正在使用
2023-06-25

怎么用Linux命令行管理网络

小编给大家分享一下怎么用Linux命令行管理网络,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!无论你是要下载文件、诊断网络问题、管理网络接口,还是查看网络的统计数
2023-06-16

怎么在Linux上使用Vundle管理Vim插件

这篇文章主要为大家展示了“怎么在Linux上使用Vundle管理Vim插件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么在Linux上使用Vundle管理Vim插件”这篇文章吧。毋庸置疑,V
2023-06-16

Linux服务器怎么使用网络代理

这篇文章主要讲解了“Linux服务器怎么使用网络代理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux服务器怎么使用网络代理”吧!Linux服务器使用网络代理因校园服务器(Ubuntu
2023-07-05

用代理ip怎么缓解网络卡顿

本篇内容主要讲解“用代理ip怎么缓解网络卡顿”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“用代理ip怎么缓解网络卡顿”吧!如今看视频成了网友日常的嗜好,大部分时间看的流畅还行,但是卡住不动的问题
2023-06-25

怎么使用feign配置网络ip代理

今天小编给大家分享一下怎么使用feign配置网络ip代理的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。feign配置网络ip
2023-07-02

怎么用CCProxy配置网络代理服务器

使用CCProxy配置网络代理服务器的步骤如下:下载和安装CCProxy软件:在官方网站(http://www.youngzsoft.net/ccproxy/)下载CCProxy软件,并按照提示进行安装。打开CCProxy软件:在安装完成后
2023-10-23

阿里云做网络代理服务器怎么用

在浏览器中输入需要访问的网站地址,如要访问https://example.com,则输入http://example.com,进入网站后即可访问。在网站中输入https://api.aliyun.com,即可调用阿里云提供的API服务,如使用GET或POST方法获取API接口返回的数据。使用阿里云提供的API服务时需要提供有效的APIKey和密钥,以及身份验证信息,以确保调用的API是合法的。在调用API时,需要将数据以加密的方式传输,以保证数据的安全性。在...
2023-10-27

怎么用批处理实现网络巡检脚本

这篇文章给大家分享的是有关怎么用批处理实现网络巡检脚本的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。check.bat 内容(脚本内容可能会应为排版问题不能直接复制粘帖运行,可自行修改): 代码如下:@echo
2023-06-08

怎么利用在线代理ip获取网络资源

这篇文章主要介绍“怎么利用在线代理ip获取网络资源”,在日常操作中,相信很多人在怎么利用在线代理ip获取网络资源问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么利用在线代理ip获取网络资源”的疑惑有所帮助!
2023-06-20

使用代理ip怎么实现网络防御功能

这篇文章给大家介绍使用代理ip怎么实现网络防御功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、在不同地区部署代理ip节点,使访问者能够快速连接到附近的节点,使访问者能够更快地访问站点,CDN缓存能够进一步提高站点
2023-06-15

网络文件怎么利用Java进行读取并下载

这篇文章将为大家详细讲解有关网络文件怎么利用Java进行读取并下载,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。具体内容如下import java.io.ByteArrayOutputStr
2023-05-31

在Java中怎么利用代理对网络进行连接

在Java中怎么利用代理对网络进行连接?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。需求是这样的:一、界面上要有这样几种代理类型可以选。1.HTTP代理 2.S
2023-05-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录