一种面向混合云计算平台的协同服务方法与流程

文档序号:11710051阅读:200来源:国知局
一种面向混合云计算平台的协同服务方法与流程

本发明涉及混合云协同的端口代理技术和云计算技术,具体涉及一种面向混合云计算平台的协同服务方法,用于满足多个私有云间的协同,即通过互联网将私有服务引入封闭计算环境的情景。



背景技术:

随着“大物移云”(大数据,物联网,移动通讯,云技术)的时代到来,可编程按需定制、集中式统一管理、动态流量监管、自动化部署的新一代云计算环境带来了生产生活和商业模式的根本性改变。越来越多的企业构建了自己的私有云或者采用了第三方提供商的云服务,并取得了较好的应用效果。但是另一方面,为了保留对自己数据和业务的掌控,有效降低风险,企业往往保留了部分业务系统运行在企业内部;同时又需要充分利用公有云的灵活、安全、全面的互联网基础设施和成本优势。这就产生了混合云的概念。混合云架构的需求普遍存在,也是大势所趋。为了满足这种需求,有云服务厂商提出了基于vpn(virtualprivatenetwork,虚拟专用网络)的混合云架构。但是如果有企业需要将私有云内部的私有服务暴露给另一个封闭私有云,例如某企业需要保护数据的同时又要使用第三方云计算资源,则将企业内部私有云中的数据库服务暴露给云平台中的虚拟私有云,以便其内部隔离的计算环境能够获取相应数据。这种基于vpn的架构虽然能够实现将数据服务暴露给第三方计算资源,但是并不能很好地进行这类服务的支持。因为vpn本身是全局代理的,这时vpn在暴露一个服务的同时还会将其他不应暴露的服务或终端暴露出来,而且在计算结束后不能停止服务暴露,除非断开vpn。这种vpn架构不能提供服务的精确订制、取消及审计,增加了整个系统的安全风险。一般代理技术,比如应用层代理、http层代理和socks代理等都是一层转发,无法穿过两个私有云,不能直接应用到这种混合云架构中。另外,无论正向或反向代理,都是为了打通内网和外网,为内外网提供一条通路,但是这条通路并不是点对点的,有可能被外部网络利用,具有一定安全隐患。



技术实现要素:

本发明要解决的技术问题:针对现有技术中存在的上述问题,提供了一种面向混合云计算平台的协同服务方法,该方法能够突破不同vpc中的访问限制,按需进行最小程度的服务暴露,同时对访问进行严密监控和审计,实现了混合云协同,保证了私有云安全性。

为了解决上述技术问题,本发明采用的技术方案为:

一方面,本发明提供一种面向混合云计算平台的协同服务方法,实施步骤包括:

1)用户通过客户端向带有服务程序的第一节点中的客户端守护进程发送推端口请求,所述推端口请求包括服务程序的服务地址、端口以及用户的身份认证信息;

2)客户端守护进程将推端口请求通过互联网发给待提供服务程序协同服务的第二节点;

3)第二节点在针对推端口请求验证用户通过后在本地建立云端服务代理;

4)第一节点中的服务程序通过云端服务代理为第二节点中的客户应用程序提供协同服务。

优选地,步骤2)的详细步骤包括:客户端守护进程将推端口请求通过互联网发给待提供服务程序协同服务的第二节点前端的负载均衡器,所述负载均衡器的后端连接有至少一个第二节点,所述第二节点包括至少一个用于接收推端口请求的云端连接管理器,所述负载均衡器收到推端口请求后将推端口请求发送给负载较小的第二节点、或者指定第二节点中负载较小的云端连接管理器、或者负载较小的第二节点中负载较小的云端连接管理器。

优选地,所述客户端守护进程将推端口请求通过互联网发给待提供服务程序协同服务的第二节点前端的负载均衡器时,发送的推端口请求为基于隧道协议传输且采用ssl协议进行通信数据加密。

优选地,步骤3)的详细步骤包括:

3.1)第二节点的云端连接管理器采用ssl协议进行通信数据解密;

3.2)针对解密后的身份认证信息进行验证,如果验证通过则跳转执行步骤3.3),否则判定用户无权限并退出;

3.3)第二节点的云端连接管理器发送代理创建请求给本地的代理管理器,代理管理器在本地创建并启动云端服务代理,云端服务代理开始监听连接请求。

优选地,步骤4)的详细步骤包括:

4.1)第二节点中的客户应用程序连接第二节点中的云端服务代理并请求服务,云端服务代理打包原始请求、云端服务代理的代理id、客户应用程序的socketid和连接id并转发到第二节点中的连接管理器,所述连接id包含第二节点中的客户应用程序请求服务和所请求服务的真实服务程序所在的第一节点之间的连接信息;

