使用异地组网实现CICD的方法、系统及代理节点与流程
- 国知局
- 2024-08-02 14:25:43
本发明涉及网络信息处理,特别涉及使用异地组网实现cicd的方法和系统以及一种代理节点。
背景技术:
1、在软件开发领域,持续集成、持续部署和持续交付(ci/cd)流程是实现敏捷开发和快速迭代的重要实践。ci/cd流程能够帮助开发人员自动化测试和部署代码的过程,从而减少人为错误,提高软件开发的效率和质量。
2、传统的ci/cd流程通常在单一网络环境下进行,这通常涉及集中式的服务器或云服务,用于代码的版本控制、构建、测试和部署。然而,随着分布式开发团队的出现以及对安全性、延迟和地域限制的考虑,单一网络环境遇到了诸多挑战。例如,团队成员分布在不同地区时,网络延迟可能导致集成过程缓慢,而一些地区可能还受到互联网访问限制的影响。
3、现有的ci/cd技术解决方案在多网络环境下,面临的主要问题包括执行效率低下、安全风险、配置和维护复杂、可扩展性差和资源访问受限,这些问题成为了妨碍现代软件开发流程优化的重要因素。
4、网络延迟问题:当ci/cd系统涉及到异地数据中心或者云服务时,由于物理距离的增加,网络延迟会显著增加,从而导致执行效率低下。
5、安全性挑战:跨网络环境进行ci/cd意味着代码和数据必须在不同的网络之间传输,这可能会使敏感信息面临风险。
6、配置与维护复杂:目前多网络环境下实现有效的ci/cd流程通常需要复杂的网络配置和定期的维护。
7、可扩展性限制:随着企业和开发团队的扩大,单一网络环境难以有效扩展以满足分散的团队成员或计算资源的需求。现有技术在扩展到新的网络环境或地理区域时会遇到重大挑战。
8、资源访问的限制:在严格的网络环境中,开发团队可能需要访问位于不同私有网络中的资源,而现有ci/cd流程并非设计用于处理这类网络隔绝或访问控制的挑战,这导致资源利用率不高和工作效率降低。
9、需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成本领域普通技术人员已知的现有技术的信息。
技术实现思路
1、本发明的目的是为了解决背景技术存在的技术问题,为此,提供了使用异地组网实现cicd的方法和系统以及一种代理节点。
2、为了实现上述目的,本发明所采用的技术方案如下:
3、使用异地组网实现cicd的方法,包括以下步骤:
4、步骤s1:执行单元启动之后,读取启动配置文件,根据配置文件请求对应的地址;
5、步骤s2:根据请求的地址,分为两类:
6、第一类:直接连接服务中心,用于单一网络环境下的地址请求;
7、第二类:先连接代理节点,再连接服务中心,用于多网络环境下的地址请求;
8、步骤s3:在多网络环境下,执行单元向代理节点请求验证信息;
9、步骤s4:代理节点发送验证信息给执行单元,执行单元发送验证信息给代理节点,自此,执行单元和代理节点建立连接成功;
10、步骤s5:代理节点向服务中心请求验证信息;
11、步骤s6:服务中心发送验证信息给代理节点,代理节点校验验证信息是否合法;
12、若不合法,则中断连接;
13、若合法,代理节点发送验证信息给服务中心,自此,代理节点和服务中心建立连接成功;
14、步骤s7:执行单元、代理节点和服务中心都完成了连接的建立,异地组网成功;此时,执行单元具有自身的验证信息和代理节点的验证信息;代理节点具有自身的验证信息、执行单元的验证信息和服务中心的验证信息;服务中心具有自身的验证信息和代理节点的验证信息;
15、步骤s8:执行单元根据自身的验证信息,将请求的内容进行加密,发送给代理节点;
16、步骤s9:代理节点根据执行单元的验证信息,解密执行单元发送过来的请求内容,并将解密的内容以自身的验证信息进行加密,发送给服务中心;
17、步骤s10:服务中心根据代理节点的验证信息,解密代理节点发送过来的请求内容,并进行业务逻辑处理;
18、步骤s11:服务中心根据自身的验证信息,将请求的内容进行加密,发送给代理节点;
19、步骤s12:代理节点根据服务中心的验证信息,解密服务中心发送过来的请求内容,并将解密的内容以自身的验证信息进行加密,发送给执行单元;
20、步骤s13:执行单元根据代理节点的验证信息,解密代理节点发送过来的请求内容,得到执行内容,对执行内容进行执行,以此往复。
21、以下为本发明中方法进一步限定的技术方案,在单一网络环境下,执行单元向服务中心请求验证信息;
22、服务中心发送验证信息给执行单元,执行单元发送验证信息给服务中心,自此,执行单元和服务中心建立连接成功;此时,执行单元具有自身的验证信息和服务中心的验证信息,服务中心具有自身的验证信息和执行单元的验证信息;
23、执行单元根据自身的验证信息,将请求的内容进行加密,发送给服务中心;
24、服务中心根据执行单元的验证信息,解密执行单元发送过来的请求内容,并进行业务逻辑处理;
25、服务中心根据自身的验证信息,将请求的内容进行加密,发送给执行单元;
26、执行单元根据服务中心的验证信息,解密服务中心发送过来的请求内容,得到执行内容,对执行内容进行执行,以此往复。
27、以下为本发明中方法进一步限定的技术方案,在多个执行单元与服务中心建立异地组网之后,用户指定特定的执行单元执行服务中心下发的命令,包括步骤有:
28、所有执行单元将自身基本信息通过代理节点发送给服务中心;
29、服务中心在接收到执行单元上报的信息之后,会将信息记录下来,其中,信息包括:执行单元的自身基本信息和对接的代理节点;
30、用户在创建任务计划时,查看不同执行单元的信息列表,从中选择到特定的执行单元进行执行,其中,任务计划为服务中心下发给执行单元进行执行的一组命令的集合;
31、用户指定执行单元执行之后,服务中心查询对应的信息,并将执行内容发送到与服务中心对接的代理节点,其中,执行内容包括:执行单元的自身基本信息和任务计划;
32、代理节点根据执行单元的自身基本信息,查找到对应的执行单元并向其发送命令,执行单元执行接收到的命令。
33、以下为本发明中方法进一步限定的技术方案,执行单元的自身基本信息包括名称、机器位置、机器的配置。
34、以下为本发明中方法进一步限定的技术方案,执行单元给代理节点发送的验证信息为证书信息,代理节点给执行单元发送的验证信息为证书信息,代理节点给服务中心发送的验证信息为证书信息,服务中心给代理节点发送的验证信息为证书信息;
35、执行单元获取代理节点的证书信息,代理节点获取执行单元的证书信息,随后,交换各自的证书密钥,此时,执行单元与代理节点建立连接;
36、代理节点获取服务中心的证书信息,随后,代理节点校验其证书标记是否与服务中心的证书公钥是否一致,若不一致,则返回错误,中断连接;若一致,服务中心获取代理节点的证书信息,随后,交换各自的证书密钥,此时,代理节点与服务中心建立连接。
37、以下为本发明中方法进一步限定的技术方案,将服务中心的证书公钥,硬编码到代理节点的证书中,从而实现证书标记。
38、以下为本发明中方法进一步限定的技术方案,执行单元根据自身证书信息的证书密钥,对其请求的内容进行加密;
39、代理节点根据与执行单元交换得到的证书密钥,对执行单元发生过来的请求内容进行解密,再根据其自身证书信息的证书密钥,对其解密的内容进行加密;
40、服务中心根据与代理节点交换得到的证书密钥,对代理节点发生过来的请求内容进行解密;
41、服务中心根据自身证书信息的证书密钥,对其请求的内容进行加密;
42、代理节点根据与服务中心交换得到的证书密钥,对服务中心发生过来的请求内容进行解密,再根据其自身证书信息的证书密钥,对其解密的内容进行加密;
43、执行单元根据与代理节点交换得到的证书密钥,对代理节点发生过来的请求内容进行解密。
44、使用异地组网实现cicd的系统,包括多个服务中心和多个网络分区,在一个网络分区内设置至少一个代理节点和至少一个执行单元且一个代理节点和多个执行单元建立通信连接;
45、其中,网络分区是基于不同网络环境进行划分;
46、服务中心,用于将用户的请求转换成命令,发送到对应的执行单元进行执行,以及对执行单元发送过来的业务进行逻辑处理;
47、执行单元,用于执行服务中心下发的命令,以及返回执行结果;
48、代理节点,用于外网和内网之间的通信连接。
49、以下为本发明中系统进一步限定的技术方案,所述执行单元包括:
50、文件读取模块,用于读取执行单元启动的配置文件,并基于配置文件确定连接外网的地址;
51、第一请求模块,用于请求连接外网的地址,以及请求代理节点或服务中心的证书信息;
52、第一发送模块,用于发送请求连接外网的地址信息、自身基本信息、证书信息以及加密后的请求内容;
53、第一接收模块,用于接收证书信息以及加密后的请求内容;
54、所述服务中心包括:
55、用户指定模块,基于执行单元的自身基本信息以及代理节点的映射关系,指定特定的执行单元执行任务计划中的命令;
56、任务创建模块,用于创建不同执行单元进行执行的命令集合;
57、信息记录查询模块,用于记录和查询执行单元的自身基本信息以及代理节点的映射关系;
58、第二发送模块,用于发送任务计划、证书信息以及加密后的请求内容;
59、第二接收模块,用于接收代理节点的映射关系、证书信息以及加密后的请求内容。
60、一种代理节点,包括:
61、节点设立模块,用于根据划分的网络分区,设立不同的代理节点;
62、关系映射模块,用于确定接入对应节点的执行单元、代理节点以及接入对应节点的服务中心之间的映射关系;
63、节点切换模块,基于执行单元请求连接的地址,切换代理节点的接入与断开;
64、第二请求模块,基于执行单元请求连接的外网地址以及映射关系,向对应服务中心请求证书信息;
65、查找分配模块,基于服务中心的任务计划以及映射关系,将任务计划内的命令查找分配给对应的执行单元;
66、第三发送模块,用于发送映射关系、证书信息以及加密后的请求内容;
67、第三接收模块,用于接收执行单元请求连接的外网地址、服务中心的任务计划、证书信息以及加密后的请求内容。
68、相对于现有技术,本发明具有如下技术效果:
69、本发明通过在异地网络建立代理节点,收敛网络流量,由代理节点统一向外部服务中心进行调度从而完成流量传输,实现了异地组网,并优化异地组网的数据路径,按需分配,提高了资源的利用率和响应效率;降低了由于物理距离带来的网络延迟;其次,通过证书信息的交换密钥验证以及密钥加密/解密,使得数据在传输处理过程中得到充分保护,大幅降低了安全漏洞的风险;另外,利用异地组网,简化了整个ci/cd系统,只需了解代理节点和执行单元的映射关系并维护所对应的映射关系,简化了操作配置及维护流程,减少了对于专业网络管理人员的依赖,也就降低了成本;最后,在新的网络环境只需增加新的代理节点进行调度,并不影响其他网络环境的工作运行,提高了系统的可扩展性。
70、下面结合附图与实施例,对本发明进一步说明。
本文地址:https://www.jishuxx.com/zhuanli/20240801/242738.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表