自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

聊聊 HDFS Balancer負(fù)載均衡器

大數(shù)據(jù) 數(shù)據(jù)分析
平衡指的是 每個(gè)DataNode的利用率 與 集群的利用率 之間相差不超過(guò)給定的閾值百分比。此處的平衡 指的是各個(gè)DataNode之間的平衡,同一個(gè)DataNode之間的各個(gè)磁盤(pán)是不會(huì)平衡的。

1、背景

當(dāng)我們的hadoop集群運(yùn)行了一段時(shí)間之后,各個(gè)DataNode上的數(shù)據(jù)分布并不一定是均勻分布的。比如說(shuō): 我們向現(xiàn)有集群中添加了一個(gè)新的DataNode。

DataNode數(shù)據(jù)不均衡

2、什么是平衡

此處是我自己的一個(gè)簡(jiǎn)單的理解

所謂的平衡指的是 每個(gè)DataNode的利用率 與 集群的利用率 之間相差不超過(guò)給定的閾值百分比。此處的平衡 指的是各個(gè)DataNode之間的平衡,同一個(gè)DataNode之間的各個(gè)磁盤(pán)是不會(huì)平衡的。

2.1 每個(gè)DataNode的利用率計(jì)算

每個(gè)DataNode的利用率計(jì)算

DataNode的利用率= dfs已用的空間 / 分配給dfs的空間。

注意: 分配給dfs的空間 不是磁盤(pán)的總空間。

2.2 集群的利用率

集群的利用率

集群的利用率= 各datanode dfs已使用的空間 / 各datanode總空間

2.3 平衡

假設(shè)平衡的閾值是 5%,集群的利用率是 37.5,那么每個(gè)節(jié)點(diǎn)的利用率在32.5%到42.5%之間都認(rèn)為是均衡的。也就是說(shuō),極端情況下,DataNode的利用率最大相差10%。

3、hdfs balancer語(yǔ)法

[hadoopdeploy@hadoop01 ~]$ hdfs balancer --help
Usage: hdfs balancer
[-policy <policy>] the balancing policy: datanode or blockpool
[-threshold <threshold>] Percentage of disk capacity
[-exclude [-f <hosts-file> | <comma-separated list of hosts>]] Excludes the specified datanodes.
[-include [-f <hosts-file> | <comma-separated list of hosts>]] Includes only the specified datanodes.
[-source [-f <hosts-file> | <comma-separated list of hosts>]] Pick only the specified datanodes as source nodes.
[-blockpools <comma-separated list of blockpool ids>] The balancer will only run on blockpools included in this list.
[-idleiterations <idleiterations>] Number of consecutive idle iterations (-1 for Infinite) before exit.
[-runDuringUpgrade] Whether to run the balancer during an ongoing HDFS upgrade.This is usually not desired since it will not affect used space on over-utilized machines.
[-asService] Run as a long running service.

Generic options supported are:
-conf <configuration file> specify an application configuration file
-D <property=value> define a value for a given property
-fs <file:///|hdfs://namenode:port> specify default filesystem URL to use, overrides 'fs.defaultFS' property from configurations.
-jt <local|resourcemanager:port> specify a ResourceManager
-files <file1,...> specify a comma-separated list of files to be copied to the map reduce cluster
-libjars <jar1,...> specify a comma-separated list of jar files to be included in the classpath
-archives <archive1,...> specify a comma-separated list of archives to be unarchived on the compute machines

The general command line syntax is:
command [genericOptions] [commandOptions]

參數(shù)

描述

threshold

磁盤(pán)容量的百分比。默認(rèn)值為10%,表示上下浮動(dòng)10%。

policy

平衡策略。
datanode(默認(rèn)):當(dāng)每一個(gè)DataNode是平衡的時(shí)候,集群就是平衡的。
blockpool:當(dāng)每一個(gè)DataNode中的blockpool是平衡的,集群就是平衡的。

exclude

不參與平衡的DataNode節(jié)點(diǎn)

include

參與平衡的DataNode節(jié)點(diǎn)

source

僅選取指定的數(shù)據(jù)節(jié)點(diǎn)作為源節(jié)點(diǎn)

blockpools

Balancer僅在指定的blockpools中運(yùn)行

idleiterations

退出前的連續(xù)空閑迭代次數(shù)(-1表示無(wú)限)

-runDuringUpgrade

是否在正在進(jìn)行的HDFS升級(jí)過(guò)程中運(yùn)行平衡器。通常不需要這樣做,因?yàn)檫@不會(huì)影響過(guò)度使用的計(jì)算機(jī)上的已用空間。

-asService

作為長(zhǎng)期運(yùn)行的服務(wù)運(yùn)行


4、運(yùn)行一個(gè)簡(jiǎn)單的balance案例

4.1 設(shè)置平衡數(shù)據(jù)傳輸帶寬

[hadoopdeploy@hadoop01 ~]$ hdfs dfsadmin  -setBalancerBandwidth 10485760
Balancer bandwidth is set to 10485760
[hadoopdeploy@hadoop01 ~]$

