本发明涉及互联网,具体涉及一种金丝雀分析方法、装置和设备。
背景技术:
1、混沌工程是一种通过在生产环境引入故障来验证系统对非预期故障防御能力的方法,能够帮助提升集群的容错性和可恢复性。混沌工程在对接生产环境进行演练时,最小爆炸半径的大小和结果分析精准度是一种此消彼长的关系。虽然小流量的金丝雀分析集群可以在一定程度上解决这一问题,但是也会带来复杂的数学计算,而且金丝雀集群本身就存在环境的失真。
2、申请人经研究发现,金丝雀分析集群在进行数据分析时,存在金丝雀分析集群流量分配不稳定的问题。如果流量分配过小,会导致样本不够,即便演练发现漏洞也会因偏差太小被忽略;如果流量分配过大,会导致演练发现的漏洞引发大面积线上环境故障,此种方式会违背最小爆炸半径的原则。
技术实现思路
1、有鉴于此,本发明实施例提供一种金丝雀分析方法、装置和设备,以在较小的流量分配的情况下,也能精准的发现混沌演练过程中出现的漏洞。
2、为实现上述目的,本发明实施例提供如下技术方案:
3、一种金丝雀分析方法,包括:
4、基于生产集群构建基准集群和金丝雀集群;
5、调度生产环境流量至所述基准集群和所述金丝雀集群,其中,调度至所述基准集群和所述金丝雀集群的生产环境流量的比例不大于预设值;
6、对所述金丝雀集群注入故障进行混沌演练;
7、获取所述基准集群和所述金丝雀集群中的目标数据;
8、将由所述基准集群获取到的目标数据与由所述金丝雀集群获取到的目标数据进行对比,并输出对比结果。
9、可选的,上述金丝雀分析方法中,基于生产集群构建基准集群和金丝雀集群包括:
10、采用相同实例规格、相同镜像、相同安全组和相同网络配置,基于所述生产集群构建具有相同算力的基准集群和金丝雀集群。
11、可选的,上述金丝雀分析方法中,获取所述基准集群和所述金丝雀集群中的目标数据,至少包括一下一项或多项的组合:
12、获取所述基准集群和所述金丝雀集群中的http错误率;
13、获取所述基准集群和所述金丝雀集群中的播放器启播数;
14、获取所述基准集群和所述金丝雀集群中的用户侧错误感知数。
15、可选的,上述金丝雀分析方法中,输出对比结果之后,还包括:
16、将调度至所述基准集群和所述金丝雀集群的流量调度回所述生产集群。
17、可选的,上述金丝雀分析方法中,调度同比例的生产环境流量至所述基准集群和所述金丝雀集群之前,还包括:
18、判断所述基准集群和所述金丝雀集群是否创建完成;
19、当所述基准集群或所述金丝雀集群未创建完成时,继续等待;
20、当所述基准集群和所述金丝雀集群创建完成时,同时调度同比例的生产环境流量至所述基准集群和所述金丝雀集群。
21、可选的,上述金丝雀分析方法中,输出对比结果之后,还包括:获取算力调节指令或流量调节指令;
22、当获取到所述算力调节指令时,基于所述算力调节指令调节所述基准集群和金丝雀集群的算力;当基于所述算力调节指令调节所述基准集群和金丝雀集群的算力之后,继续执行步骤:调度生产环境流量至所述基准集群和所述金丝雀集群,以及后续步骤;
23、当获取到所述流量调节指令时,基于所述流量调节指令调节分配至所述基准集群和所述金丝雀集群的生产环境流量;当所述基准集群和所述金丝雀集群的生产环境流量调节完成后,继续执行步骤:对所述金丝雀集群注入故障进行混沌演练,以及后续步骤。
24、一种金丝雀分析装置,包括:
25、集群生成单元,用于基于生产集群构建基准集群和金丝雀集群;
26、流量调度单元,用于调度生产环境流量至所述基准集群和所述金丝雀集群,其中,调度至所述基准集群和所述金丝雀集群的生产环境流量的比例不大于预设值;
27、混沌演练单元,用于对所述金丝雀集群注入故障进行混沌演练;
28、目标数据采集单元,用于获取所述基准集群和所述金丝雀集群中的目标数据;
29、分析单元,用于将由所述基准集群获取到的目标数据与由所述金丝雀集群获取到的目标数据进行对比,并输出对比结果。
30、可选的,上述金丝雀分析装置中,所述集群生成单元在基于生产集群构建基准集群和金丝雀集群时,具体用于:
31、采用相同实例规格、相同镜像、相同安全组和相同网络配置,基于所述生产集群构建具有相同算力的基准集群和金丝雀集群。
32、可选的,上述金丝雀分析装置中,所述集群生成单元还用于:
33、当获取到所述算力调节指令时,基于所述算力调节指令调节所述基准集群和金丝雀集群的算力;
34、所述流量调度单元还用于:
35、当获取到所述流量调节指令时,基于所述流量调节指令调节分配至所述基准集群和所述金丝雀集群的生产环境流量。
36、一种金丝雀分析设备,包括存储器和处理器;所述存储器存储有适于所述处理器执行的程序,所述程序用于:
37、基于生产集群构建基准集群和金丝雀集群;
38、调度同比例的生产环境流量至所述基准集群和所述金丝雀集群;
39、对所述金丝雀集群注入故障进行混沌演练;
40、获取所述基准集群和所述金丝雀集群中的目标数据;
41、将由所述基准集群获取到的目标数据与由所述金丝雀集群获取到的目标数据进行对比,并输出对比结果。
42、基于上述技术方案,本发明实施例提供的上述方法,基于生产集群构建基准集群和金丝雀集群,调度部分生产环境流量至所述基准集群和所述金丝雀集群,对金丝雀集群注入故障进行混沌演练,然后获取所述基准集群和所述金丝雀集群中的目标数据,基于获取到的目标数据进行对比,并输出对比结果,在该分析过程中,由于不需要关注生产集群的目标数据,也不需要关注历史指标数据,也不需要设置预期指标数据,只需要比对基准集群和金丝雀集群的目标数据即可。即便对所述金丝雀集群分配较小的生产环境流量的情况下,也能可靠的发现演练过程中出现的漏洞。
1.一种金丝雀分析方法,其特征在于,包括:
2.根据权利要求1所述的金丝雀分析方法,其特征在于,基于生产集群构建基准集群和金丝雀集群包括:
3.根据权利要求1所述的金丝雀分析方法,其特征在于,获取所述基准集群和所述金丝雀集群中的目标数据,至少包括一下一项或多项的组合:
4.根据权利要求1所述的金丝雀分析方法,其特征在于,输出对比结果之后,还包括:
5.根据权利要求1所述的金丝雀分析方法,其特征在于,调度同比例的生产环境流量至所述基准集群和所述金丝雀集群之前,还包括:
6.根据权利要求1所述的金丝雀分析方法,其特征在于,输出对比结果之后,还包括:
7.一种金丝雀分析装置,其特征在于,包括:
8.根据权利要求7所述的金丝雀分析装置,其特征在于,所述集群生成单元在基于生产集群构建基准集群和金丝雀集群时,具体用于:
9.根据权利要求7所述的金丝雀分析装置,其特征在于,
10.一种金丝雀分析设备,其特征在于,包括存储器和处理器;