5

Hadoop DFS の構成済み容量をデフォルトの 50GB から 100GB に増やすにはどうすればよいですか?

私の現在のセットアップは、120GB の 450GB が使用された centOS6 マシンで実行されている hadoop 1.2.1 です。「Hadoop the Definitive Guide 3'rd」で提案されている /conf を使用して、hadoop を psudodistributed モードに設定しました。hdfs-site.xml には、構成されたプロパティが 1 つしかありませんでした。

   <configuration>
    <property>
         <name>dfs.replication</name>
         <value>1</value>
     </property>
 </configuration>

次の行はエラー フィードバックを返しませんでした... プロンプトに戻ります。

hadoop dfsadmin -setSpaceQuota 100g  /tmp/hadoop-myUserID

私が再生成ループにいる場合(実行した

 rm -rf /tmp/hadoop-myUserId  

「ゼロから始める」試みで) setSpaceQuota のこのように見える成功は、私が実行した場合にのみ発生します。

  start-all.sh
  hadoop namenode -format

私の dfs 容量構成の失敗は、次のように表示されます。

 hadoop dfsadmin -report

これは、同じ 50 GB の構成済み容量を示しています。

Hadoop 2.2 (現在は安定版リリース) が 100 GB の hdfs 構成容量を取得するための現在の最良の方法である場合は、喜んで Hadoop 2.2 に切り替えます。hdfs-site.xml の構成プロパティが必要なようです。これにより、空きパーティションをより多く使用できるようになります。

4

2 に答える 2

5

hdfs の場所を空き容量の多いパーティションに設定します。hadoop-1.2.1 の場合、これは hadoop-1.2.1/conf/core-site.xml で hadoop.tmp.dir を設定することで実行できます。

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>
   <property>
      <name>fs.default.name</name>
     <value>hdfs://localhost:9000</value>
     </property>
   <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/myUserID/hdfs</value>
    <description>base location for other hdfs directories.</description>
   </property>
</configuration>

ランニング

df

私の _home パーティションは私のハードディスクで、 /
( _root) パーティションの 50GB を差し引いたものだと言いました。hdfs のデフォルトの場所は、/ パーティションにある /tmp/hadoop-myUserId です。これが、最初の 50GB hdfs サイズの由来です。

hdfs のディレクトリのパーティションの場所の作成と確認は、

mkdir ~/hdfs
df -P ~/hdfs | tail -1 | cut -d' ' -f 1

成功した実装はによって達成されました

stop-all.sh
start-dfs.sh
hadoop namenode -format
start-all.sh
hadoop dfsadmin -report

これは、hdfs のサイズを _home パーティションのサイズとして報告します。

コメント/手がかりをありがとうjtravaglini。

于 2013-10-25T12:22:27.900 に答える