Untitled2

[Mac] Hadoop / HBaseのセットアップ

[Mac] Hadoop / HBaseのセットアップHadoopとHBaseのインストールから疑似分散設定までの控え。

【サマリ】

  1. ターミナルでJavaのバージョンを確認し、1.6未満ならソフトウェアアップデートの必要があります。※OS10.4以上
  2. インストールするhadoopとhbaseをダウンロードし適当なフォルダ(例:~/work)に解凍。使い易いようにシンボリックリンクを作成し、hadoopとhbaseにlogフォルダを用意。
  3. Hadoopの設定(vi を利用)
  4. localhostにSSHでログイン、パスワードが必要なようならRSA keyを作成
  5. namenodeをフォーマットしhadoopを起動。ウェブインターフェースの確認とサンプルプログラムを実行。
    • Hadoop Namenode web interface
    • http://localhost:50070/
    • Hadoop JobTracker Web Interface
    • http://localhost:50030/
  6. HBaseの設定と起動
  7. 終了

【環境と素材】

  • Mac OS X 10.6.7
  • java version "1.6.0_17"
  • .bash_profile
    • JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
    • PATH=$JAVA_HOME/bin:$PATH
    • PATH=$PATH:/Applications/android-sdk/tools
  • システム環境設定>共有>リモートログインにチェック
  • Hadoop hadoop-0.20.2.tar.gz
  • HBase hbase-0.20.6.tar.gz

【ターミナル】

1)
java -version
 java version "1.6.0_17"


2)
mkdir -p ~/work
mkdir -p ~/work/pkgs
cd ~/work/pkgs
tar xvzf hadoop-0.20.2.tar.gz
tar xvzf hbase-0.20.3.tar.gz
cd ..
ln -s ~/work/pkgs/hadoop-0.20.2 hadoop
ln -s ~/work/pkgs/hbase-020.3 hbase
mkdir -p ~/work/hadoop/logs
mkdir -p ~/work/hbase/logs


3)
sudo vi ~/work/hadoop/conf/hadoop-env.sh
  export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home


sudo vi ~/work/hadoop/conf/core-site.xml
<?xml version="1.0"?>

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

<configuration>
  <property>
    <name>
fs.default.name</name>
    <value>
hdfs://localhost:9000</value>
  </property>

</configuration>

sudo vi ~/work/hadoop/conf/hdfs-site.xml
<?xml version="1.0"?>

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

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

</configuration>

sudo vi ~/work/hadoop/conf/mapred-site.xml


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

<configuration>
  <property>
    <name>
mapred.job.tracker</name>
    <value>
localhost:9001</value>
  </property>

</configuration>


4)
ssh localhost
ssh-keygen
     Enter file in which to save the key (/Users/egyo/~/.ssh/id_rsa)
     Enter passphrase (empty for no passphrase)
     Enter same passphrase again
cd .ssh
cat id_rsa.pub >> authorized_keys


5)
cd ~/work/hadoop/
~/work/hadoop/bin/hadoop namenode -format
~/work/hadoop/bin/start-all.sh
~/work/hadoop/bin/hadoop jar hadoop-0.20.2-examples.jar pi 10 100000
  →  Estimated value of Pi is 3.14155200000000000000
~/work/hadoop/bin/stop-all.sh
exit


6)
sudo vi ~/work/hbase/conf/hbase-env.sh
  export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
  export HBASE_CLASSPATH=${HOME}/work/hadoop/conf
sudo vi ~/work/hbase/conf/hbase-site.xml


<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>
hbase.rootdir</name>
    <value>
hdfs://localhost:9000/hbase</value>
    <description>
The directory shared by region servers.
    </description>

  </property>

</configuration>

~/work/hbase/bin/hbase shell
exit


7)
~/work/hadoop/bin/stop-all.sh

インストールまでの操作はRuna Inc CEO Robさんのブログに書かれている通りできましたが、始めにダウンロードした「hadoop-0.21.0」では、mapred-site.xmlに改行があることで、namenodeが立ち上がらない、「hadoop-0.20.2」でも/private/tmp/hadoop-user/dfs/nameが見つからない「FSNamesystem: FSNamesystem initialization failed.」というエラーが発生しました。

以上。

参考サイトさま
HBase/Hadoop on Mac OS X
Apache > Hadoop > Core > common > docs > r0.20.2 Quick Start
Hadoop 擬似分散環境
org.apache.hadoop.hdfs.server.namenode.FSNamesystem: FSNamesystem initialization failed./private/tmp/hadoop-user/dfs/name

About the author
  • コメントを残す