一 、修改传输配置
1、修改hdfs-site.xml文件
vim $HADOOP_HA_HOME/etc/hadoop/hdfs-site.xml
<property>
<name>dfs.balance.bandwidthPerSec</name>
<value>20971520</value>
</property>
或
hdfs dfsadmin -setBalancerBandwidth 67108864
1M/S
:1048576
20M/S
:20971520
64M/S
:67108864
运行脚本
# 启动数据平衡,阈值 5%
$HADOOP_HOME/sbin/start-balancer.sh –threshold 5
停止数据平衡
$Hadoop_home/sbin/stop-balancer.sh
在任意节点上使用如下命令进行集群数据均衡,各个节点的磁盘空间利用率相差不超过5%
hadoop balancer -Threshold 5
结束均衡
1、查看均衡器进程
ps -aux | grep '\-Dproc_balancer'
kill -9 进程号
2、
rm -rf /tmp/hdfs-balancer.lock
hdfs hdfs dfsadmin -report | cat <(echo "Name: Total") - |grep '^\(Name\|Total\|DFS Used\)' | tr '\n' '\t' | sed -e 's/\(Name\)/\n\1/g' | sort --field-separator=: --key=5,5n
或者[先切换到hdfs用户]
$ hdfs dfsadmin -report | cat <(echo “Name: Total”) - |grep ‘^(Name|Total|DFS Used)’ | tr ‘\n’ ‘\t’ | sed -e ‘s/(Name)/\n\1/g’ | sort --field-separator=: --key=5,5n
<h2><a id="__0"></a>一 、修改传输配置</h2>
<p>1、修改hdfs-site.xml文件</p>
<pre><div class="hljs"><code class="lang-shell">vim $HADOOP_HA_HOME/etc/hadoop/hdfs-site.xml
</code></div></pre>
<pre><div class="hljs"><code class="lang-xml"><span class="hljs-comment"><!-- 均衡速度20M/S --></span>
<span class="hljs-tag"><<span class="hljs-name">property</span>></span>
<span class="hljs-tag"><<span class="hljs-name">name</span>></span>dfs.balance.bandwidthPerSec<span class="hljs-tag"></<span class="hljs-name">name</span>></span>
<span class="hljs-tag"><<span class="hljs-name">value</span>></span>20971520<span class="hljs-tag"></<span class="hljs-name">value</span>></span>
<span class="hljs-tag"></<span class="hljs-name">property</span>></span>
</code></div></pre>
<p>或</p>
<pre><div class="hljs"><code class="lang-shell">hdfs dfsadmin -setBalancerBandwidth 67108864
</code></div></pre>
<p><code>1M/S</code>:1048576<br />
<code>20M/S</code>:20971520<br />
<code>64M/S</code>:67108864</p>
<p>运行脚本</p>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">启动数据平衡,阈值 5%</span>
<span class="hljs-meta">$</span><span class="language-bash">HADOOP_HOME/sbin/start-balancer.sh –threshold 5</span>
</code></div></pre>
<p>停止数据平衡</p>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta">$</span><span class="language-bash">Hadoop_home/sbin/stop-balancer.sh</span>
</code></div></pre>
<p>在任意节点上使用如下命令进行集群数据均衡,各个节点的磁盘空间利用率相差不超过5%</p>
<pre><div class="hljs"><code class="lang-shell">hadoop balancer -Threshold 5
</code></div></pre>
<p><strong>结束均衡</strong><br />
1、查看均衡器进程</p>
<pre><div class="hljs"><code class="lang-shell">ps -aux | grep '\-Dproc_balancer'
</code></div></pre>
<pre><div class="hljs"><code class="lang-shell">kill -9 进程号
</code></div></pre>
<p>2、<br />
rm -rf /tmp/hdfs-balancer.lock</p>
<h3><a id="_58"></a></h3>
<pre><div class="hljs"><code class="lang-shell">hdfs hdfs dfsadmin -report | cat <(echo "Name: Total") - |grep '^\(Name\|Total\|DFS Used\)' | tr '\n' '\t' | sed -e 's/\(Name\)/\n\1/g' | sort --field-separator=: --key=5,5n
</code></div></pre>
<p>或者[先切换到hdfs用户]<br />
$ hdfs dfsadmin -report | cat <(echo “Name: Total”) - |grep ‘^(Name|Total|DFS Used)’ | tr ‘\n’ ‘\t’ | sed -e ‘s/(Name)/\n\1/g’ | sort --field-separator=: --key=5,5n</p>
留言