誰でもこのコマンドの使い方を精巧に説明できますか?私クラスタ内のHadoop Balancerのパラメータに疑問がある
hdfs balancer [-source [-f <hosts-file> | <comma-separated list of hosts>]]
問題は、私のデータノードの一つがその容量のブロックプールの93%を利用され、残りは< 80%を使用していることです。 HortonWorksのドキュメントから
誰でもこのコマンドの使い方を精巧に説明できますか?私クラスタ内のHadoop Balancerのパラメータに疑問がある
hdfs balancer [-source [-f <hosts-file> | <comma-separated list of hosts>]]
問題は、私のデータノードの一つがその容量のブロックプールの93%を利用され、残りは< 80%を使用していることです。 HortonWorksのドキュメントから
:
新しい-sourceオプションがBalancerはのみdatanodesから移動するブロックを選択するようにソースデータノードのリストを指定することができます。リストが空の場合、すべてのデータノードをソースとして選択できます。デフォルト値は空のリストです。
このオプションを使用して、クラスタ内の特定のデータノードのスペースを解放することができます。 -sourceオプションを指定しないと、バランサは非効率的になることがあります。以下は例です。
Datanodes (with the same capacity) Utilization Rack
D1 95% A
D2 30% B
D3, D4, D5 0% B
上記の表では、D2が10%のしきい値内になるように平均利用率が25%です。 D2との間でブロックを移動する必要はありません。ソースノードを指定しないと、バランサはまずブロックをD2からD3、D4、D5に移動します。これらは同じラックの下にあるため、ブロックをD1からD3、D4、D5に移動します。ソースノードとしてD1を指定すると、BalancerはブロックをD1からD3、D4、D5に直接移動します。
これはHDFS Balancerの2番目の記事です。次の記事でクラスタのバランスを取るためにBalancerによって配備されたアルゴリズムについて説明します。
次のコマンドを使用している間: "hdfs balancer -source CDCUEXDB05"エラーが発生しました:17/11/30 19:30:23エラーbalancer.Balancer:例外によるバランサの終了 java.lang.IllegalArgumentException:args = [-source 、CDCUEXDB05] at org.apache.hadoop.hdfs.server.balancer.Balancer $ Cli.parse(Balancer.java:1600) at org.apache.hadoop.hdfs.server.balancer.Balancer $ Cli.run(バランサ.java:1556) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) at org.apache.hadoop.hdfs.server.balancer.Balancer.main(Balancer.java:1628) –
Node1(使用済み)からのデータをリダイレクトする場合は、ロードバランサ要求の送信元を選択する必要があります。 – Ko2r