4.2)第二节点中的连接管理器针对云端服务代理的请求解析出连接id,将原始请求的请求信息进行加密后按连接id通过互联网发给对应的第一节点中的客户端守护进程,第一节点中的客户端守护进程将原始请求的请求信息进行解密后发送给第一节点中的服务程序,并将服务程序的详情结果加密后通过互联网发给第二节点中的云端服务代理,再通过云端服务代理返回给第二节点中的客户应用程序。

另一方面,本发明还提供一种面向混合云计算平台的协同服务方法,实施步骤包括:

s1)用户通过客户端向待提供服务程序协同服务的第一节点中的客户端守护进程发送拉端口请求,所述拉端口请求包括服务程序的服务地址、端口以及用户的身份认证信息;

s2)客户端守护进程将拉端口请求发给带有服务程序的第二节点;

s3)第二节点在验证用户通过后,跳转执行步骤s4);

s4)第二节点中的服务程序通过第一节点中的客户端守护进程为第一节点中的客户应用程序提供协同服务。

优选地,步骤s2)的详细步骤包括:客户端守护进程将拉端口请求通过互联网发给带有服务程序的第二节点前端的负载均衡器,所述负载均衡器的后端连接有至少一个第二节点,所述第二节点包括至少一个用于接收拉端口请求的云端连接管理器,所述负载均衡器收到拉端口请求后将拉端口请求发送给负载较小的第二节点、或者指定第二节点中负载较小的云端连接管理器、或者负载较小的第二节点中负载较小的云端连接管理器。

优选地,所述客户端守护进程将拉端口请求通过互联网发给带有服务程序的第二节点前端的负载均衡器时,发送的拉端口请求为基于隧道协议传输且采用ssl协议进行通信数据加密。

优选地,步骤s4)的详细步骤包括:

s4.1)第一节点中的客户应用程序连接第一节点中的客户端守护进程并请求服务,第一节点中的客户端守护进程打包原始请求、客户应用程序的socketid和连接id并转发到所请求服务的真实服务程序对应的第二节点中的连接管理器,所述连接id包含第一节点中的客户应用程序请求服务和所请求服务的真实服务程序所在的第二节点之间的连接信息;

s4.2)第二节点中的连接管理器针对云端服务代理的请求解析出原始请求,将原始请求的请求信息发送给第二节点中的服务程序,并将服务程序的详情结果加密后通过互联网发给第一节点中的客户端守护进程,再通过客户端守护进程返回给第一节点中的客户应用程序。

本发明面向混合云计算平台的协同服务方法具有下述优点:

1、本发明方法中用户向第一节点中的客户端守护进程发送推/拉端口请求,客户端守护进程将推/拉端口请求通过互联网发给待提供服务程序协同服务的第二节点;针对推端口请求,第二节点在针对推端口请求验证用户通过后在本地建立云端服务代理,第一节点中的服务程序通过云端服务代理为第二节点中的客户应用程序提供协同服务;针对拉端口请求,第二节点在验证用户通过后,第二节点中的服务程序通过第一节点中的客户端守护进程为第一节点中的客户应用程序提供协同服务,从而能够根据用户的请求将vpc中的服务程序口推进另一vpc环境中,或者将另一vpc中服务程序口拉进本vpc环境中,以使处于不同vpc中的客户应用与服务进行便利的协作,能够突破不同vpc中的访问限制,最小程度的暴露同时对访问进行严密监控和审计,实现了混合云协同,同时保证了私有云的安全性。

2、本发明方法中用户通过客户端向带有服务程序的第一节点中的客户端守护进程将推/拉端口请求通过互联网发给待提供服务程序协同服务的第二节点,第二节点在验证用户通过即可使得第一节点和第二节点建立连接,客户应用程序和服务程序的连接就如同在同一网络中的直连,用户程序和服务程序不需要进行额外修改,兼容性好。

附图说明

图1为本发明实施例一的基本流程示意图。

图2为本发明实施例一的基本拓扑结构示意图。

图3为本发明实施例一在亚马逊aws云上的具体实现原理示意图。

图4为本发明实施例二的基本流程示意图。

图5为本发明实施例二在亚马逊aws云上的具体实现原理示意图。

具体实施方式

实施例一:

本实施例中,第一节点带有服务程序,第二节点不包含服务程序,用户通过客户端向第一节点发送推端口请求来使得第一节点、第二节点建立链接。在此基础上,第二节点中的服务程序通过第一节点中的客户端守护进程为第一节点中的客户应用程序提供协同服务。

如图1所示,本实施例面向混合云计算平台的协同服务方法的实施步骤包括:

1)用户通过客户端向带有服务程序的第一节点中的客户端守护进程发送推端口请求,所述推端口请求包括服务程序的服务地址、端口以及用户的身份认证信息;

2)客户端守护进程将推端口请求通过互联网发给待提供服务程序协同服务的第二节点;

3)第二节点在针对推端口请求验证用户通过后在本地建立云端服务代理;

4)第一节点中的服务程序通过云端服务代理为第二节点中的客户应用程序提供协同服务。

本实施例中,步骤2)的详细步骤包括:客户端守护进程将推端口请求通过互联网发给待提供服务程序协同服务的第二节点前端的负载均衡器,所述负载均衡器的后端连接有至少一个第二节点,所述第二节点包括至少一个用于接收推端口请求的云端连接管理器,所述负载均衡器收到推端口请求后将推端口请求发送给负载较小的第二节点、或者指定第二节点中负载较小的云端连接管理器、或者负载较小的第二节点中负载较小的云端连接管理器。

本实施例中,所述客户端守护进程将推端口请求通过互联网发给待提供服务程序协同服务的第二节点前端的负载均衡器时,发送的推端口请求为基于隧道协议传输且采用ssl协议进行通信数据加密。

本实施例中,步骤3)的详细步骤包括:

3.1)第二节点的云端连接管理器采用ssl协议进行通信数据解密;

3.2)针对解密后的身份认证信息进行验证,如果验证通过则跳转执行步骤3.3),否则判定用户无权限并退出;

3.3)第二节点的云端连接管理器发送代理创建请求给本地的代理管理器,代理管理器在本地创建并启动云端服务代理,云端服务代理开始监听连接请求。

本实施例中,步骤4)的详细步骤包括:

4.1)第二节点中的客户应用程序连接第二节点中的云端服务代理并请求服务,云端服务代理打包原始请求、云端服务代理的代理id、客户应用程序的socketid和连接id并转发到第二节点中的连接管理器,所述连接id包含第二节点中的客户应用程序请求服务和所请求服务的真实服务程序所在的第一节点之间的连接信息;

4.2)第二节点中的连接管理器针对云端服务代理的请求解析出连接id,将原始请求的请求信息进行加密后按连接id通过互联网发给对应的第一节点中的客户端守护进程,第一节点中的客户端守护进程将原始请求的请求信息进行解密后发送给第一节点中的服务程序,并将服务程序的详情结果加密后通过互联网发给第二节点中的云端服务代理,再通过云端服务代理返回给第二节点中的客户应用程序。

本实施例中,第一节点和第二节点均为vpc(virtualprivatecluster,虚拟私有集群,一台或多台物理或虚拟主机或容器组成的计算环境,具有封闭、独立的网络连接),第一节点为企业内部私有云的vpc,第二节点为基于亚马逊aws云上的vpc,。参见图2,本实施例面向混合云计算平台的协同服务方法可用于将企业内部私有云的vpc中的服务端口推进亚马逊aws云上的vpc环境中,或者将亚马逊aws云上的vpc中服务端口拉进企业内部私有云的vpc环境中,对用户进行身份审核,对端口访问进行审计,以及对信道进行加密。

如图3所示,本实施例面向混合云计算平台的协同服务系统包括客户端守护进程、负载均衡器、云端连接管理器、云端代理管理器和云端服务代理五个部分。用户向客户端守护进程发送推端口的指令,指令包括要推的本地服务地址和端口或远端要拉的服务地址和端口,以及用户的身份认证信息。客户端守护进程接到指令后连接负载均衡器并发送推拉端口请求,由负载均衡器转发该请求到负载较小的云端连接管理器。如果总访问量比较小,可以省略掉负载均衡器,由客户端守护进程直连云端连接管理器。客户端守护进程到负载均衡器间的链路在互联网上,采用ssl进行通信数据加密。客户端守护进程发送的加密请求信息到达连接管理器后,连接管理器后根据用户数据库检查该请求,如果账户有效,再检查该用户是否具有远程访问权限,如果该用户拥有远程访问的权限,则接受此连接。在身份验证过程中产生的公有密钥将用来对数据进行加密。云端连接管理器接受连接后,判断请求类型,如果是推端口请求,则通知云端代理管理器创建云端代理服务以供vpc内应用程序访问;如果是拉端口请求,则直连被请求端口。云端连接管理器负责对所有连接进行用户身份审核和端口访问审计。通过推拉端口建立连接后,客户应用程序和服务程序的连接就如同在同一网络中的直连,用户程序和服务程序不需要进行额外修改。

