CN103324535A - 一种计算资源的分配方法和装置 - Google Patents

一种计算资源的分配方法和装置 Download PDF

Info

Publication number
CN103324535A
CN103324535A CN2012100807276A CN201210080727A CN103324535A CN 103324535 A CN103324535 A CN 103324535A CN 2012100807276 A CN2012100807276 A CN 2012100807276A CN 201210080727 A CN201210080727 A CN 201210080727A CN 103324535 A CN103324535 A CN 103324535A
Authority
CN
China
Prior art keywords
computing node
target
calculating group
user
resource
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.)
Granted
Application number
CN2012100807276A
Other languages
English (en)
Other versions
CN103324535B (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201210080727.6A priority Critical patent/CN103324535B/zh
Publication of CN103324535A publication Critical patent/CN103324535A/zh
Application granted granted Critical
Publication of CN103324535B publication Critical patent/CN103324535B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种计算资源的分配方法和装置,该方法包括:预先构建计算资源环境,确定所用的计算组以及各计算组中的计算节点;接收用户发送的请求,解析得到该用户的业务信息以及请求执行的用户代码;为不同的域名或网址设定流量转发的目标计算组,形成流量转发规则;根据子用户发送的请求,确定流量中的域名或网址,在所述流量转发规则中查询得到该域名或网址对应的目标计算组;查询目标计算组内的动态负载信息,确定转发的目标计算节点;将所述请求执行的用户代码发送到确定的目标计算节点执行。本发明有效地实现计算资源的隔离及调度,同时保留计算机用户较高的自由度,且其实现代价低,可提高计算资源利用率和系统的灵活程度。

Description

一种计算资源的分配方法和装置
【技术领域】
本发明涉及计算机集群技术领域,特别涉及一种计算资源的分配方法和装置。
【背景技术】
计算机集群,简称集群,是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来作为计算资源,高度紧密地协作完成计算工作。集群系统中的单个计算机通常称为计算节点,一般通过局域网等方式连接。集群的特点是通过多台计算机完成同一个工作,有效利用群组中的计算资源,可以改进单个计算机在计算速度和/或可靠性上的局限,达到更高的效率。集群中每台计算机完成的内容、工作过程等完全一样,如果一台死机,另一台可以起作用,具有较高的稳定性。
现有计算资源的分配装置有两种:一是虚拟化技术,二是计算节点多实例化技术。所述虚拟化技术是计算机元件在虚拟的基础上而不是真实的基础上运行的技术。虚拟化技术可以将计算资源和环境进行较为底层的隔离,用户自由度高,但技术复杂,实现代价较高。所述计算节点多实例化技术是通过互联网进行传输使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中。计算节点多实例化技术的隔离层次较高,实现代价较小,用户自由度低,但存在计算节点之间在资源上相互干扰的问题。
【发明内容】
有鉴于此,本发明提供了一种计算资源的分配方法和装置,有效实现计算资源的隔离及调度,同时保留计算机用户较高的自由度,且其实现代价低,可提高计算资源利用率和系统的灵活程度,可以允许用户自主选择多种语言实现了语言无关性。
具体技术方案如下:
一种计算资源的分配方法,该方法包括以下步骤:
预先构建计算资源环境,确定所用的计算组以及各计算组中的计算节点;
接收用户发送的请求,解析得到该用户的业务信息以及请求执行的用户代码,所述业务信息包括用户有权使用的计算组组别和用户有权使用的各计算组的配额属性;
为不同的域名或网址设定流量转发的目标计算组,形成流量转发规则;
根据子用户发送的请求,确定流量中的域名或网址,结合所述用户的业务信息,利用确定的域名或网址在所述流量转发规则中查询得到该域名或网址对应的目标计算组;
查询目标计算组内的动态负载信息,根据查询到的动态负载信息,调整转发的目标计算组中的目标计算节点;
将所述请求执行的用户代码发送到确定的目标计算节点执行。
根据本发明一优选实施例,所述计算节点包括:普通计算节点、虚拟机计算节点或物理机计算节点。
根据本发明一优选实施例,当所述计算节点为普通计算节点时,所述预先构建计算资源环境包括:
查询各计算节点占用的资源分片信息,利用查找到的资源分片信息初始化计算节点,从而对计算节点进行资源限制,所述资源分片信息包括CPU、内存、上下行带宽值的使用量。
根据本发明一优选实施例,所述查询各计算节点占用的资源分片信息,包括:利用CGROUPS脚本查询计算节点占用的资源分片信息。
根据本发明一优选实施例,当所述计算节点为普通计算节点时,所述预先构建计算资源环境包括:
为各计算节点指定不同的在运行时参考的根目录位置,在初始化计算节点时,将各计算节点在运行时参考的根目录位置更改为指定的根目录位置,从而对计算节点进行路径隔离。
根据本发明一优选实施例,所述更改为指定的根目录位置,包括:利用CHROOT命令将各计算节点在运行时参考的根目录位置更改为指定的根目录位置。
根据本发明一优选实施例,所述调整转发的目标计算组中的目标计算节点,还包括:
根据各计算组的动态负载信息和配额属性进行调节所述目标计算节点的数量。
根据本发明一优选实施例,所述动态负载信息包括各计算节点及各计算节点的权值,所述权值的大小与各计算节点的负载成反比关系;
所述调整转发的目标计算组中的目标计算节点,包括:
根据各计算节点的权值的大小确定转发的目标计算节点。
一种计算资源的分配装置,该装置包括:
计算环境构建模块,用于预先构建计算资源环境,确定所用的计算组以及各计算组中的计算节点;
管理平台模块,用于接收用户发送的请求,解析得到该用户的业务信息以及请求执行的用户代码,传输至调度模块,所述业务信息包括用户有权使用的计算组组别和用户有权使用的各计算组的配额属性;
流量路由模块,用于根据子用户发送的请求,确定流量中的域名或网址;
调度模块,用于为不同的域名或网址设定流量转发的目标计算组,形成流量转发规则;以及,
用于结合所述管理平台模块得到用户的业务信息,根据所述流量路由模块确定的域名或网址在所述流量转发规则中查询得到该域名或网址对应的目标计算组;查询目标计算组内的动态负载信息,并根据查询到的动态负载信息,调整转发的目标计算组中的目标计算节点,触发代码分发模块的代码发送至目标计算节点;
代码分发模块,用于在受到所述调度模块的触发后,将所述用户代码发送到所述流量路由模块确定的目标计算节点执行。
根据本发明一优选实施例,所述计算节点包括:普通计算节点、虚拟机计算节点或物理机计算节点。
根据本发明一优选实施例,当所述计算节点为普通计算节点时,所述计算环境构建模块包括:
资源限制设定单元,用于查询各计算节点占用的资源分片信息,利用查找到的资源分片信息初始化计算节点,从而对计算节点进行资源限制,所述资源分片信息包括CPU、内存、上下行带宽值的使用量。
根据本发明一优选实施例,所述资源限制设定单元中利用CGROUPS脚本查询计算节点占用的资源分片信息。
根据本发明一优选实施例,当所述计算节点为普通计算节点时,所述计算环境构建模块包括:
路径隔离单元,用于为各计算节点指定不同的在运行时参考的根目录位置,在初始化计算节点时,将各计算节点在运行时参考的根目录位置更改为指定的根目录位置,从而对计算节点进行路径隔离。
根据本发明一优选实施例,所述路径隔离单元利用CHROOT命令,将各计算节点在运行时参考的根目录位置更改为指定的根目录位置。
根据本发明一优选实施例,所述调度模块调整转发的目标计算组中的目标计算节点,还包括:
根据各计算组的动态负载信息和配额属性进行调节所述目标计算节点的数量。
根据本发明一优选实施例,所述动态负载信息包括各计算节点及各计算节点的权值,所述权值的大小与各计算节点的负载成反比关系;
所述调度模块调整转发的目标计算组中的目标计算节点,包括:
根据各计算节点的权值的大小确定转发的目标计算节点。
由以上技术方案可以看出,本发明提供计算资源的分配方法和装置,采用动态负载分配方式,将流量与计算节点进行有效匹配,实现计算资源的隔离及调度,同时保留计算机用户较高的自由度,且其实现代价低,提高了计算资源利用率和系统的灵活程度,可以允许用户自主选择多种语言实现了语言无关性。
【附图说明】
图1为本发明实施例一提供的计算资源的分配方法流程图;
图2为本发明实施例一提供的计算环境示意图;
图3为本发明实施例二提供的计算资源的分配装置示意图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
实施例一、
图1是本实施例提供的一种计算资源的分配方法流程图,如图1所示,该方法包括:
步骤S101、预先构建计算资源环境,确定所用的计算组以及各计算组中的计算节点。
所述计算节点是一组计算服务的集合,可以抽象为IP地址:端口(IP:Port)的二元组。如图2所示,一个计算资源环境可以包括多个计算组,一个计算组是若干计算节点的逻辑组合。一般而言,同一个计算组内的计算节点是同构的。利用构建好的计算资源环境可以用于各种云计算服务。
步骤S102、接收用户发送的请求,解析得到该用户的业务信息以及请求执行的用户代码。
所述用户是指计算机集群的用户,一般为集群平台上的开发商。
所述业务信息包括用户有权使用的计算组组别和用户有权使用的各计算组的配额属性。也就是说,用户购买了哪些计算组,以及购买的这些计算组的计算节点的数量。
步骤S103、为不同的域名或网址设定流量转发的目标计算组,形成流量转发规则。
在流量转发规则中建立域名或网址与计算组的对应关系,设定哪个域名的哪些网址(url)转发到哪个计算组。
步骤S104、根据子用户发送的请求,确定流量中的域名或网址,结合所述用户的业务信息,利用确定的域名或网址在所述流量转发规则中查询得到该域名或网址对应的目标计算组。
所述子用户为计算机集群用户(开发商)的用户(用户的受众),例如普通网民、消费者。
通过子用户发送的流量中的url到所述流量转发规则中进行匹配,查询流量中的该url应该转发到哪个组,确定对应的计算组。结合该用户的有权使用的计算组组别和用户有权使用的各计算组的配额属性,确定该用户可用的目标计算组,作为流量承载的计算组。
步骤S105、查询目标计算组内的动态负载信息,根据查询到的动态负载信息,调整转发的目标计算组中的目标计算节点。
动态负载信息包括各计算节点及各计算节点的权值,所述权值的大小与各计算节点的负载成反向关系。根据计算节点的流量来确定计算节点的负载,负载高的权重低,负载低的权重高,以此平衡节点间的相对负载。所述计算节点的流量可以但不限于通过应用层的流控模块来获取。
在调整转发的目标计算组中的目标计算节点时,则根据各计算节点的权值的大小确定转发的目标计算节点,选择权值较高的计算节点作为流量承载的目标计算节点。
根据动态负载信息,从用户可用的目标计算组中匹配到负载较低的计算节点,能够根据实际情况进行灵活选择,提高了效率和资源利用率。
另外,根据各计算组的动态负载信息和配额属性进行调节各计算组中的计算节点的数量。
根据一个计算组有最大计算单元个数的配额属性,所述配额属性可以是用户购买数量或特别指定的数量,在计算组整体负载低的时候,可以从该计算组中摘除若干计算节点,减少计算节点的数量,以提升该计算组的负载水平。反之亦然,以此实现对计算资源利用率的提高。通过调节目标计算节点的数量,提高计算资源的利用率。
步骤S106、将所述请求执行的用户代码发送到确定的目标计算节点执行。
将用户代码发送到步骤S105中确定的所有目标计算节点执行。
值得一提的是,本发明中所述计算节点可以是:普通计算节点、虚拟机计算节点或者物理机计算节点。
普通节点是有一定自由度的多语言环境,实现时为每个计算节点部署了运行时环境(一系列支撑组件例如lighttpd、php-cgi、java、python、其他服务等),虚拟机节点就是初始化出虚拟机实例,物理机节点就是初始化好的物理服务器。
在利用普通计算节点构建计算资源环境,为了保证集群的安全以及避免用户信息泄露给第三方,需要对集群中计算节点的内存在用户代码间进行隔离,实现计算节点的资源限制和路径隔离。具体包括以下方式:
S101_1、查询各计算节点占用的资源分片信息,利用查找到的资源分片信息初始化计算节点,从而对计算节点进行资源限制。
计算节点内的计算服务的具体形式为进程,这些进程通过配置CGROUPS的脚本进行启动。在CGROUPS配置脚本中,可以查询到需要初始化的计算单元占用的资源分片信息,包括CPU、内存、上下行带宽值(I/O)的使用量。这些资源分片信息可以是绝对值形式的,例如,CPU节点编号、内存占用值和上下行带宽值。或者,也可以是比例形式的,例如,CPU计算能力50%,内存总量35%,上下行带宽总量40%。
一般情况下,CPU、内存、上下行带宽值的使用量的总和为总的资源量,但有时为了预留一部分计算能力给系统,也可以为小于总的资源量100%;有时为了计算节点之间资源使用的互补,也可以为大于总的资源量100%。
根据得到的资源分片信息初始化计算节点。具体的,如果查询到计算节点占用的CPU计算能力为50%,则将该计算节点的CPU使用量限制为50%。依次类推,完成计算节点的初始化。将该脚本pid(进程标识符)加入到创建的CGROUNP中,后续使用该脚本启动的所有进程都将自动继承该CGROUNP的资源限制,从而实现对计算节点进行资源限制。
S101_2、为各计算节点指定不同的在运行时参考的根目录位置,在初始化计算节点时,将各计算节点在运行时参考的根目录位置更改为指定的根目录位置,从而对计算节点进行路径隔离。
使用CHROOT命令在可以更改所参考的根目录位置。具体的过程是:对每个计算节点单独使用一个用户名,在初始化计算节点时,即通过CHROOT指定该计算节点对应用户名的根目录位置,从而实现对计算节点进行路径隔离。
根据实际应用环境的不同,上述S101_1和S101_2两种方式也可以仅采用其中一种方式进行。
步骤S101中也可以采用现有的虚拟机技术和物理机技术构建计算资源环境,由于虚拟机本身就具有较为彻底的隔离效果,物理机是独立进行分配使用的,也具有较好的隔离效果,因而,对于虚拟机计算节点和物理机计算节点不需要进行资源隔离和路径隔离的处理。
相比较而言,普通计算节点提供低成本的、有功能限制、多语言的应用执行环境,应用场景为Web应用开发。虚拟机计算节点是用软件虚拟具有硬件系统功能的执行环境。物理机计算节点是指该节点直接是一台物理机,环境宽松,功能完全不受限,应用场景为较大规模的或较高订制程度的web应用开发。
本发明可以根据实际应用场景的不同,选择以不同的方式(对应不同的成本代价)来实现计算资源和环境的隔离。一般来说,最低成本的是普通节点,虚拟机其次,物理机节点成本最高。
对于这3种不同的计算节点,本发明除了步骤S101中构建计算资源环境的方式不同之外,其他步骤均以相同的方式进行处理,故不再一一赘述。
以上是对本发明所提供的方法进行的详细描述,下面对本发明提供的计算资源的分配装置进行详细描述。
实施例二
图3是本实施例提供的一种计算资源的分配装置示意图。如图3所示,该装置包括:
计算环境构建模块10,用于预先构建计算资源环境,确定所用的计算组以及各计算组中的计算节点。
所述计算节点是一组计算服务的集合,可以抽象为IP地址:端口(IP:Port)的二元组。一个计算资源环境可以包括多个计算组,一个计算组时若干计算节点的逻辑组合。一般而言,同一个计算组内的计算节点是同构的。利用构建好的计算资源环境可以用于各种云计算服务。
普通节点是有一定自由度的多语言环境,实现时为每个计算节点部署了运行时环境(一系列支撑组件例如lighttpd、php-cgi、java、python、其他服务等),虚拟机节点就是初始化出虚拟机实例,物理机节点就是初始化好的物理服务器。
为了保证集群的安全以及避免用户信息泄露给第三方,需要对集群中计算节点的内存在用户代码间进行隔离,实现计算节点的资源限制和路径隔离。
因而,计算环境构建模块10,包括:资源限制设定单元和路径隔离单元。
资源限制设定单元,用于查询各计算节点占用的资源分片信息,利用查找到的资源分片信息初始化计算节点,从而对计算节点进行资源限制,所述资源分片信息包括CPU、内存、上下行带宽值的使用量。
所述资源限制设定单元中可以利用CGROUPS脚本查询计算节点占用的资源分片信息。
计算节点内的计算服务的具体形式为进程,这些进程通过配置CGROUPS脚本进行启动。在CGROUPS配置脚本中,可以查询到需要初始化的计算单元占用的资源分片信息,包括CPU、内存、上下行带宽值(I/O)的使用量。这些资源分片信息可以是绝对值形式的,例如,CPU节点编号、内存占用值和上下行带宽值。或者,也可以是比例形式的,例如,CPU计算能力50%,内存总量35%,上下行带宽总量40%。
一般情况下,CPU、内存、上下行带宽值的使用量的总和为总的资源量,但有时为了预留一部分计算能力给系统,也可以为小于总的资源量100%;有时为了计算节点之间资源使用的互补,也可以为大于总的资源量100%。
根据得到的资源分片信息初始化计算节点。具体的,如果查询到计算节点占用的CPU计算能力为50%,则将该计算节点的CPU计算能力限制为50%。依次类推,完成计算节点的初始化。
将该脚本pid加入到创建的CGROUNP中,后续使用该脚本启动的所有进程都将自动继承该CGROUNP的资源限制,从而实现对计算节点进行资源限制。
路径隔离单元,用于为各计算节点指定不同的在运行时参考的根目录位置,从而对计算节点进行路径隔离。
路径隔离单元可以利用CHROOT命令在初始化计算节点时,将各计算节点在运行时参考的根目录位置更改为指定的根目录位置。具体的过程是:对每个计算节点单独使用一个用户名,在初始化计算节点时,即通过CHROOT指定该计算节点对应用户名的根目录位置,从而实现对计算节点进行路径隔离。
计算环境构建模块10也可以采用现有的虚拟机技术和物理机技术构建计算资源环境,由于虚拟机本身就具有较为彻底的隔离效果,物理机是独立进行分配使用的,也具有较好的隔离效果,因而,对于虚拟机计算节点和物理机计算节点不需要进行资源隔离和路径隔离的处理。
根据实际应用场景的不同,选择以不同的方式,对应不同的成本代价,来实现计算资源和环境的隔离。
管理平台模块20,用于接收用户发送的请求,解析得到该用户的业务信息以及请求执行的用户代码,传输至调度模块。
所述用户是指计算机集群的用户,一般为集群平台上的开发商。
所述业务信息包括用户有权使用的计算组组别和用户有权使用的各计算组的配额属性。也就是说,用户购买了哪些计算组,以及购买的这些计算组的计算节点的数量。
流量路由模块30,用于根据子用户发送的请求,确定流量中的域名或网址。
所述子用户为计算机集群用户(开发商)的受众,例如普通网民、消费者。
子用户发送的请求可以但不限于HTTP协议、fastcgi等协议的请求。本发明以HTTP协议为例,确定流量中的url。
调度模块40,用于为不同的域名或网址设定流量转发的目标计算组,形成流量转发规则。
预先为不同的域名或网址设定流量转发的目标计算组,形成流量转发规则。在流量转发规则中建立域名或网址与计算组的对应关系,设定哪个域名的哪些网址(url)转发到哪个计算组。
调度模块40还用于结合所述管理平台模块得到用户的业务信息,根据所述流量路由模块确定的域名或网址在所述流量转发规则中查询得到该域名或网址对应的目标计算组;查询目标计算组内的动态负载信息,并根据查询到的动态负载信息,调整转发的目标计算组中的目标计算节点,触发代码分发模块的代码发送至目标计算节点。
调度模块40通过流量路由模块30确定的url到所述流量转发规则中进行匹配,查询流量中的该url应该转发到哪个组,确定对应的计算组。
进一步结合该用户的有权使用的计算组组别和用户有权使用的各计算组的配额属性,确定该用户可用的目标计算组,作为流量承载的计算组。
在确定了可用的目标计算组之后,调度模块40查询目标计算组内的动态负载信息。
动态负载信息包括各计算节点及各计算节点的权值,所述权值的大小与各计算节点的负载成反比关系。根据计算节点的流量来确定计算节点的负载,负载高的权重低,负载低的权重高,以此平衡节点间的相对负载。所述计算节点的流量可以但不限于通过应用层的流控模块来获取。
在调整转发的目标计算组中的目标计算节点时,则根据各计算节点的权值的大小确定转发的目标计算节点。
根据动态负载信息,从用户可用的目标计算组中匹配到负载较低的计算节点,能够根据实际情况进行灵活选择,提高了效率和资源利用率。
另外,调度模块40还可根据各计算组的动态负载信息和配额属性进行调节各计算组中的计算节点的数量。
根据一个计算组有最大计算单元个数的配额属性,所述配额属性可以是用户购买数量或特别指定的数量,在计算组整体负载低的时候,可以从该计算组中摘除若干计算节点,减少计算节点的数量,以提升该计算组的负载水平。反之亦然,以此实现对计算资源利用率的提高。通过调节目标计算节点的数量,提高计算资源的利用率。
代码分发模块50,用于在受到所述调度模块的触发后,将所述用户代码发送到所述流量路由模块确定的目标计算节点执行。
本发明提供的方法和装置可以根据实际的配置,选择以不同的计算节点方式来实现实现资源的隔离和分配,能够灵活应用于各种云环境需求中。同时,采用动态负载分配的方式将流量与计算节点进行有效匹配,提高了计算资源的利用率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (16)

1.一种计算资源的分配方法,其特征在于,该方法包括:
预先构建计算资源环境,确定所用的计算组以及各计算组中的计算节点;
接收用户发送的请求,解析得到该用户的业务信息以及请求执行的用户代码,所述业务信息包括用户有权使用的计算组组别和用户有权使用的各计算组的配额属性;
为不同的域名或网址设定流量转发的目标计算组,形成流量转发规则;
根据子用户发送的请求,确定流量中的域名或网址,结合所述用户的业务信息,利用确定的域名或网址在所述流量转发规则中查询得到该域名或网址对应的目标计算组;
查询目标计算组内的动态负载信息,根据查询到的动态负载信息,调整转发的目标计算组中的目标计算节点;
将所述请求执行的用户代码发送到确定的目标计算节点执行。
2.根据权利要求1所述的方法,其特征在于,所述计算节点包括:普通计算节点、虚拟机计算节点或物理机计算节点。
3.根据权利要求2所述的方法,其特征在于,当所述计算节点为普通计算节点时,所述预先构建计算资源环境包括:
查询各计算节点占用的资源分片信息,利用查找到的资源分片信息初始化计算节点,从而对计算节点进行资源限制,所述资源分片信息包括CPU、内存、上下行带宽值的使用量。
4.根据权利要求3所述的方法,其特征在于,所述查询各计算节点占用的资源分片信息,包括:利用CGROUPS脚本查询计算节点占用的资源分片信息。
5.根据权利要求2所述的方法,其特征在于,当所述计算节点为普通计算节点时,所述预先构建计算资源环境包括:
为各计算节点指定不同的在运行时参考的根目录位置,在初始化计算节点时,将各计算节点在运行时参考的根目录位置更改为指定的根目录位置,从而对计算节点进行路径隔离。
6.根据权利要求5所述的方法,其特征在于,所述更改为指定的根目录位置,包括:利用CHROOT命令将各计算节点在运行时参考的根目录位置更改为指定的根目录位置。
7.根据权利要求1所述的方法,其特征在于,所述调整转发的目标计算组中的目标计算节点,还包括:
根据各计算组的动态负载信息和配额属性进行调节所述目标计算节点的数量。
8.根据权利要求1所述的方法,其特征在于,所述动态负载信息包括各计算节点及各计算节点的权值,所述权值的大小与各计算节点的负载成反比关系;
所述调整转发的目标计算组中的目标计算节点,包括:
根据各计算节点的权值的大小确定转发的目标计算节点。
9.一种计算资源的分配装置,其特征在于,该装置包括:
计算环境构建模块,用于预先构建计算资源环境,确定所用的计算组以及各计算组中的计算节点;
管理平台模块,用于接收用户发送的请求,解析得到该用户的业务信息以及请求执行的用户代码,传输至调度模块,所述业务信息包括用户有权使用的计算组组别和用户有权使用的各计算组的配额属性;
流量路由模块,用于根据子用户发送的请求,确定流量中的域名或网址;
调度模块,用于为不同的域名或网址设定流量转发的目标计算组,形成流量转发规则;以及,
用于结合所述管理平台模块得到用户的业务信息,根据所述流量路由模块确定的域名或网址在所述流量转发规则中查询得到该域名或网址对应的目标计算组;查询目标计算组内的动态负载信息,并根据查询到的动态负载信息,调整转发的目标计算组中的目标计算节点,触发代码分发模块的代码发送至目标计算节点;
代码分发模块,用于在受到所述调度模块的触发后,将所述用户代码发送到所述流量路由模块确定的目标计算节点执行。
10.根据权利要求9所述的装置,其特征在于,所述计算节点包括:普通计算节点、虚拟机计算节点或物理机计算节点。
11.根据权利要求10所述的装置,其特征在于,当所述计算节点为普通计算节点时,所述计算环境构建模块包括:
资源限制设定单元,用于查询各计算节点占用的资源分片信息,利用查找到的资源分片信息初始化计算节点,从而对计算节点进行资源限制,所述资源分片信息包括CPU、内存、上下行带宽值的使用量。
12.根据权利要求11所述的装置,其特征在于,所述资源限制设定单元中利用CGROUPS脚本查询计算节点占用的资源分片信息。
13.根据权利要求10所述的装置,其特征在于,当所述计算节点为普通计算节点时,所述计算环境构建模块包括:
路径隔离单元,用于为各计算节点指定不同的在运行时参考的根目录位置,在初始化计算节点时,将各计算节点在运行时参考的根目录位置更改为指定的根目录位置,从而对计算节点进行路径隔离。
14.根据权利要求13所述的装置,其特征在于,所述路径隔离单元利用CHROOT命令,将各计算节点在运行时参考的根目录位置更改为指定的根目录位置。
15.根据权利要求9所述的装置,其特征在于,所述调度模块调整转发的目标计算组中的目标计算节点,还包括:
根据各计算组的动态负载信息和配额属性进行调节所述目标计算节点的数量。
16.根据权利要求9所述的装置,其特征在于,所述动态负载信息包括各计算节点及各计算节点的权值,所述权值的大小与各计算节点的负载成反比关系;
所述调度模块调整转发的目标计算组中的目标计算节点,包括:
根据各计算节点的权值的大小确定转发的目标计算节点。
CN201210080727.6A 2012-03-23 2012-03-23 一种计算资源的分配方法和装置 Active CN103324535B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210080727.6A CN103324535B (zh) 2012-03-23 2012-03-23 一种计算资源的分配方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210080727.6A CN103324535B (zh) 2012-03-23 2012-03-23 一种计算资源的分配方法和装置

Publications (2)

Publication Number Publication Date
CN103324535A true CN103324535A (zh) 2013-09-25
CN103324535B CN103324535B (zh) 2017-02-08

Family

ID=49193297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210080727.6A Active CN103324535B (zh) 2012-03-23 2012-03-23 一种计算资源的分配方法和装置

Country Status (1)

Country Link
CN (1) CN103324535B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209741A (zh) * 2015-05-06 2016-12-07 阿里巴巴集团控股有限公司 一种虚拟主机及隔离方法、资源访问请求处理方法及装置
CN106921583A (zh) * 2016-12-07 2017-07-04 阿里巴巴集团控股有限公司 网络设备流量控制方法及装置
CN107741873A (zh) * 2016-12-14 2018-02-27 腾讯科技(深圳)有限公司 业务处理方法及装置
CN107870815A (zh) * 2016-09-26 2018-04-03 中国电信股份有限公司 一种分布式系统的任务调度方法以及系统
CN108319500A (zh) * 2017-01-16 2018-07-24 阿里巴巴集团控股有限公司 一种云计算系统的操作方法、装置及电子设备
CN105279028B (zh) * 2015-11-24 2018-09-07 浪潮(北京)电子信息产业有限公司 一种内存资源分配方法及装置
CN110401556A (zh) * 2018-12-20 2019-11-01 上海海旭软件有限公司 一种idc机房线缆可视化自动调度的方法和装置
CN111030966A (zh) * 2018-10-10 2020-04-17 阿里巴巴集团控股有限公司 数据处理方法、装置和机器可读介质
CN111240836A (zh) * 2020-01-06 2020-06-05 北京百度网讯科技有限公司 算力资源管理方法、装置、电子设备及存储介质
CN111625359A (zh) * 2020-05-25 2020-09-04 北京金山云网络技术有限公司 用户的cdn用量的确定方法、装置和终端设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1494693A (zh) * 2001-04-30 2004-05-05 �Ҵ���˾ 群集计算机系统中的组访问专用化
CN101719082A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1494693A (zh) * 2001-04-30 2004-05-05 �Ҵ���˾ 群集计算机系统中的组访问专用化
CN101719082A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209741A (zh) * 2015-05-06 2016-12-07 阿里巴巴集团控股有限公司 一种虚拟主机及隔离方法、资源访问请求处理方法及装置
CN106209741B (zh) * 2015-05-06 2020-01-03 阿里巴巴集团控股有限公司 一种虚拟主机及隔离方法、资源访问请求处理方法及装置
CN105279028B (zh) * 2015-11-24 2018-09-07 浪潮(北京)电子信息产业有限公司 一种内存资源分配方法及装置
CN107870815A (zh) * 2016-09-26 2018-04-03 中国电信股份有限公司 一种分布式系统的任务调度方法以及系统
CN106921583A (zh) * 2016-12-07 2017-07-04 阿里巴巴集团控股有限公司 网络设备流量控制方法及装置
CN107741873A (zh) * 2016-12-14 2018-02-27 腾讯科技(深圳)有限公司 业务处理方法及装置
CN108319500A (zh) * 2017-01-16 2018-07-24 阿里巴巴集团控股有限公司 一种云计算系统的操作方法、装置及电子设备
CN111030966B (zh) * 2018-10-10 2022-05-27 阿里巴巴集团控股有限公司 数据处理方法、装置和机器可读介质
CN111030966A (zh) * 2018-10-10 2020-04-17 阿里巴巴集团控股有限公司 数据处理方法、装置和机器可读介质
CN110401556A (zh) * 2018-12-20 2019-11-01 上海海旭软件有限公司 一种idc机房线缆可视化自动调度的方法和装置
CN111240836A (zh) * 2020-01-06 2020-06-05 北京百度网讯科技有限公司 算力资源管理方法、装置、电子设备及存储介质
CN111625359A (zh) * 2020-05-25 2020-09-04 北京金山云网络技术有限公司 用户的cdn用量的确定方法、装置和终端设备
CN111625359B (zh) * 2020-05-25 2023-04-18 北京金山云网络技术有限公司 用户的cdn用量的确定方法、装置和终端设备

Also Published As

Publication number Publication date
CN103324535B (zh) 2017-02-08

Similar Documents

Publication Publication Date Title
CN103324535A (zh) 一种计算资源的分配方法和装置
CN110602254B (zh) 一种实现负载均衡的方法、装置及系统
US20200351252A1 (en) Interfaces to manage direct network peerings
US8782233B2 (en) Embedding a cloud-based resource request in a specification language wrapper
US10372490B2 (en) Migration of a virtual machine from a first cloud computing environment to a second cloud computing environment in response to a resource or services in the second cloud computing environment becoming available
US9407572B2 (en) Multiple cloud marketplace aggregation
US11848998B2 (en) Cross-cloud workload identity virtualization
JP4753052B2 (ja) コンテンツ配信方法及びシステム
JP2022532007A (ja) モバイルエッジコンピューティングノードの選択方法、装置及びシステム並びにコンピュータプログラム
US11922196B2 (en) Cloud-based utilization of software entitlements
TWI225990B (en) Autonomic provisioning of network-accessible service behaviors within a federated grid infrastructure
US10243875B2 (en) Cloud service management system
Li et al. Maximizing user service satisfaction for delay-sensitive IoT applications in edge computing
Nir et al. Economic and energy considerations for resource augmentation in mobile cloud computing
Wuhib et al. Allocating compute and network resources under management objectives in large-scale clouds
US20140143427A1 (en) Providing Resources in a Cloud
CN102667749A (zh) Dns应用服务器
JP2012038152A (ja) 接続管理システム、及びシンクライアントシステムにおける接続管理サーバの連携方法
Kang et al. A cluster-based decentralized job dispatching for the large-scale cloud
Tran et al. OaaS: offload as a service in fog networks
US20120158564A1 (en) System and method for account management based on open application programming interface using restful web services
CN109474713A (zh) 报文转发方法和装置
US20110153826A1 (en) Fault tolerant and scalable load distribution of resources
Ayachi et al. Cooperative game approach to form overlapping cloud federation based on inter-cloud architecture
KR101544487B1 (ko) 복수의 사용자 계정들을 갖는 클라이언트에 대한 가상 데스크톱 서비스 시스템

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant