CN108200156A - 一种云环境下分布式文件系统的动态负载均衡方法 - Google Patents
一种云环境下分布式文件系统的动态负载均衡方法 Download PDFInfo
- Publication number
- CN108200156A CN108200156A CN201711477732.XA CN201711477732A CN108200156A CN 108200156 A CN108200156 A CN 108200156A CN 201711477732 A CN201711477732 A CN 201711477732A CN 108200156 A CN108200156 A CN 108200156A
- Authority
- CN
- China
- Prior art keywords
- node
- file system
- load
- utilization rate
- disk space
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1029—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公布了一种云环境下分布式文件系统的动态负载均衡方法,该方法主要包括:获取云环境下分布式文件系统所有节点的信息,判断文件系统是否平衡,根据每个节点的磁盘空间使用率、CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率计算出均衡时需要的阈值,根据该阈值和磁盘空间使用率对文件系统的负载进行失衡调整。本方法支持云计算任务执行的同时对文件系统进行负载均衡,通过对节点的监测信息不断对负载进行调整,提高云计算对文件系统的执行效率。
Description
技术领域
本发明涉及一种云环境下对分布式文件系统的负载进行动态均衡的方法,属于大数据云计算领域。
背景技术
随着计算机和信息技术的迅猛发展和普及应用,行业应用系统的规模迅速扩大,行业应用所产生的数据呈爆炸性增长,目前所积累的数据量都被上传并存储在分布式文件系统中,在有效利用和处理这些数据的同时,保证分布式文件系统的负载均衡,成为对分布式文件系统的研究热点之一。
HDFS作为分布式文件系统的典型代表,是一种可扩展的主从分布式文件系统。HDFS在数据存放的过程中,数据块的存放是随机的,这种存储方式很容易造成节点间数据存储的不平衡,使得负载失衡,这样我们在对数据操作的过程中会造成资源的分配不均衡,很大程度上降低了并行度,浪费了云计算平台的计算能力。一种可行方案是对HDFS数据存放模式进行改进,可以根据每个节点的当前负载和节点的磁盘大小按比例进行数据块的放置。
balancer算法是HDFS中的一个对负载进行均衡的算法,该算法根据当前磁盘使用情况和阈值对文件系统进行均衡调整,在调整的过程中可以在不丢失数据块的前提下进行负载均衡。虽然该算法可以作为均衡负载的一种有效算法,但是在影响该算法的参数中,阈值λ的确定是用户根据当前磁盘的使用状态进行主观的取定,这样就造成了在均衡过程中的人为主观性,对均衡的效果有很大影响,而且该算法需要用户去调用才会实现,在对分布式文件系统操作的过程中我们很难主观判断集群的负载程度以及阈值该如何确定。
发明内容
本发明所要解决的技术问题是针对背景技术的缺陷,提供一种云环境下对分布式文件系统的负载进行动态均衡的方法,在保证数据不丢失和操作正常进行的同时,可以根据当前节点的磁盘空间使用率和当前任务的繁忙程度进行负载均衡,提高了任务的执行效率和负载的均衡程度。
本发明为了解决上述技术问题,采用如下技术方案:
一种云环境下分布式文件系统的负载均衡方法,包括以下步骤:
步骤一、从Hadoop集群获取每个节点的信息;
步骤二、根据节点信息计算出均衡时需要的阈值;
步骤三、根据节点的磁盘空间使用率和阈值判断集群是否均衡,若均衡转步骤一,否则转步骤四;
步骤四、根据计算的阈值对分布式文件系统进行负载均衡调整。
进一步的,本发明所提出的云环境下分布式文件系统的负载均衡方法,步骤一中获取每个节点的信息,节点信息包括:磁盘空间使用率、CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率。
进一步的,本发明所提出的云环境下分布式文件系统的负载均衡方法,节点信息的获取步骤如下:
1.1、通过指令hdfs dfsadmin–report查看集群状态获取文件系统的磁盘空间使用率;
1.2、读取节点proc文件夹下的stat文件获取CPU利用率;
1.3、读取节点proc文件夹下的meminfo文件获取内存利用率;
1.4、通过iostat命令监控IO负载情况,获取I/O占用率;
1.5、读取节点proc/net文件夹下的dev文件,获取网络带宽占用率。
进一步的,本发明所提出的云环境下分布式文件系统的负载均衡方法,步骤二的具体步骤如下:
2.1、将集群的平均磁盘空间使用率记为即集群磁盘空间使用率的离散程度为σ,即其中N为集群节点个数;Pdiski代表节点i的磁盘空间使用率;
2.2、将集群节点i的繁忙程度记为Bi,影响集群节点的繁忙程度的参数有节点的CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率,利用线性加权法,计算节点的繁忙程度,即r1,r2,r3,r4分别表示各变量在影响节点繁忙程度方面所占的比重,且r1+r2+r3+r4=1;Pcpui、Pmemi、Pioi、Pbandwidthi分别代表节点i的CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率;
2.3、将集群的整体繁忙程度记为
2.4、阈值记为λ,利用线性加权法计算λ,dmax是节点磁盘空间使用率偏移均值最大值,且dmax>σ,k1,k2分别表示各变量在影响阈值方面所占的比重,且k1+k2=1。
进一步的,本发明所提出的云环境下分布式文件系统的负载均衡方法,r1=0.2756,r2=0.2297,r3=0.3308,r4=0.1639。
进一步的,本发明所提出的云环境下分布式文件系统的负载均衡方法,k1=0.1,k2=0.9。
进一步的,本发明所提出的云环境下分布式文件系统的负载均衡方法,步骤三根据计算出的阈值λ和节点的磁盘空间使用率来判断集群负载是否均衡,判断步骤如下:
3.1、首先判断第一个节点的磁盘空间使用率是否在范围范围之内,若在此范围继续判断下一个节点;
3.2、判断第二个节点的磁盘空间使用率是否在范围范围之内,若在此范围继续判断下一个节点;
3.3、逐一的判断每一个节点,若所有节点的磁盘空间使用率都在范围范围之内,转步骤一,否则集群处于不平衡状态,转步骤四。
进一步的,本发明的云环境下对分布式文件系统的动态负载均衡方法,其特征在于,步骤四来动态调整不均衡的负载,具体步骤如下:
用户调用HDFS的balancer算法对集群进行负载均衡,调用指令:
HADOOP_HOME/bin/start-balancer.sh-thresholdλ。
本发明采用以上技术方案,与现有技术相比具有以下技术效果:
本发明利用节点信息对阈值进行确定,通过线性加权的方案对阈值计算,实现了动态获取阈值的负载均衡算法D-balancer,并取得了较为理想的实验结果。把该动态获取阈值的负载均衡方案运用在云环境下的分布式文件系统中,可以让分布式文件系统达到平衡的效果,充分利用每个节点的资源,提高了对数据操作的效率,充分利用了云计算的并行特性。
与现有方案对比,由于本发明提出的方法通过节点的当前信息多阈值λ动态获取,降低了人为主观性,增加了客观理论依据,提高了均衡程度和任务执行效率。
附图说明
图1是均衡方案的流程图。
具体实施方式
下面结合附图对本发明的技术方案的实施作进一步的详细描述:
本发明针对云环境下分布式文件系统负载不均衡问题,提出一种可以动态的获取阈值的均衡算法D-balancer,该方案基于集群节点的信息,动态获取负载均衡过程中所需要的均衡阈值,运用动态的阈值重新对集群的负载进行调整,提高负载的均衡程度和任务的执行效率。
如图1所示,该方法包括以下步骤:
步骤一:获取节点信息
节点i的信息主要包括磁盘空间使用率、CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率,分别记为Pdiski、Pcpui、Pmemi、Pioi、Pbandwidthi。获取步骤如下:
1.1、通过hdfs dfsadmin–report查看集群状态获取文件系统的磁盘空间使用率Pdiski;
1.2、读取节点proc文件夹下的stat文件获取CPU利用情况。
1.3、读取节点proc文件夹下的meminfo文件获取内存使用情况。
1.4、通过iostat命令监控IO负载情况,获取I/O使用情况。
1.5、读取节点proc/net文件夹下的dev文件,获取网络带宽占用率。
步骤二:计算阈值λ
2.1、集群的平均磁盘空间使用率记为即集群磁盘空间使用率的离散程度为σ,即其中N为节点个数;
2.2、集群节点i的繁忙程度记为Bi,影响集群节点的繁忙程度的参数有节点的CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率,利用线性加权法,计算节点的繁忙程度,即r1,r2,r3,r4分别表示各变量在影响节点繁忙程度方面所占的比重,r1=0.2756,r2=0.2297,r3=0.3308,r4=0.1639,且r1+r2+r3+r4=1。
2.3、集群的整体繁忙程度记为
2.4、阈值记为λ,利用线性加权法计算λ,dmax是节点磁盘空间使用率偏移均值最大值,且dmax>σ,k1,k2分别表示各变量在影响阈值方面所占的比重,k1=0.1,k2=0.9。且k1+k2=1。
步骤三:判断集群负载的平衡性
3.1、首先判断第一个节点的磁盘空间使用率是否在范围范围之内,若在此范围继续判断下一个节点;
3.2、断第二个节点的磁盘空间使用率是否在范围范围之内,若在此范围继续判断下一个节点;
3.3、逐一的判断每一个节点,若所有节点的磁盘空间使用率都在范围范围之内,转步骤一,否则集群处于不平衡状态,转步骤四;
步骤四:进行均衡调整
用户调用HDFS的balancer算法对集群进行负载均衡,调用指令:
HADOOP_HOME/bin/start-balancer.sh thresholdλ;
综上所述,本发明提出了一种动态获取阈值来调整负载均衡的算法D-balancer,根据节点的当前磁盘使用情况和节点的繁忙程度来确定阈值λ,λ的确定降低了人为的主观性,增大了理论依据,提高了文件系统的均衡程度,提升了任务的执行效率。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.一种云环境下分布式文件系统的负载均衡方法,其特征在于,包括以下步骤:
步骤一、从Hadoop集群获取每个节点的信息;节点的信息包括:磁盘空间使用率、CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率;
步骤二、根据节点的信息,利用线性加权法计算出均衡时需要的阈值;
步骤三、根据节点的磁盘空间使用率和阈值判断集群是否均衡,若均衡转步骤一,否则转步骤四;
步骤四、根据计算的阈值对分布式文件系统进行负载均衡调整。
2.根据权利要求1所述的云环境下分布式文件系统的负载均衡方法,其特征在于,节点信息的获取步骤如下:
1.1、通过指令hdfs dfsadmin-report查看集群状态获取文件系统的磁盘空间使用率;
1.2、读取节点proc文件夹下的stat文件获取CPU利用率;
1.3、读取节点proc文件夹下的meminfo文件获取内存利用率;
1.4、通过iostat命令监控IO负载情况,获取磁盘I/O占用率;
1.5、读取节点proc/net文件夹下的dev文件,获取网络带宽占用率。
3.根据权利要求1所述的云环境下分布式文件系统的负载均衡方法,其特征在于,步骤二的具体步骤如下:
2.1、将集群的平均磁盘空间使用率记为即集群磁盘空间使用率的离散程度为σ,即其中N为集群节点个数;Pdiski代表节点i的磁盘空间使用率;
2.2、将集群节点i的繁忙程度记为Bi,影响集群节点的繁忙程度的参数有节点的CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率,利用线性加权法,计算节点的繁忙程度,即r1,r2,r3,r4分别表示各变量在影响节点繁忙程度方面所占的比重,且r1+r2+r3+r4=1;Pcpui、Pmemi、Pioi、Pbandwidthi分别代表节点i的CPU利用率、内存利用率、磁盘I/O占用率、网络带宽占用率;
2.3、将集群的整体繁忙程度记为
2.4、将阈值记为λ,利用线性加权法计算λ,dmax是节点磁盘空间使用率偏移均值最大值,且dmax>σ,k1,k2分别表示各变量在影响阈值方面所占的比重,且k1+k2=1。
4.根据权利要求3所述的云环境下分布式文件系统的负载均衡方法,其特征在于,r1=0.2756,r2=0.2297,r3=0.3308,r4=0.1639。
5.根据权利要求3所述的云环境下分布式文件系统的负载均衡方法,其特征在于,k1=0.1,k2=0.9。
6.根据权利要求3所述的云环境下分布式文件系统的负载均衡方法,其特征在于,步骤三根据计算出的阈值λ和节点的磁盘空间使用率来判断集群负载是否均衡,判断步骤如下:
3.1、首先判断第一个节点的磁盘空间使用率是否在范围范围之内,若在此范围继续判断下一个节点;
3.2、判断第二个节点的磁盘空间使用率是否在范围范围之内,若在此范围继续判断下一个节点;
3.3、逐一的判断每一个节点,若所有节点的磁盘空间使用率都在范围范围之内,转步骤一,否则集群处于不平衡状态,转步骤四。
7.根据权利要求1所述的云环境下分布式文件系统的负载均衡方法,其特征在于,步骤四具体步骤如下:
用户调用HDFS的balancer算法对集群进行负载均衡,调用指令:
HADOOP_HOME/bin/start-balancer.sh-thresholdλ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711477732.XA CN108200156A (zh) | 2017-12-29 | 2017-12-29 | 一种云环境下分布式文件系统的动态负载均衡方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711477732.XA CN108200156A (zh) | 2017-12-29 | 2017-12-29 | 一种云环境下分布式文件系统的动态负载均衡方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108200156A true CN108200156A (zh) | 2018-06-22 |
Family
ID=62586512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711477732.XA Pending CN108200156A (zh) | 2017-12-29 | 2017-12-29 | 一种云环境下分布式文件系统的动态负载均衡方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108200156A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120715A (zh) * | 2018-09-21 | 2019-01-01 | 华南理工大学 | 一种云环境下动态负载均衡方法 |
CN109284295A (zh) * | 2018-10-17 | 2019-01-29 | 郑州云海信息技术有限公司 | 一种数据优化的方法及装置 |
CN109936627A (zh) * | 2019-02-21 | 2019-06-25 | 山东浪潮云信息技术有限公司 | 一种基于hadoop的自动数据均衡方法及工具 |
CN110149395A (zh) * | 2019-05-20 | 2019-08-20 | 华南理工大学 | 一种基于海量小文件高并发情况下动态负载均衡方法 |
WO2020062277A1 (zh) * | 2018-09-30 | 2020-04-02 | 华为技术有限公司 | 神经网络中数据预处理阶段的计算资源的管理方法和装置 |
CN111190790A (zh) * | 2019-12-17 | 2020-05-22 | 西安交通大学 | 一种基于峰值预测的云计算集群监控方法及系统 |
CN111367878A (zh) * | 2020-03-16 | 2020-07-03 | 中国银行股份有限公司 | Ipfs节点的监控方法及装置 |
CN113535410A (zh) * | 2021-09-15 | 2021-10-22 | 航天宏图信息技术股份有限公司 | 用于gis空间矢量分布式计算的负载均衡方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080222646A1 (en) * | 2007-03-06 | 2008-09-11 | Lev Sigal | Preemptive neural network database load balancer |
CN106161120A (zh) * | 2016-10-08 | 2016-11-23 | 电子科技大学 | 动态均衡负载的分布式元数据管理方法 |
-
2017
- 2017-12-29 CN CN201711477732.XA patent/CN108200156A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080222646A1 (en) * | 2007-03-06 | 2008-09-11 | Lev Sigal | Preemptive neural network database load balancer |
CN106161120A (zh) * | 2016-10-08 | 2016-11-23 | 电子科技大学 | 动态均衡负载的分布式元数据管理方法 |
Non-Patent Citations (1)
Title |
---|
康承昆 等: "一种基于多衡量指标的HDFS负载均衡算法", 《四川大学学报(自然科学版)》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120715A (zh) * | 2018-09-21 | 2019-01-01 | 华南理工大学 | 一种云环境下动态负载均衡方法 |
WO2020062277A1 (zh) * | 2018-09-30 | 2020-04-02 | 华为技术有限公司 | 神经网络中数据预处理阶段的计算资源的管理方法和装置 |
CN112753016A (zh) * | 2018-09-30 | 2021-05-04 | 华为技术有限公司 | 神经网络中数据预处理阶段的计算资源的管理方法和装置 |
CN109284295A (zh) * | 2018-10-17 | 2019-01-29 | 郑州云海信息技术有限公司 | 一种数据优化的方法及装置 |
CN109284295B (zh) * | 2018-10-17 | 2021-09-17 | 郑州云海信息技术有限公司 | 一种数据优化的方法及装置 |
CN109936627A (zh) * | 2019-02-21 | 2019-06-25 | 山东浪潮云信息技术有限公司 | 一种基于hadoop的自动数据均衡方法及工具 |
CN110149395A (zh) * | 2019-05-20 | 2019-08-20 | 华南理工大学 | 一种基于海量小文件高并发情况下动态负载均衡方法 |
CN111190790A (zh) * | 2019-12-17 | 2020-05-22 | 西安交通大学 | 一种基于峰值预测的云计算集群监控方法及系统 |
CN111367878A (zh) * | 2020-03-16 | 2020-07-03 | 中国银行股份有限公司 | Ipfs节点的监控方法及装置 |
CN111367878B (zh) * | 2020-03-16 | 2023-08-18 | 中国银行股份有限公司 | Ipfs节点的监控方法及装置 |
CN113535410A (zh) * | 2021-09-15 | 2021-10-22 | 航天宏图信息技术股份有限公司 | 用于gis空间矢量分布式计算的负载均衡方法及系统 |
CN113535410B (zh) * | 2021-09-15 | 2022-02-08 | 航天宏图信息技术股份有限公司 | 用于gis空间矢量分布式计算的负载均衡方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108200156A (zh) | 一种云环境下分布式文件系统的动态负载均衡方法 | |
CN108009016B (zh) | 一种资源负载均衡控制方法及集群调度器 | |
CN110134495B (zh) | 一种容器跨主机在线迁移方法、存储介质及终端设备 | |
CN102232282B (zh) | 一种实现数据中心资源负载均衡的方法及装置 | |
CN102185779B (zh) | 与综合配置能力成比例的数据中心资源负载均衡的方法及装置 | |
Yakhchi et al. | Proposing a load balancing method based on Cuckoo Optimization Algorithm for energy management in cloud computing infrastructures | |
US9286099B2 (en) | Balancing virtual machine loads | |
CN110231976B (zh) | 一种基于负载预测的边缘计算平台容器部署方法及系统 | |
CN108182105B (zh) | 基于Docker容器技术的局部动态迁移方法及控制系统 | |
CN111966453B (zh) | 一种负载均衡方法、系统、设备及存储介质 | |
CN107992353B (zh) | 一种基于最小迁移量的容器动态迁移方法及系统 | |
CN106790726A (zh) | 一种基于Docker云平台的优先级队列动态反馈负载均衡资源调度方法 | |
CN105491138B (zh) | 一种基于负载率分级触发的分布式负载调度方法 | |
CN106326000A (zh) | 一种云计算系统中的资源调度方法及装置 | |
CN107220108A (zh) | 一种实现云数据中心负载均衡的方法和系统 | |
CN104375897A (zh) | 基于最小相对负载不均衡度的云计算资源调度方法 | |
CN106059940B (zh) | 一种流量控制方法及装置 | |
CN102480502B (zh) | 一种i/o负载均衡方法及i/o服务器 | |
CN105607943A (zh) | 一种云环境下虚拟机动态部署机制 | |
CN116016533A (zh) | 一种自动加权负载均衡方法和系统、电子设备、存储介质 | |
CN112559122A (zh) | 一种基于电力专用安防设备的虚拟化实例管控方法及系统 | |
CN110597598B (zh) | 一种云环境中的虚拟机迁移的控制方法 | |
CN113364626B (zh) | 面向边缘环境的视频分析应用的服务放置与带宽分配方法 | |
CN112637286B (zh) | 网络架构调整方法、装置、系统和计算机可读存储介质 | |
CN108259583B (zh) | 一种数据动态迁移方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180622 |