チラシの裏の設計書

プログラム開発、データ分析からロボット作りまでものづくり全般を思うがままに書き連ねたブログ。

CentOSにHadoopメモ

いろんなところにメモブログやメモwikiを作りすぎてアウトプット先が分散してしまっているので徐々にここのブログに集めていきます。

過去にCentOS7にHadoop(1系)をセットアップしたときの個人用メモなので、古かったり間違ってたりするかもしれませんが、記録として載せておきます。

 

javaインストール

rpm -ivh jdk-8u25-linux-x64.rpm
 
java -version
#うごくね
 
sudo rpm -ivh hadoop-1.2.1-1.x86_64.rpm --force
#依存性無視インストール、いいのかどうか。
 
#ファイルをなんか用意して
hadoop jar /usr/share/hadoop/hadoop-examples-1.0.4.jar wordcount input output
#ワードカウントを実行
 
/etc/hadoop/mapred-site.xml
#へ
<property>
<name>io.sort.mb</name>
<value>10</value>
</property>
 
#を追加。
 
#これで動いた。スタンドアロンモードだけど。
 
 
ここから擬似分散モードへ拡張
 
/etc/ssh/sshd_config
#の48付近
PermitRootLogin no
#へ
 
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
 
#> 追記:
#> RSAにしようね
#> ssh-keygen -t rsa
 
#パスワードなしでログインできるように
 
#再起動して有効に
systemctl restart sshd
 
 
hadoop設定再び
 
/etc/hadoop/core-site.xml
#にhdfs領域のパス書く
 
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/hadoop</value>
  </property>
 <property>
  <name>fs.default.name</name>
  <value>hdfs://localhost:9000</value>
 </property>
 
#/hadoopにした chmod 777 にしとく
 
hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
 
mapred-site.xml
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
 
#そしたらhadoopデーモン起動(か再起動)
#初回は
/etc/init.d/hadoop-namenode format
#次回以降はフォーマットなし
 
#再起動用スクリプト作っとく
/etc/init.d/hadoop-tasktracker stop
/etc/init.d/hadoop-jobtracker stop
/etc/init.d/hadoop-datanode stop
/etc/init.d/hadoop-namenode stop
/etc/init.d/hadoop-namenode start
/etc/init.d/hadoop-datanode start
/etc/init.d/hadoop-jobtracker start
/etc/init.d/hadoop-tasktracker start
 
hadoop fs -ls #でエラーでないか
hadoop fs -put /var/log/dmesg input #でエラーでないか 追加されたか
#あ、だめかも
 
#hdfsユーザが作られてるのでまずパスワード設定
sudo passwd hdfs
 
hadoop fs -chmod 777 /  
#でだれでも書き込めるようにしておく
 
#(hdfsユーザじゃないとできないかも)
 
#ワードカウント実験用
hadoop fs -rmr output
hadoop jar /usr/share/hadoop/hadoop-examples-1.2.1.jar wordcount input output
hadoop fs -cat output/part-r-00* | sort -t $'\t' -n -k2,2 -r > out.csv
 
#単語出現数順に並べてローカルにもってきた。
at      10
not     9
root    7
Host    4
 
#こんな感じになってれば成功。
 
追加
mapとreduceの数を調整
mapred-site.xml
 
  <property>
    <name>mapred.map.tasks</name>
    <value>3</value>
  </property>
  <property>
    <name>mapred.reduce.tasks</name>
    <value>3</value>
  </property>
  <property>
    <name>mapred.tasktracker.map.tasks.maximum</name>
    <value>3</value>
  </property>
  <property>
    <name>mapred.tasktracker.reduce.tasks.maximum</name>
    <value>3</value>
  </property>
追記
 
R
#依存性やらなんやらでrpmいれれなかったのでtar.gzから入れてみる
#R-3.1.1.tar.gz を解凍して
/opt/R 
#で
./configure #実行してエラーになるので
./configure --with-x=no --with-readline=no
#して
make
#して
make install
 
#ふぅ。
 
 
        yum -y install vim-enhanced