System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,特别是涉及一种灰度发布方法、装置、电子设备及存储介质。
技术介绍
1、为了对容器云中的服务进行流量治理,相关技术中引入了服务网格,服务网格能够以最轻量级的改动解决流量治理难题,且不影响业务系统的稳定性。服务数量众多,时常需要进行服务的版本迭代,以及进行新增服务的版本发布。在服务的版本迭代和新增服务的版本发布过程中,通常需要通过服务网格进行灰度发布。
2、服务网格流量治理是根据virtualservice(虚拟服务)与destinationrule(目标规则)的配置来实现的,但相关业务都是通过nodeport(端口)形式访问容器云,而nodeport的访问的优先级高于virtualservice,因此,从nodeport进入容器云会导致基于服务网格的灰度发布无法生效,无法按照灰度规则的流程进行下发,达不到服务治理的目的。
技术实现思路
1、鉴于上述问题,本申请实施例提供了一种灰度发布方法、装置、电子设备及存储介质,以便克服上述问题或者至少部分地解决上述问题。
2、本申请实施例的第一方面,提供了一种灰度发布方法,包括:
3、在容器云中注入服务网格,以及添加用于进行灰度发布的目标工作负载,所述服务网格的网关入口和所述容器云的网关入口受负载均衡器的管控;
4、设定所述服务网格的灰度规则指向所述目标工作负载;
5、在接收到灰度发布请求时,控制所述负载均衡器将流量导入所述服务网格的网关入口,以通过所述服务网格访问所述
6、可选地,还包括:
7、在接收到去灰度发布的请求时,控制所述负载均衡器将所述流量导入所述容器云的网关入口,以直接访问所述容器云中的原始工作负载,进而实现去灰度发布。
8、可选地,所述设定所述服务网格的灰度规则指向所述目标工作负载,包括:
9、配置所述容器云的访问形式,得到具有两种访问形式的所述容器云,所述两种访问形式包括:通过nodeport访问所述容器云,以及,通过ip访问所述服务网格,进而通过所述服务网格访问所述容器云;
10、配置所述服务网格的istio-gateway组件,使所述流量从所述istio-gateway组件转向gateway组件;
11、配置所述gateway组件,使所述gateway组件将所述流量分发给virtualservice组件;
12、配置所述virtualservice组件和destinationrule组件,使所述流量从所述virtualservice组件到达所述destinationrule组件后,流向所述destinationrule组件指向的所述目标工作负载。
13、可选地,所述在接收到灰度发布请求时,控制所述负载均衡器将流量导入所述服务网格的网关入口,以通过所述服务网格访问所述容器云中的所述目标工作负载,包括:
14、在接收到所述灰度发布请求时,控制所述负载均衡器将所述流量导入所述istio-gateway组件,以根据所述灰度发布请求从所述服务网格的sidecar发起访问请求,所述访问请求用于通过所述服务网格访问所述容器云中的所述目标工作负载;
15、在所述控制所述负载均衡器将所述流量导入所述容器云的网关入口之后,还包括:
16、根据所述容器云的网关入口映射的nodeport,将所述流量导入所述nodeport。
17、可选地,在所述控制所述负载均衡器将所述流量导入所述容器云的网关入口之前,还包括:
18、修改所述服务网格的灰度规则,使所述服务网格指向所述原始工作负载;
19、删除所述目标工作负载;
20、在所述控制所述负载均衡器将所述流量导入所述容器云的网关入口之后,还包括:
21、清除所述服务网格的sidecar中各组件的配置,所述sidecar中各组件包括:所述istio-gateway组件、所述gateway组件、所述virtualservice组件和所述destinationrule组件;
22、重启所述容器云中所述服务网格所在的pod。
23、可选地,还包括:
24、在接收到针对另一工作负载的灰度发布请求时,在所述服务网格所在的业务命名空间添加所述另一工作负载;
25、修改所述服务网格的灰度规则,使所述服务网格的灰度规则指向所述另一目标工作负载。
26、本申请实施例的第二方面,提供了一种灰度发布装置,包括:
27、注入模块,用于在容器云中注入服务网格,以及添加用于进行灰度发布的目标工作负载,所述服务网格的网关入口和所述容器云的网关入口受负载均衡器的管控;
28、设定模块,用于设定所述服务网格的灰度规则指向所述目标工作负载;
29、控制模块,用于在接收到灰度发布请求时,控制所述负载均衡器将流量导入所述服务网格的网关入口,以通过所述服务网格访问所述容器云中的所述目标工作负载,进而实现灰度发布。
30、本申请实施例的第三方面,提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如第一方面所述的灰度发布方法。
31、本申请实施例的第四方面,提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如第一方面所述的灰度发布方法。
32、本申请实施例的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的灰度发布方法。
33、本申请实施例包括以下优点:
34、本实施例中,控制负载均衡器将流量导入服务网格的网关入口,实现了从服务网格访问容器云,解决了直接通过nodeport形式访问容器云导致基于服务网格的灰度发布无法生效的技术问题。服务网格的灰度规则指向容器云中用于进行灰度发布的目标工作负载,因此,通过服务网格可以访问到容器云中的目标工作负载,进而在将流量导入服务网格的情况下,实现目标工作负载的灰度发布。
本文档来自技高网...【技术保护点】
1.一种灰度发布方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,还包括:
3.根据权利要求1所述的方法,其特征在于,所述设定所述服务网格的灰度规则指向所述目标工作负载,包括:
4.根据权利要求3所述的方法,其特征在于,所述在接收到灰度发布请求时,控制所述负载均衡器将流量导入所述服务网格的网关入口,以通过所述服务网格访问所述容器云中的所述目标工作负载,包括:
5.根据权利要求3所述的方法,其特征在于,在所述控制所述负载均衡器将所述流量导入所述容器云的网关入口之前,还包括:
6.根据权利要求1-5任一所述的方法,其特征在于,还包括:
7.一种灰度发布装置,其特征在于,包括:
8.一种电子设备,其特征在于,包括:
9.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至6任一项所述的灰度发布方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实
...【技术特征摘要】
1.一种灰度发布方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,还包括:
3.根据权利要求1所述的方法,其特征在于,所述设定所述服务网格的灰度规则指向所述目标工作负载,包括:
4.根据权利要求3所述的方法,其特征在于,所述在接收到灰度发布请求时,控制所述负载均衡器将流量导入所述服务网格的网关入口,以通过所述服务网格访问所述容器云中的所述目标工作负载,包括:
5.根据权利要求3所述的方法,其特征在于,在所述控制所述负载均衡器将所述流量导入所述容器云的...
【专利技术属性】
技术研发人员:徐东明,张道隆,槐正,徐蕾,王健,徐锐,付迎鑫,
申请(专利权)人:中国电信股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。