通过上述技术方案可以看出,本实施例面向混合云计算平台的协同服务方法不同于普通代理或反向代理,采用了两层端口转发,即vpc到internet一层和internet到vpc一层,实现了不同vpc环境中服务器端和客户端的互联互通。同时,本实施例面向混合云计算平台的协同服务方法提供的是端到端的连接,不同于vpn的全流量通过,vpc内其他资源不会被暴露。本实施例面向混合云计算平台的协同服务方法使用三个方面的技术保证了通信的安全性:隧道协议、身份验证和数据加密。本实施例面向混合云计算平台的协同服务方法能够根据用户请求将vpc中的服务程序口推进另一vpc环境中,或者将另一vpc中服务程序口拉进本vpc环境中,以使处于不同vpc中的客户应用与服务进行便利的协作;对用户进行身份审核;对端口访问进行审计;以及对信道进行加密。本发明技术方案能够突破不同vpc中的访问限制,最小程度的暴露同时对访问进行严密监控和审计,实现了混合云协同,同时保证了私有云的安全性。

实施例二:

本实施例思路与实施例一基本相同,其主要不同点为:本实施例中第一节点不包含服务程序,而由第二节点带有服务程序,用户通过客户端向第一节点发送拉端口请求来使得第一节点、第二节点建立链接,在此基础上,第二节点中的服务程序通过第一节点中的客户端守护进程为第一节点中的客户应用程序提供协同服务。

如图4所示,本实施例面向混合云计算平台的协同服务方法的实施步骤包括:

s1)用户通过客户端向待提供服务程序协同服务的第一节点中的客户端守护进程发送拉端口请求,所述拉端口请求包括服务程序的服务地址、端口以及用户的身份认证信息;

s2)客户端守护进程将拉端口请求发给带有服务程序的第二节点;

s3)第二节点在验证用户通过后,跳转执行步骤s4);

s4)第二节点中的服务程序通过第一节点中的客户端守护进程为第一节点中的客户应用程序提供协同服务。

本实施例中,步骤s2)的详细步骤包括:客户端守护进程将拉端口请求通过互联网发给带有服务程序的第二节点前端的负载均衡器,所述负载均衡器的后端连接有至少一个第二节点,所述第二节点包括至少一个用于接收拉端口请求的云端连接管理器,所述负载均衡器收到拉端口请求后将拉端口请求发送给负载较小的第二节点、或者指定第二节点中负载较小的云端连接管理器、或者负载较小的第二节点中负载较小的云端连接管理器。

本实施例中,客户端守护进程将拉端口请求通过互联网发给带有服务程序的第二节点前端的负载均衡器时,发送的拉端口请求为基于隧道协议传输且采用ssl协议进行通信数据加密。

本实施例中,步骤s4)的详细步骤包括:

s4.1)第一节点中的客户应用程序连接第一节点中的客户端守护进程并请求服务,第一节点中的客户端守护进程打包原始请求、客户应用程序的socketid和连接id并转发到所请求服务的真实服务程序对应的第二节点中的连接管理器,所述连接id包含第一节点中的客户应用程序请求服务和所请求服务的真实服务程序所在的第二节点之间的连接信息;

s4.2)第二节点中的连接管理器针对云端服务代理的请求解析出原始请求,将原始请求的请求信息发送给第二节点中的服务程序,并将服务程序的详情结果加密后通过互联网发给第一节点中的客户端守护进程,再通过客户端守护进程返回给第一节点中的客户应用程序。

如图5所示,本实施例面向混合云计算平台的协同服务系统包括客户端守护进程、负载均衡器、云端连接管理器三个部分。用户向客户端守护进程发送拉端口的指令,指令包括要推的本地服务地址和端口或远端要拉的服务地址和端口,以及用户的身份认证信息。客户端守护进程接到指令后连接负载均衡器并发送推拉端口请求,由负载均衡器转发该请求到负载较小的云端连接管理器。如果总访问量比较小,可以省略掉负载均衡器,由客户端守护进程直连云端连接管理器。客户端守护进程到负载均衡器间的链路在互联网上,采用ssl进行通信数据加密。客户端守护进程发送的加密请求信息到达连接管理器后,连接管理器后根据用户数据库检查该请求,如果账户有效,再检查该用户是否具有远程访问权限,如果该用户拥有远程访问的权限,则接受此连接。在身份验证过程中产生的公有密钥将用来对数据进行加密。云端连接管理器接受连接后,第二节点中的服务程序通过第一节点中的客户端守护进程为第一节点中的客户应用程序提供协同服务。

综上所示,本实施例根据用户请求将vpc中的服务程序口推进另一vpc环境中,或者将另一vpc中服务程序口拉进本vpc环境中,以使处于不同vpc中的客户应用与服务进行便利的协作;对用户进行身份审核;对端口访问进行审计;以及对信道进行加密。本发明技术方案能够突破不同vpc中的访问限制,最小程度的服务暴露,同时对访问进行严密监控和审计,实现了混合云协同,保证了私有云的安全性。

以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1