當(dāng)我們的集群負(fù)載需要調(diào)低這個(gè)值,當(dāng)我們的集群負(fù)載較低時(shí),可以適當(dāng)調(diào)高這個(gè)值。

4.2 執(zhí)行banalce

[hadoopdeploy@hadoop01 ~]$ hdfs balancer -policy datanode -threshold 5
2023-03-26 14:10:09,785 INFO balancer.Balancer: Using a threshold of 5.0
2023-03-26 14:10:09,786 INFO balancer.Balancer: namenodes = [hdfs://hadoop01:8020]
2023-03-26 14:10:09,786 INFO balancer.Balancer: parameters = Balancer.BalancerParameters [BalancingPolicy.Node, threshold = 5.0, max idle iteration = 5, #excluded nodes = 0, #included nodes = 0, #source nodes = 0, #blockpools = 0, run during upgrade = false]
2023-03-26 14:10:09,786 INFO balancer.Balancer: included nodes = []
2023-03-26 14:10:09,786 INFO balancer.Balancer: excluded nodes = []
2023-03-26 14:10:09,786 INFO balancer.Balancer: source nodes = []
Time Stamp Iteration# Bytes Already Moved Bytes Left To Move Bytes Being Moved NameNode
2023-03-26 14:10:09,787 INFO balancer.NameNodeConnector: getBlocks calls for hdfs://hadoop01:8020 will be rate-limited to 20 per second
2023-03-26 14:10:10,392 INFO balancer.Balancer: dfs.namenode.get-blocks.max-qps = 20 (default=20)
2023-03-26 14:10:10,392 INFO balancer.Balancer: dfs.balancer.movedWinWidth = 5400000 (default=5400000)
2023-03-26 14:10:10,392 INFO balancer.Balancer: dfs.balancer.moverThreads = 1000 (default=1000)
2023-03-26 14:10:10,392 INFO balancer.Balancer: dfs.balancer.dispatcherThreads = 200 (default=200)
2023-03-26 14:10:10,392 INFO balancer.Balancer: dfs.balancer.getBlocks.size = 2147483648 (default=2147483648)
2023-03-26 14:10:10,392 INFO balancer.Balancer: dfs.balancer.getBlocks.min-block-size = 10485760 (default=10485760)
2023-03-26 14:10:10,392 INFO balancer.Balancer: dfs.datanode.balance.max.concurrent.moves = 100 (default=100)
2023-03-26 14:10:10,392 INFO balancer.Balancer: dfs.datanode.balance.bandwidthPerSec = 104857600 (default=104857600)
2023-03-26 14:10:10,395 INFO balancer.Balancer: dfs.balancer.max-size-to-move = 10737418240 (default=10737418240)
2023-03-26 14:10:10,395 INFO balancer.Balancer: dfs.blocksize = 134217728 (default=134217728)
2023-03-26 14:10:10,401 INFO net.NetworkTopology: Adding a new node: /default-rack/192.168.121.141:9866
2023-03-26 14:10:10,401 INFO net.NetworkTopology: Adding a new node: /default-rack/192.168.121.140:9866
2023-03-26 14:10:10,401 INFO net.NetworkTopology: Adding a new node: /default-rack/192.168.121.142:9866
2023-03-26 14:10:10,402 INFO balancer.Balancer: 0 over-utilized: []
2023-03-26 14:10:10,402 INFO balancer.Balancer: 0 underutilized: []
2023-3-26 14:10:10 0 0 B 0 B 0 B 0 hdfs://hadoop01:8020
The cluster is balanced. Exiting...
2023-3-26 14:10:10 Balancing took 810.0 milliseconds
[hadoopdeploy@hadoop01 ~]$

5、參考文檔

1、https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsUserGuide.html#Balancer
2、https://help.aliyun.com/document_detail/449686.html?

責(zé)任編輯:武曉燕 來(lái)源: 今日頭條
相關(guān)推薦

2023-04-03 06:57:38

DataNode工具命令行

2010-05-06 10:14:31

負(fù)載均衡器

2017-05-19 14:45:01

OVN負(fù)載均衡器路由器

2022-07-14 08:53:48

MetalLBkubernetes

2023-02-13 16:39:45

Kubernetes容器負(fù)載均衡器

2024-02-22 10:11:00

負(fù)載均衡器反向代理

2010-04-22 10:46:40

Lvs負(fù)載均衡故障負(fù)載均衡器

2010-05-10 18:22:51

負(fù)載均衡器

2024-06-18 08:14:21

2010-05-10 14:13:26

2010-04-20 10:46:59

什么是負(fù)載均衡器

2010-07-15 11:16:04

負(fù)載均衡

2010-05-05 19:05:03

負(fù)載均衡器會(huì)話(huà)保持

2013-05-23 15:31:36

負(fù)載均衡

2010-04-28 17:01:30

Apusic負(fù)載均衡器

2010-03-24 10:35:02

Nginx負(fù)載均衡器

2020-12-14 10:15:03

負(fù)載均衡器Linux服務(wù)器

2010-04-22 10:36:06

負(fù)載均衡器

2010-04-22 10:09:28

負(fù)載均衡器

2010-05-10 14:05:31

負(fù)載均衡器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)