CN105530293B - 应用发布方法和装置 - Google Patents

应用发布方法和装置 Download PDF

Info

Publication number
CN105530293B
CN105530293B CN201510875157.3A CN201510875157A CN105530293B CN 105530293 B CN105530293 B CN 105530293B CN 201510875157 A CN201510875157 A CN 201510875157A CN 105530293 B CN105530293 B CN 105530293B
Authority
CN
China
Prior art keywords
virtual machine
container
request
application
newly
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510875157.3A
Other languages
English (en)
Other versions
CN105530293A (zh
Inventor
林海长
姜正文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN201510875157.3A priority Critical patent/CN105530293B/zh
Publication of CN105530293A publication Critical patent/CN105530293A/zh
Application granted granted Critical
Publication of CN105530293B publication Critical patent/CN105530293B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications

Abstract

本发明涉及一种应用发布方法,该方法包括:接收客户端发送的虚拟机登录请求,根据该虚拟机登录请求获取请求的虚拟机标识;根据请求的虚拟机标识查找对应的容器标识,其中容器标识唯一对应一个虚拟机标识;根据请求的虚拟机标识启动对应的虚拟机,并根据对应的容器标识将对应的容器关联到虚拟机上,其中容器中运行有一个或多个应用;将启动的虚拟机的信息返回给客户端。通过上述方法使用户通过客户端登录到虚拟机后能够通过虚拟机使用容器中的应用,容器唯一对应一个虚拟机,不同容器之间具有隔离性,因此不同容器中的应用不会访问同一份文件,从而避免了多实例冲突。此外,还提供了一种应用发布装置。

Description

应用发布方法和装置
技术领域
本发明涉及远程应用发布技术领域,特别是涉及一种应用发布方法和装置。
背景技术
现如今,大多采用各种远程应用技术将应用发布到虚拟桌面上,以解决用户所使用操作系统没有所需的应用,但是又需要使用该应用的问题。其中,远程应用发布技术是一种常用的远程应用技术。
远程应用发布技术,是采用基于服务器计算的应用模式,应用程序的配置管理及执行均集中在应用发布服务器上进行,用户通过远程客户端登录应用发布服务器操作,输入输出内容通过网络传输到客户端。由于应用发布服务器支持多用户操作,这样就可能出现多实例冲突,比如不同用户在使用同一应用写同一份文件时可能出现冲突。
发明内容
基于此,有必要针对上述问题,提供一种能避免多实例冲突的应用发布方法和装置。
一种应用发布方法,该方法包括:
接收客户端发送的虚拟机登录请求,根据该虚拟机登录请求获取请求的虚拟机标识;
根据请求的虚拟机标识查找对应的容器标识,容器标识唯一对应一个虚拟机标识;
根据请求的虚拟机标识启动对应的虚拟机,并根据对应的容器标识将对应的容器关联到虚拟机上,容器中运行有一个或多个应用;
将启动的虚拟机的信息返回给客户端。
在其中一个实施例中,在将启动的虚拟机的信息返回给客户端的步骤之后,还包括:
接收客户端发送的应用访问请求;
根据应用访问请求调用容器中的应用。
在其中一个实施例中,该方法还包括:
当容器中的应用请求访问互联网数据时,通过隧道技术将互联网数据访问请求封装成数据包发送给虚拟机;
通过虚拟机将数据包的源IP地址由容器的IP地址修改成虚拟机IP地址后,根据虚拟机IP地址将互联网数据访问请求发给审计设备。
在其中一个实施例中,该方法还包括:
当容器中的应用请求访问容器的磁盘时,通过挂钩技术将磁盘访问请求重定向到虚拟机的数据盘上。
在其中一个实施例中,该方法还包括:
获取容器新增请求,容器新增请求中携带新增的容器标识和与新增的容器标识对应的虚拟机标识;
根据容器新增请求新增容器,新增的容器中运行有一个或多个应用,并存储新增的容器标识与对应的虚拟机标识的对应关系。
一种应用发布装置,该装置包括:
登录请求获取模块,用于接收客户端发送的虚拟机登录请求,根据该虚拟机登录请求中获取请求的虚拟机标识;
查找模块,用于根据请求的虚拟机标识查找对应的容器标识,容器标识唯一对应一个虚拟机标识;
关联模块,用于根据请求的虚拟机标识启动对应的虚拟机,并根据对应的容器标识将对应的容器关联到虚拟机上,容器中运行有一个或多个应用;将启动的虚拟机的信息返回给客户端。
在其中一个实施例中,该装置还包括:
接收模块,用于接收客户端发送的应用访问请求;
调用模块,用于根据应用访问请求调用容器中的应用。
在其中一个实施例中,该装置还包括:
应用请求处理模块,用于当容器中的应用请求访问互联网数据时,通过隧道技术将互联网数据访问请求封装成数据包发送给虚拟机;
修改模块,用于通过虚拟机将数据包的源IP地址由容器的IP地址修改成虚拟机IP地址后,根据虚拟机IP地址将互联网数据访问请求发给审计设备。
在其中一个实施例中,应用请求处理模块还用于当容器中的应用请求访问容器的磁盘时,通过挂钩技术将磁盘访问请求重定向到虚拟机的数据盘上。
在其中一个实施例中,该装置还包括:
容器新增模块,用于获取容器新增请求,容器新增请求中携带新增的容器标识和与新增的容器标识对应的虚拟机标识;根据容器新增请求新增容器,新增的容器中运行有一个或多个应用,并存储新增的容器标识与对应的虚拟机标识的对应关系。
上述应用发布方法和装置,通过虚拟机标识与容器标识之间的对应关系,将对应的容器关联到用户请求的虚拟机上,即将容器中的应用发布到虚拟机上,使用户通过客户端登录虚拟机后能够通过虚拟机使用容器中的应用,容器唯一对应一个虚拟机。而且容器具有隔离的特性,不同容器中的应用不会访问同一份文件,从而避免了传统方法中多用户使用相同应用访问同一文件时造成多实例冲突的情形。
附图说明
图1为一个实施例中应用发布方法的流程示意图;
图2为一个实施例中应用发布方法的拓扑图;
图3为另一个实施例中应用发布方法的流程示意图;
图4为又一个实施例中应用发布方法的流程示意图;
图5为一个实施例中应用访问互联网数据的方法的流程示意图;
图6为一个实施例中新增容器的方法的流程示意图;
图7为一个实施例中应用发布装置的结构示意图;
图8为另一个实施例中应用发布装置的结构示意图;
图9为又一个实施例中应用发布装置的结构示意图;
图10为再一个实施例中应用发布装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。
如图1所示,在一个实施例中,提供了一种应用发布方法,包括如下步骤:
步骤102,接收客户端发送的虚拟机登录请求,根据该虚拟机登录请求中获取请求的虚拟机标识。
本实施例中,虚拟机(Virtual Machine),指通过软件模拟的具有完整硬系统功能的、运行在一个服务器中的完整计算机系统,即运行在服务器上的虚拟化的PC,可供客户端接入。
客户端,指接入使用虚拟机的客户端,用于接收并显示来自虚拟机的图像,可以是PC或瘦客户机等形态。可以理解,只要具备接入虚拟机、接收并显示来自虚拟机图像功能的客户端都可以是本发明实施例中的客户端。
本实施例中,用户通过客户端向服务器发送虚拟机登录请求,服务器根据该虚拟机登录请求获取请求的虚拟机标识。
在一个实施例中,用户通过客户端向服务器发送虚拟机登录请求,服务器中预先存储了用户与虚拟机之间的对应关系。服务器根据该对应关系查找该用户对应哪些虚拟机,并将查找到的对应的虚拟机返回给客户端。进一步,用户通过客户端选择请求登录的虚拟机并发出登录操作指令,客户端获取该请求的虚拟机标识,并将该请求的虚拟机标识发送给服务器。可以理解,同一用户可对应一个或多个虚拟机。
在另一个实施例中,客户端界面显示了虚拟机图标,用户可以直接点击该虚拟机图标发出登录该虚拟机的指令,客户端获取请求登录的虚拟机标识,向服务器发送虚拟机登录请求,该虚拟机登录请求中携带请求的虚拟机标识。
在一个实施例中,客户端向服务器发送的虚拟机登录请求中还携带有登录密码,服务器验证登录密码是否正确,若是,则进入步骤104,若否,则返回密码错误提示信息给客户端。
步骤104,根据请求的虚拟机标识查找对应的容器标识,容器标识唯一对应一个虚拟机标识。
本实施例中,容器,是将应用隔离发布的最小组成单元,在容器中运行有一个或多个应用,通过应用发布技术可以将容器中的应用发布到虚拟机中进行使用。
具体的,服务器中预先存储有虚拟机标识与容器标识的对应关系,其中一个容器标识唯一对应一个虚拟机标识,即同一个容器只能关联到唯一对应的虚拟机上。服务器在接收虚拟机登录请求后,根据预先存储的虚拟机标识与容器标识的对应关系查找与获取的请求的虚拟机标识对应的容器标识。
进一步,查找到的与请求的虚拟机标识对应的容器标识可以有一个或多个。
步骤106,根据请求的虚拟机标识启动对应的虚拟机,并根据对应的容器标识将对应的容器关联到请求的虚拟机上,容器中运行有一个或多个应用。
本实施例中,服务器根据请求的虚拟机标识启动对应的虚拟机,在该请求的虚拟机启动完成之后,根据对应的容器标识将对应的容器关联到请求的虚拟机上。容器中运行有一个或多个应用,该将对应的容器关联到请求的虚拟机上的操作,实现了容器中运行的一个或多个应用可以在该请求的虚拟机上使用,即完成将容器中的应用发布到该虚拟机上的操作。
进一步,当查找到的与请求的虚拟机标识对应的容器标识有多个时,可以将多个容器标识对应的多个容器关联到请求的虚拟机上。可以理解,多个容器中可以分别运行不同的应用。比如容器A中运行应用A,容器B中运行应用B和应用C。
基于上文所述,同一容器只能关联到唯一的虚拟机上。那么针对不同用户都要使用同一应用的情况,比如用户A和用户B都要使用应用X,用户A登录到虚拟机a,用户B登录到虚拟机b,那么就可以在容器1中运行应用X,在容器2中也运行应用X,其中容器1唯一关联到虚拟机a上,容器2唯一关联到虚拟机b上,那么用户A和用户B就可以分别通过虚拟机a和虚拟机b调用不同容器中的应用X进行操作。基于容器间的隔离性,容器1和容器2中运行的应用X相互之间是隔离的,不会访问同一文件。
步骤108,将启动的虚拟机的信息返回给客户端。
在完成将对应的容器关联到请求的虚拟机上之后,服务器会将启动的虚拟机的信息返回给客户端。具体的,返回的虚拟机的信息包含请求的虚拟机信息已启动的通知以及启动的虚拟机上关联的容器中的应用的相关信息。客户端接收返回的信息后可以实现登录虚拟机,并使用该请求的虚拟机以及该虚拟机关联的容器中的应用。
可以理解,容器及虚拟机可以是分别运行在不同的服务器上,也可以是容器及虚拟机共用同一个服务器,还可以是容器运行在虚拟机上,本实施例对容器与虚拟机的运行位置不作具体限定。
本实施例中,通过虚拟机标识与容器标识的对应关系,将对应的容器关联到用户请求的虚拟机上,即将容器中的应用发布到虚拟机上,使用户通过客户端登录到虚拟机后能够通过虚拟机使用容器中的应用,容器唯一对应一个虚拟机。而且容器具有隔离的特性,不同容器中的应用不会访问同一份文件,从而避免了传统方法中多用户使用相同应用访问同一文件时造成多实例冲突的情形。
进一步,用户可以通过上述应用发布方法分别登录多个虚拟机,在多个虚拟机之间进行切换操作。
在一个实施例中,提供了一种应用发布方法的拓扑图,如图2所示,控制器22对客户端24、虚拟机262以及容器282进行管理,同时,控制器22管理用户与虚拟机262、虚拟机262与容器282的对应关系。虚拟机262运行在虚拟化服务器26上,容器282运行在容器服务器28中,应用2822运行在容器282中。
具体的,用户通过客户端24向控制器22发出虚拟机登录请求,控制器22根据该虚拟机登录请求获取请求的虚拟机标识,控制器22根据虚拟机标识向虚拟化服务器26请求客户端24所请求的虚拟机262,并向虚拟化服务器26发送与请求的虚拟机262对应的容器标识,虚拟化服务器26启动所请求的虚拟机262,所请求的虚拟机262启动后根据获取的容器标识向容器服务器28请求将对应的容器282关联到该虚拟机上,容器服务器28将对应的容器282关联到所请求的虚拟机262上,即将容器282上运行的应用2822映射到虚拟机262中,从而实现了将容器中的应用2822发布到虚拟机262上,虚拟化服务器26将启动的虚拟机的信息返回给客户端24,使客户端24能够连接到请求的虚拟机262上,并使用虚拟机262及与虚拟机262关联的容器282上的应用2822。本实施例中,控制器22中存储的对应关系中,容器282唯一对应一个虚拟机262。
如图3所示,在一个实施例中,提供了一种应用发布方法,该方法可应用于图2所示的拓扑图中,具体包括:
步骤302,控制器接收客户端发送的虚拟机登录请求,根据该虚拟机登录请求获取请求的虚拟机标识。
本实施例中,用户通过客户端向控制器发送虚拟机登录请求,控制器根据该虚拟机登录请求获取请求的虚拟机标识。
在一个实施例中,用户通过客户端向控制器发送虚拟机登录请求,控制器中预先存储了用户与虚拟机之间的对应关系,控制器根据该对应关系查找该用户对应哪些虚拟机,并将查找到的对应的虚拟机返回给客户端。进一步,用户通过客户端选择请求登录的虚拟机并发出登录操作指令,客户端获取请求登录的虚拟机标识,并将该请求的虚拟机标识发送给服务器。可以理解,同一用户可以对应一个或多个虚拟机。
在另一个实施例中,客户端界面显示了虚拟机图标,用户可直接点击该虚拟机图标发出登录该虚拟机的指令,客户端获取请求登录的虚拟机标识,向控制器发送虚拟机登录请求,该虚拟机登录请求中携带请求的虚拟机标识。
进一步,客户端向控制器发送的登录该虚拟机的请求中还携带有登录密码,控制器验证该登录密码是否正确,若是,则进入步骤204,若否,则返回密码错误提示信息给客户端。
步骤304,控制器根据请求的虚拟机标识查找对应的容器标识,容器标识唯一对应一个虚拟机标识。
控制器中存储有虚拟机标识与容器标识的对应关系,其中一个容器标识唯一对应一个虚拟机标识。控制器根据该对应关系,查找对应的容器标识。
步骤306,控制器向虚拟化服务器发送虚拟机请求,该虚拟机请求中携带请求的虚拟机标识和与请求的虚拟机标识对应的容器标识。
步骤308,虚拟化服务器根据请求的虚拟机标识启动对应的虚拟机。
步骤310,启动的虚拟机向容器服务器发送关联请求,该关联请求中携带与虚拟机标识对应的容器标识。
步骤312,容器服务器根据对应的容器标识将对应的容器关联到请求的虚拟机上,容器中运行有一个或多个应用。
本实施例中,容器中运行有一个或多个应用,容器服务器将对应的容器关联到所请求的虚拟机上,即将容器上运行的应用映射到虚拟机中,从而实现了将容器中的应用发布到虚拟机上。
步骤314,虚拟化服务器将请求的虚拟机信息返回给客户端。
本实施例中,返回的虚拟机的信息包含请求的虚拟机信息已启动的通知以及启动的虚拟机上关联的容器中的应用的相关信息。客户端接收返回的信息后可以实现登录虚拟机,并使用该请求的虚拟机以及该虚拟机关联的容器中的应用。
如图4所示,在一个实施例中,该应用发布方法还包括以下步骤:
步骤402,接收客户端发送的应用访问请求。
本实施例中,在完成客户端登录所请求的虚拟机之后,客户端可以使用该请求的虚拟机以及该虚拟机关联的容器中的应用。客户端向虚拟机发送应用访问请求,具体的,客户端可以通过点击虚拟机桌面上显示的应用图标对虚拟机发送应用访问请求。
步骤404,根据应用访问请求调用容器中的应用。
虚拟机接收客户端发送的应用访问请求之后,会调用对应容器上的应用,通过容器中的应用来完成客户端的发出的各种操作指令。在这种情况下,调用的容器上的应用的与使用安装在虚拟机中的应用的效果一样。
如图5所示,在一个实施例中,该应用发布方法还可以实现应用访问互联网数据,具体包括以下步骤:
步骤502,当容器中的应用请求访问互联网数据时,通过隧道技术将互联网数据访问请求封装成数据包发送给虚拟机。
本实施例中,客户端通过调用容器中的应用进行相关操作,当应用请求访问需要审计的互联网数据时,由于每个容器支持独立的IP地址,所以互联网数据访问请求中的源IP地址就是该容器的IP地址。该容器通过隧道技术将该互联网数据访问请求封装成数据包,发送给对应的虚拟机。
进一步,容器与虚拟机已经预先设置好对应的隧道协议,容器与虚拟机之间建立的隧道可以是应用请求访问互联网数据之前已经建立,该实施例中,可以是虚拟机发起隧道建立请求,也可以是容器发起的隧道建立请求。
此外,虚拟机与容器之间建立的隧道也可以是当应用需要访问互联网数据时,根据容器与虚拟机之间预设的对应的隧道协议,容器向虚拟机发送互联网数据访问请求时建立的,即容器在传送互联网数据访问请求给虚拟机的同时,根据两者之间预设的隧道协议建立隧道,通过隧道对互联网数据访问请求封装成数据包,发送给虚拟机。
步骤504,通过虚拟机将数据包的源IP地址由容器的IP地址修改成虚拟机IP地址后,根据虚拟机IP地址将互联网数据访问请求发给审计设备。
本实施例中,虚拟机接收容器通过隧道发送过来的封装数据包,该封装数据包的源IP地址是容器的IP地址,虚拟机会将数据包的源IP地址由容器的IP地址修改为虚拟机的IP地址,然后再根据虚拟机IP地址将互联网数据访问请求发送给审计设备。
审计设备,指针对用户的互联网行为提供有效的行为审计、内容审计、行为报警、行为控制及相关审计功能的一种设备,是企业对用户访问互联网行为进行审计的一种安全审计设备。从管理层面提供互联网的有效监督,预防、制止数据泄密。满足用户对互联网行为审计备案及安全保护措施的要求,提供完整的上网记录,便于信息追踪、系统安全管理和风险防范。
审计设备审计源IP地址修改为虚拟机的IP地址之后的互联网数据访问请求时,根据源IP地址是虚拟机的IP地址就可以获知是哪台虚拟机发出的互联网数据访问请求。从而实现对互联网访问行为的安全审计。
进一步,审计设备对互联网数据访问请求审计之后,将互联网数据访问请求发送给互联网,以实现应用对互联网数据的访问。
本实施例中,利用了容器支持独立IP的特性,通过隧道技术将互联网数据访问请求封装成数据包发送给虚拟机,虚拟机将数据包源IP地址由容器的IP地址修改为虚拟机的IP地址之后再将该互联网数据访问请求发送给审计设备,因此审计设备可以根据源IP地址获知是哪台虚拟机发出的互联网数据访问请求,从而实现了对互联网访问行为的安全审计。
在一个实施例中,该应用发布方法还包括:当容器中的应用请求访问容器的磁盘时,通过挂钩技术将磁盘访问请求重定向到虚拟机的数据盘上的步骤。
本实施例中,当调用的容器中的应用有访问磁盘的行为时,比如应用有读写操作时就会访问磁盘,那么原本应该访问的是容器所在的磁盘。本实施例中,容器中的控件通过挂钩的方式,比如对读写文件或磁盘的函数进行拦截,将目的磁盘或目录替换为其他地方的磁盘上,即实现将应用的磁盘访问请求由访问对应的容器的磁盘重定向到其他地方的磁盘上。进一步,可以将应用的磁盘访问请求由访问对应的容器的磁盘重定向到访问虚拟机的数据盘。
本实施例中,在远程应用请求访问容器的磁盘时,通过挂钩的方式将磁盘访问请求重定向到虚拟机自身使用的存储磁盘中,实现了应用访问时如同在虚拟机上操作一样的效果,实现了应用访问的一体化。
如图6所示,在一个实施例中,该应用发布方法还可以新增容器,具体包括以下步骤:
步骤602,获取容器新增请求,容器新增请求中携带新增的容器标识和与新增的容器标识对应的虚拟机标识。
步骤604,根据容器新增请求新增容器,该新增的容器中运行有一个或多个应用,并存储新增的容器标识与对应的虚拟机标识的对应关系。
本实施例中,当有新的应用需要发布时,可以在服务器中新增容器,将新的应用运行于新增的容器中。具体的,服务器获取容器新增请求,该容器新增请求中携带新增的容器标识,同时还携带与该新增的容器标识对应的虚拟机标识,即该新增的容器要对应发布到的虚拟机的标识。服务器根据容器新增请求将新增的容器进行存储,该新增的容器中运行有一个或多个应用。同时,服务器会将新增的容器标识与对应的虚拟机标识的对应关系进行存储。
结合图2所示的拓扑图,可以理解,本实施例中的服务器可以是容器服务器。
由于容器具有轻量级虚拟化的特点,通过容器的动态扩容实现新增应用,相较于传统的远程应用发布技术通过对应用服务器的操作来实现新增应用来说,更节省成本。
如图7所示,在一个实施例中,还提供一种应用发布装置,该装置包括:
登录请求获取模块702,用于接收客户端发送的虚拟机登录请求,根据该虚拟机登录请求获取请求的虚拟机标识。
查找模块704,用于根据请求的虚拟机标识查找对应的容器标识,容器标识唯一对应一个虚拟机标识。
关联模块706,用于根据请求的虚拟机标识启动对应的虚拟机,并根据对应的容器标识将对应的容器关联到虚拟机上,容器中运行有一个或多个应用;将启动的虚拟机的信息返回给客户端。
如图8所示,在一个实施例中,该装置还包括:
接收模块708,用于接收客户端发送的应用访问请求。
调用模块710,用于根据应用访问请求调用容器中的应用。
如图9所示,在一个实施例中,该装置还包括:
应用请求处理模块712,用于当容器中的应用请求访问互联网数据时,通过隧道技术将互联网数据访问请求封装成数据包发送给虚拟机。
修改模块714,用于通过虚拟机将数据包的源IP地址由容器的IP地址修改成虚拟机IP地址后,根据虚拟机IP地址将互联网数据访问请求发给审计设备。
在一个实施例中,应用请求处理模块712还用于当容器中的应用请求访问容器的磁盘时,通过挂钩技术将磁盘访问请求重定向到虚拟机的数据盘上。
如图10所示,在一个实施例中,该装置还包括:
容器新增模块716,用于获取容器新增请求,容器新增请求中携带新增的容器标识和与新增的容器标识对应的虚拟机标识;根据容器新增请求新增容器,新增的容器中运行有一个或多个应用,并存储新增的容器标识与对应的虚拟机标识的对应关系。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种应用发布方法,所述方法包括:
接收客户端发送的虚拟机登录请求,根据所述虚拟机登录请求获取请求的虚拟机标识;
根据所述请求的虚拟机标识查找对应的容器标识,所述容器标识唯一对应一个虚拟机标识;
根据所述请求的虚拟机标识启动对应的虚拟机,并根据所述对应的容器标识将对应的容器关联到所述虚拟机上,所述容器中运行有一个或多个应用;
将启动的所述虚拟机的信息返回给所述客户端,其中,所述虚拟机的信息中包含启动的虚拟机上关联的容器中的应用的相关信息。
2.根据权利要求1所述的方法,其特征在于,在所述将启动的所述虚拟机的信息返回给所述客户端的步骤之后,还包括:
接收所述客户端发送的应用访问请求;
根据所述应用访问请求调用所述容器中的应用。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述容器中的应用请求访问互联网数据时,通过隧道技术将互联网数据访问请求封装成数据包发送给所述虚拟机;
通过所述虚拟机将所述数据包的源IP地址由所述容器的IP地址修改成所述虚拟机IP地址后,根据所述虚拟机IP地址将所述互联网数据访问请求发给审计设备。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述容器中的应用请求访问容器的磁盘时,通过挂钩技术将磁盘访问请求重定向到所述虚拟机的数据盘上。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取容器新增请求,所述容器新增请求中携带新增的容器标识和与所述新增的容器标识对应的虚拟机标识;
根据所述容器新增请求新增容器,所述新增的容器中运行有一个或多个应用,并存储所述新增的容器标识与对应的虚拟机标识的对应关系。
6.一种应用发布装置,其特征在于,所述装置包括:
登录请求获取模块,用于接收客户端发送的虚拟机登录请求,根据所述虚拟机登录请求获取请求的虚拟机标识;
查找模块,用于根据所述请求的虚拟机标识查找对应的容器标识,所述容器标识唯一对应一个虚拟机标识;
关联模块,用于根据所述请求的虚拟机标识启动对应的虚拟机,并根据所述对应的容器标识将对应的容器关联到所述虚拟机上,所述容器中运行有一个或多个应用;将启动的所述虚拟机的信息返回给所述客户端,其中,所述虚拟机的信息中包含启动的虚拟机上关联的容器中的应用的相关信息。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
接收模块,用于接收所述客户端发送的应用访问请求;
调用模块,用于根据所述应用访问请求调用所述容器中的应用。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
应用请求处理模块,用于当所述容器中的应用请求访问互联网数据时,通过隧道技术将互联网数据访问请求封装成数据包发送给所述虚拟机;
修改模块,用于通过所述虚拟机将所述数据包的源IP地址由所述容器的IP地址修改成所述虚拟机IP地址后,根据所述虚拟机IP地址将所述互联网数据访问请求发给审计设备。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
应用请求处理模块,用于当所述容器中的应用请求访问容器的磁盘时,通过挂钩技术将磁盘访问请求重定向到所述虚拟机的数据盘上。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
容器新增模块,用于获取容器新增请求,所述容器新增请求中携带新增的容器标识和与所述新增的容器标识对应的虚拟机标识;根据所述容器新增请求新增容器,所述新增的容器中运行有一个或多个应用,并存储所述新增的容器标识与对应的虚拟机标识的对应关系。
CN201510875157.3A 2015-12-02 2015-12-02 应用发布方法和装置 Active CN105530293B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510875157.3A CN105530293B (zh) 2015-12-02 2015-12-02 应用发布方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510875157.3A CN105530293B (zh) 2015-12-02 2015-12-02 应用发布方法和装置

Publications (2)

Publication Number Publication Date
CN105530293A CN105530293A (zh) 2016-04-27
CN105530293B true CN105530293B (zh) 2019-07-02

Family

ID=55772269

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510875157.3A Active CN105530293B (zh) 2015-12-02 2015-12-02 应用发布方法和装置

Country Status (1)

Country Link
CN (1) CN105530293B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10382597B2 (en) * 2016-07-20 2019-08-13 Cisco Technology, Inc. System and method for transport-layer level identification and isolation of container traffic
US10530747B2 (en) * 2017-01-13 2020-01-07 Citrix Systems, Inc. Systems and methods to run user space network stack inside docker container while bypassing container Linux network stack
CN107104955B (zh) * 2017-04-10 2020-09-11 深信服科技股份有限公司 一种应用发布方法及应用发布系统
CN110166409B (zh) * 2018-02-13 2021-12-28 华为技术有限公司 设备接入方法、相关平台及计算机存储介质
CN109857577B (zh) * 2019-01-28 2021-10-22 北京三快在线科技有限公司 访问控制方法、装置、介质及电子设备
CN110968400B (zh) * 2019-12-18 2022-10-18 深圳奇迹智慧网络有限公司 应用程序的执行方法、装置、计算机设备和存储介质
CN113595968B (zh) * 2020-04-30 2023-02-03 华为云计算技术有限公司 一种基于云应用实例的登录方法、系统及相关设备
CN111966445B (zh) * 2020-06-30 2023-07-25 北京百度网讯科技有限公司 调用应用程序接口的处理方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699430A (zh) * 2014-01-06 2014-04-02 山东大学 基于j2ee架构的远程kvm虚拟机管理系统的工作方法
CN104901923A (zh) * 2014-03-04 2015-09-09 杭州华三通信技术有限公司 一种虚拟机访问装置和方法
CN104951694A (zh) * 2014-03-24 2015-09-30 华为技术有限公司 一种管理虚拟机的隔离方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10075470B2 (en) * 2013-04-19 2018-09-11 Nicira, Inc. Framework for coordination between endpoint security and network security services

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699430A (zh) * 2014-01-06 2014-04-02 山东大学 基于j2ee架构的远程kvm虚拟机管理系统的工作方法
CN104901923A (zh) * 2014-03-04 2015-09-09 杭州华三通信技术有限公司 一种虚拟机访问装置和方法
CN104951694A (zh) * 2014-03-24 2015-09-30 华为技术有限公司 一种管理虚拟机的隔离方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Efficient Virtual Machine Sizing for Hosting Containers as a Service;Sareh Fotuhi Piraghaj等;《2015 IEEE World Congress on Service》;20150627;第31-38页
基于Docker的应用软件虚拟化研究;马越等;《软件》;20150331;第36卷(第3期);第11-14页

Also Published As

Publication number Publication date
CN105530293A (zh) 2016-04-27

Similar Documents

Publication Publication Date Title
CN105530293B (zh) 应用发布方法和装置
US20210105329A1 (en) Application-specific data in-flight (dif) services along a communication path selected based on a dif services policy associated with a vm
US9674029B2 (en) Migrating virtual asset
CA2650463C (en) System and method for tracking the security enforcement in a grid system
CN107948203A (zh) 一种容器登录方法、应用服务器、系统及存储介质
CN107920138B (zh) 一种用户统一标识生成方法、装置及系统
CN104954451B (zh) 一种虚拟化环境下usb设备的访问控制方法
CN112671772B (zh) 基于云安全能力平台的网络安全服务系统及方法
US20190356698A1 (en) Temporary interface to provide intelligent application access
CN102082821B (zh) 基于联邦中心的跨资源池资源安全访问方法与系统
CN106063218A (zh) 虚拟化系统中加解密的方法、装置和系统
CN104506487B (zh) 云环境下隐私策略的可信执行方法
CN105024975A (zh) 账号登录的方法、装置及系统
US20200174818A1 (en) Virtual machine management
US10346618B1 (en) Data encryption for virtual workspaces
US20230031297A1 (en) Binding secure keys of secure guests to a hardware security module
CN109635581A (zh) 一种数据处理方法、设备、系统及存储介质
WO2014046694A1 (en) Decentralized cloud workflows
US9984085B2 (en) Cluster storage system, process for secure erasure of data, and computer program product
KR20130077433A (ko) 모바일 클라우드 서비스 권한 관리 시스템 및 방법
US11537669B1 (en) Preparation of signature fields within electronic documents
US10803153B2 (en) Session based elastic layering
US9553787B1 (en) Monitoring hosted service usage
US11385919B1 (en) Machine image launch system
CN107231664B (zh) 一种用于对用户设备进行流量控制的方法与设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 518000 the first floor of A1 building, Nanshan Zhiyuan 1001, Nanshan District Xue Yuan Avenue, Shenzhen, Guangdong.

Applicant after: SANGFOR TECHNOLOGIES Inc.

Address before: 518000 the first floor of A1 building, Nanshan Zhiyuan 1001, Nanshan District Xue Yuan Avenue, Shenzhen, Guangdong.

Applicant before: Sangfor Technologies Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20160427

Assignee: Beijing Ruike Far East Technology Co.,Ltd.

Assignor: SANGFOR TECHNOLOGIES Inc.

Contract record no.: X2022980011170

Denomination of invention: Application release method and device

Granted publication date: 20190702

License type: Common License

Record date: 20220725