1.一种dubbo框架集成istio服务网格的方法,其特征在于:该方法将dubbo框架的服务发现和远程调用功能与istio服务网格的服务治理功能深度结合,实现对使用dubbo服务的应用进行服务治理。
2.根据权利要求1所述的dubbo框架集成istio服务网格的方法,其特征在于:包括以下步骤:
s1、改造istiopilot组件,增加监控注册中心的类型,将获取到的数据转换成通用配置下发到数据层面;
s2、数据层面适配dubbo协议,在envoy组件中增加处理dubbo协议的filter接口;
s3、dubbo框架和istio服务网格进行交互。
3.根据权利要求2所述的dubbo框架集成istio服务网格的方法,其特征在于:步骤s1中增加的监控注册中心类型为zookeeper。
4.根据权利要求3所述的dubbo框架集成istio服务网格的方法,其特征在于:envoy组件收到dubborpc请求动态地创建fitler去处理,将这个请求转发到相应的filter进行处理,在filter中获取到dubborpc请求要访问的服务,将服务提取出来,并把请求转发到其他的filter接口,进行后续的流量治理。
5.根据权利要求4所述的dubbo框架集成istio服务网格的方法,其特征在于:步骤s3具体包括以下流程:
1)系统启动,首先启动监控注册中心zookeeper和istio控制层面的pilot组件;
2)dubbo应用启动,将dubbo自身的信息注册到监控注册中心zookeeper当中;
3)dubbo组件间的通信,b组件调用a组件的服务,b组件发送一个rpc请求,dubbo发送rpc请求时,找到a组件的服务提供者的所有实例的ip地址,并选择一个ip地址作为目的地址进行访问。
6.根据权利要求5所述的dubbo框架集成istio服务网格的方法,其特征在于:istio控制层面的pilot组件监听zookeeper中存储的dubbo服务提供者的信息,当服务发生改变时,pilot及时感知。
7.根据权利要求6所述的dubbo框架集成istio服务网格的方法,其特征在于:dubbo自身的信息注册到zookeeper后,pilot组件感知到注册中心的数据发生的变化,拉取新的服务配置,pilot组件将配置下发到每个数据层面,即envoy组件里。
8.根据权利要求7所述的dubbo框架集成istio服务网格的方法,其特征在于:b组件调用调用a组件服务时,用a组件的服务名称作为目的地址来访问。
9.根据权利要求8所述的dubbo框架集成istio服务网格的方法,其特征在于:b组件发送一个rpc请求之后,被数据层面的envoy拦截,envoy判断出请求是dubbo协议的请求,将请求转给envoyfilter。envoyfilter提取出这个请求的目的地址,将这个请求转给filter链中的下一个处理filter。