Hadoop/VMware
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
]
開始行:
[[Hadoop]]
#contents
* Hadoop/VMware [#eb81870e]
Hadoopの環境をVMwareイメージ(OS:CentOS5.5-x86_64)上に作...
~VMware playerの詳細については[[VMware Player に関する FA...
~
:Note|本手順ではHadoopテスト環境を構築しHDFS、MapReduceの...
* Hadoop について [#u4c3fd3b]
Hadoopは大規模分散システムのOpen Source Projectの1つです...
~
またMapReduceはMap処理、Shuffle&Sort処理、Reduce処理に分...
~
ただし大量の小さいファイルの書き込みやファイルの更新には...
~
HadoopのソフトウェアはCommon、HDFS、MapReduceから構成され...
|名称|役割|Master|Slave|h
|HDFS|Hadoop Distributed File System の略称、分散、複製の...
|MapReduce|大規模分散システム上でのプロセス並列化のフレー...
~
HDFS、MapReduceそれぞれのノードについての名称と概略を以下...
- HDFS~
|名称|概略|Master or Slave|h
|NameNode|DataNode上の情報をメタデータで管理、複製の配置...
|DataNode|実データの保存、状態の報告|Slave|
|Secondarynamenode|障害対策の1つ、一定の間隔でNamenodeの...
:Note|本手順では実行していませんがHadoopではMasterが単一...
~
- MapReduce~
|名称|概略|Master or Slave|h
|JobTracker|jobの受付、処理の割当、管理|Master|
|TaskTracker|JobTrackerから割当てられた処理を実行するワー...
~
それぞれの詳細については[[Common>http://hadoop.apache.org...
~
また動作モードとしてローカルモード、擬似分散モード(pseudo...
|名称|概略|h
|ローカルモード|1台での実行、Hadoopとしての機能は使わずJa...
|擬似分散モード|1台でMasterとSlaveの実行|
|完全分散モード|複数台でMasterとSlaveの実行|
各動作モードの詳細については[[Getting Started>http://hado...
** CDHについて [#vce83e19]
CDHはCloudera社提供されている『Cloudera Distribution for ...
~
本手順ではCDH3beta4(2011年4月1日当時の最新)で記載してい...
*** Hadoopのバージョンについて [#c390c224]
CDH3beta4に含まれるhadoop-0.20.2を使用しています。また[[h...
~
* Hadoop/VMwareについて[#uab5ce76]
VMware Player3.1.4 build-385536の仮想マシン上にCentOS5.5-...
:Note|本手順でのHadoopと主要コンポーネントとはCommon、HDF...
また今回は使用していませんが、Cloudera社からVMwareイメー...
* VMware Settings [#o828e939]
** VMware Hardware Settings [#m484df54]
VMware ハードウェア構成は以下のように設定しています。~
CPU:2
Memory:1GB
HDD:20GB(split 2GB、事前にGB使用しています。)
Network:bridge
主なアカウント情報を以下に記載します。~
ユーザー :beat
パスワード :beatcraft
rootパスワード :beatcraft
** Install Centos5.5-x86_64 [#w03f2248]
- インストール設定~
このVMイメージではほぼデフォルト設定のままインストールし...
日本語、日本語キーボードを選択しネットワークはDHCP、IPv4e...
- rootのパスワードは『beatcraft』としています。~
- インストールパッケージ~
インストールパッケージはSERVERを選択しカスタムをし、以下...
『Base、DevelopmentTools、Editors、FTP Server、Legacy Ne...
Internet、Web Server、Windows File Server』
~
Firewall SELinux は共にDisableに設定しています。その他はH...
** Update [#t9aee4b5]
インストール完了後、アップデートを実行します。~
# yum install yum-fastestmirror (導入されていますがリポ...
...<略>
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: www.ftp.ne.jp
* extras: www.ftp.ne.jp
* updates: www.ftp.ne.jp
# yum update
** ntpの設定 [#l6d47b36]
標準インストールで日本時間を選んでも正しい時刻を取得でき...
# yum install ntp (注:ntpがインストールされていない場...
# date
# ntpdate -s ntp.nict.jp
# clock -w
ntp/step-tickersに以下の3つの国内ntpサーバを追加します。~
# vi /etc/ntp/step-tickers
ntp.nict.jp
ntp.jst.mfeed.ad.jp
ntp.ring.gr.jp
完了後ntpを再起動し、時刻の確認をします。あわせてサービス...
# /etc/init.d/ntpd restart
# date
# chkconfig ntpd on
:Note|標準インストールで日本時間を選んでも正しい時刻を取...
** 環境変数設定 [#dbd80223]
予め/etc/bashrcにJAVA_HOME、HADOOP_HOMEとPATHに/sbin、/us...
# tail -n 5 /etc/bashrc
fi
# vim:ts=4:sw=4
export JAVA_HOME=/usr/java/latest
export HADOOP_HOME=/usr/lib/hadoop
export PATH=/sbin:/usr/sbin:$HADOOP_HOME/bin:$PATH
:Note|JAVAの実行時およびHadooのサービス起動時および実行時...
** ユーザ追加とvisudo設定 [#x6bdd6f9]
一般ユーザにbeatとhadoopを追加します。beatは一般ユーザ用...
- beatユーザの作成~
useraddコマンドとpasswdコマンドでbeatユーザ、パスワードbe...
# useradd beat
# passwd beat
- visudo設定~
sudoコマンドを実行できるユーザにbeatとhdfsユーザを追加し...
# visudo
...<略>
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
beat ALL=(ALL) ALL
hdfs ALL=(ALL) ALL
- hadoopユーザの作成~
useraddコマンドとpasswd -d コマンドでhadoopユーザ、パス...
# useradd hadoop
# passwd -d hadoop
beatユーザからhadoopユーザへの切り替え
$ su hadoop
** SSH設定 [#d3cb99e0]
本VMwareイメージではrootでのログイン許可をしています。ま...
- hadoopユーザの鍵作成~
ssh-keygenコマンドで鍵タイプrsa、パスワードなしのrsa鍵を/...
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
Generating public/private rsa key pair.
Created directory '/home/hadoop/.ssh'.
Your identification has been saved in /home/hadoop/.ssh/...
Your public key has been saved in /home/hadoop/.ssh/id_r...
The key fingerprint is:
xx:xx:xx:zz:zz:<略>:xx hadoop@localhost.localdomain
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
- sshd設定~
擬似分散モードや別マシンからのログインするためにsshd_conf...
rootでのログイン許可、RSA認証許可、公開鍵認証許可、空パス...
適宜設定を変更してください。~
# vi /etc/ssh/sshd_config
#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
# For this to work you will also need host keys in /etc/...
#RhostsRSAAuthentication no
# similar for protocol version 2
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# RhostsRSAAuthentication and HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes
# To disable tunneled clear text passwords, change to no...
#PasswordAuthentication yes
PermitEmptyPasswords yes
PasswordAuthentication yes
**JDKのインストール [#l36907f3]
JDKのインストールをします。以下のサイトから最新版JDK (jdk...
http://www.oracle.com/technetwork/java/javase/downloads/i...
$ mkdir jdk
$ cd jdk/
$ ls
jdk-6u24-linux-x64-rpm.bin
$ chmod +x jdk-6u24-linux-x64-rpm.bin
$ su
パスワード:
# ./jdk-6u24-linux-x64-rpm.bin
Unpacking...
Checksumming...
Extracting...
<略>
# ls -l /usr/java/
合計 4
lrwxrwxrwx 1 root root 16 4月 12 13:03 default -> /us...
drwxr-xr-x 9 root root 4096 4月 12 13:03 jdk1.6.0_24
lrwxrwxrwx 1 root root 21 4月 12 13:03 latest -> /usr...
/etc/bashrcで設定したJAVA_HOMEとディレクトリ位置があって...
# tail -n 5 /etc/bashrc
fi
# vim:ts=4:sw=4
export JAVA_HOME=/usr/java/latest
export HADOOP_HOME=/usr/lib/hadoop
export PATH=/sbin:/usr/sbin:$HADOOP_HOME/bin:$PATH
** 不要なサービスの停止と起動について [#u4fe3462]
不要なサービスの停止をします。起動しているサービス一覧を...
# chkconfig --list
NetworkManager 0:off 1:off 2:off 3:off 4:off ...
acpid 0:off 1:off 2:on 3:on 4:on ...
anacron 0:off 1:off 2:on 3:on 4:on ...
atd 0:off 1:off 2:off 3:on 4:on ...
auditd 0:off 1:off 2:on 3:on 4:on ...
...<略>
sendmail 0:off 1:off 2:on 3:off 4:on ...
...<略>
サービスの停止、起動の書式については chkconfig --level <n...
- サービスの確認~
# chkconfig --list
...<略>
iptables 0:off 1:off 2:on 3:on 4:on ...
- iptablesをoffに設定~
# chkconfig iptables off
- 再度サービスの確認~
# chkconfig --list
iptables 0:off 1:off 2:off 3:off 4:off ...
以上でCentOS上での基本的な設定は完了です。~
** CentOS-5.5-x86_64設定の制限事項 [#idc0d456]
- 本VMwareイメージでは意識してセキュリティに関する事象を...
* CDH3beta4 [#x584f3d8]
** CDH3beta4のインストール [#n16b2d43]
CDH3beta4のリポジトリを追加しCDHを導入します。以下のよう...
# vi /etc/yum.repos.d/cloudera-cdh3.repo
[cloudera-cdh3]
name=Cloudera's Distribution for Hadoop, Version 3
mirrorlist=http://archive.cloudera.com/redhat/cdh/3/mirr...
gpgkey = http://archive.cloudera.com/redhat/cdh/RPM-GPG-...
gpgcheck = 0
リポジトリを追加後yumの更新をします。~
# yum update yum
** Install Hadoop [#gb08de57]
Hadoopの主要コンポーネントと擬似分散モード用設定のインス...
yum searchコマンドを使って、Hadoop-0.20.2に対応する主要コ...
# yum install hadoop-0.20 hadoop-0.20-namenode hadoop-0....
0.20-secondarynamenode hadoop-0.20-jobtracker hadoop-0.2...
0.20-conf-pseudo -y
各コンポーネントの関係を以下に記載します。~
|名称|HDFS or MapReduce|Master or Slave|概略|h
|hadoop-0.20-namenode|HDFS|Master|DataNode上の情報をメタ...
|hadoop-0.20-datanode|HDFS|Slave|実データの保存、Namenode...
|hadoop-0.20-secondarynamenode|HDFS|Master|障害対策の1つ...
|hadoop-0.20-jobtracker|MapReduce|Master|jobの受付、処理...
|hadoop-0.20-tasktracker|MapReduce|Slave|JobTrackerから割...
~
hadoopをインストール完了後、mapred,hdfsユーザが追加されて...
またCDH3beta4を導入した際、作成していたhadoopユーザがhdfs...
# tail -n 4 /etc/passwd
beat:x:500:500::/home/beat:/bin/bash
ntp:x:38:38::/etc/ntp:/sbin/nologin
mapred:x:101:157:Hadoop MapReduce:/usr/lib/hadoop-0.20:/...
hdfs:x:501:501:Hadoop HDFS:/home/hadoop:/bin/bash
** hadoop-0.20-confの切り替えについて [#l6d6d49a]
Hadoopの動作モードにはローカルモード、擬似分散モード、完...
~
hadoopでは/etc/hadoop-0.20/以下にconf、conf.empty、conf.p...
~
ここではローカルモード用の設定conf.localと完全分散用の設...
~
設定の切り替えにはalternativesを実行し切り替えを行います...
# cd /etc/hadoop-0.20/
# ls -l
合計 8
lrwxrwxrwx 1 root root 34 4月 12 13:14 conf -> /etc/a...
drwxr-xr-x 2 root root 4096 4月 12 13:14 conf.empty
drwxr-xr-x 2 root root 4096 4月 12 13:14 conf.pseudo
# cp -r conf.empty conf.local
# cp -r conf.empty conf.bc_cluster
- hadoop-0.20-confの設定確認 ~
alternatives --displayコマンドで現在のhadoop-0.20-confのs...
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf -ステータスは自動です。
リンクは現在 /etc/hadoop-0.20/conf.pseudo を指しています。
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
現在の「最適」バージョンは /etc/hadoop-0.20/conf.pseudo ...
- 設定変更例~
conf.bc_clusterの優先度を60と設定しconf.bc_clusterがhadoo...
alternatives --installコマンドで設定を変更し、再度hadoop-...
確認します。~
# alternatives --install /etc/hadoop-0.20/conf hadoop-0....
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf -ステータスは自動です。
リンクは現在 /etc/hadoop-0.20/conf.bc_cluster を指してい...
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
/etc/hadoop-0.20/conf.bc_cluster - 優先項目 60
現在の「最適」バージョンは /etc/hadoop-0.20/conf.bc_clus...
:Note|使用法は『 alternatives --install <リンク> <名前> <...
~
本VMwareイメージではローカルモードはconf.localを使用しま...
# alternatives --set hadoop-0.20-conf /etc/hadoop-0.20/c...
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf - ステータスは手動です。
リンクは現在 /etc/hadoop-0.20/conf.local を指しています。
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
...<略>
* ローカルモード [#b7f344ff]
1台で擬似的なmaster、slaveを設定せずにMapReduceのアプリケ...
** conf.localの設定 [#q5df15bd]
ローカルモード用のconf.localに必要な設定を記載します。
- hadoop-env.sh~
Hadoopの環境変数設定が記載されているファイルです。HADOOP_...
またHadoopのheapサイズはデフォルトの1000MBのまま変更して...
# tail -n 5 hadoop-env.sh
...<略>
# A string representing this instance of hadoop. $USER b...
export HADOOP_IDENT_STRING=bclocal
# The scheduling priority for daemon processes. See 'ma...
# export HADOOP_NICENESS=10
- core-site.xml~
core-site.xmlにはHadoopの共通設定を記載します。hadoop.tmp...
適宜変更してください。~
# cat core-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl...
<!-- Put site-specific property overrides in this file. ...
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<!-- Local Disk Directory for hadoop dat...
<value>/tmp/hadooplocal</value>
<!-- its value -->
</property>
</configuration>
- hdfs-site.xml~
dfs-site.xmlにはHDFSに関する設定を記載するふぁいるです。...
- mapred-site.xml ~
mapred-site.xmlはMapReduceに関する設定を記載しています。...
# cat mapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl...
<!-- Put site-specific property overrides in this file. ...
<configuration>
<property>
<name>mapreduce.jobtracker.address</name>
<!-- JobTracker Address -->
<value>local</value>
<!-- its value -->
</property>
</configuration>
- hadoop.tmp.dirの作成 ~
上記で設定したhadoop.tmp.dir(/tmp/hadooplocalと設定)を...
# cd tmp/
# mkdir hadooplocal
# chmod -R 777 hadooplocal/
- HADOOP_CLASSPATHの設定
ローカルモードとして動作するための設定をします。ローカル...
# su hdfs
$ export HADOOP_CLASSPATH=/usr/lib/hadoop-0.20/
** Examplesの実行 [#n99b3937]
hadoop-0.20.2-CDH3B4-examples.jarを実行します。この際にja...
$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-0.20.2-CDH...
An example program must be given as the first argument.
Valid program names are:
aggregatewordcount: An Aggregate based map/reduce progr...
...<略>
hadoop-0.20.2-CDH3B4-examples.jarに含まれるpiを実行します...
$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-0.20.2-CDH...
Number of Maps = 10
Samples per Map = 100
11/04/12 17:20:07 WARN util.NativeCodeLoader: Unable to ...
Wrote input for Map #0
...<略>
11/04/12 17:20:12 INFO mapred.JobClient: SPLIT_RAW_B...
11/04/12 17:20:12 INFO mapred.JobClient: Reduce inpu...
Job Finished in 4.704 seconds
Estimated value of Pi is 3.14800000000000000000
以上でローカルモードの動作確認は終了です。
* 擬似分散モード [#z04f2d8e]
1台のVMwareイメージ上で擬似的にMasterとSlaveを設定しそれ...
# yum install w3m -y
** hadoop-0.20-confの切り替え [#ca4ffd4d]
ローカルモード後に実行する場合は擬似分散モードへhadoop-0....
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf - ステータスは手動です。
リンクは現在 /etc/hadoop-0.20/conf.local を指しています。
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
/etc/hadoop-0.20/conf.bc_cluster - 優先項目 60
/etc/hadoop-0.20/conf.local - 優先項目 60
現在の「最適」バージョンは /etc/hadoop-0.20/conf.bc_clus...
hadoop-0.20-confはconf.localに設定されていますので、先ほ...
# alternatives --set hadoop-0.20-conf /etc/hadoop-0.20/c...
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf - ステータスは手動です。
リンクは現在 /etc/hadoop-0.20/conf.pseudo を指しています。
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
/etc/hadoop-0.20/conf.bc_cluster - 優先項目 60
/etc/hadoop-0.20/conf.local - 優先項目 60
現在の「最適」バージョンは /etc/hadoop-0.20/conf.bc_clus...
** 擬似分散モード設定 [#dc555179]
conf.pseudoに既に設定値が記載されていますので、変更を加え...
# cd /etc/hadoop-0.20/conf.pseudo/
- hadoop-env.sh~
Hadoopの環境変数設定が記載されているファイルです。HADOOP_...
# tail -n 5 hadoop-env.sh
...<略>
# A string representing this instance of hadoop. $USER b...
export HADOOP_IDENT_STRING=bcpseudo
# The scheduling priority for daemon processes. See 'ma...
# export HADOOP_NICENESS=10
- core-site.xml ~
core-site.xmlにはHadoopの共通設定を記載します。core-site....
# cat 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:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/var/lib/hadoop-0.20/cache/${user.name}</val...
</property>
<!-- OOZIE proxy user setting -->
<property>
<name>hadoop.proxyuser.oozie.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.oozie.groups</name>
<value>*</value>
</property>
</configuration>
- hdfs-site.xml~
hdfs-site.xmlにはHDFSに関する設定を記載します。擬似分散モ...
# cat 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>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
<property>
<!-- specify this so that running 'hadoop namenode ...
<name>dfs.name.dir</name>
<value>/var/lib/hadoop-0.20/cache/hadoop/dfs/name</...
</property>
<!-- Enable Hue Plugins -->
<property>
<name>dfs.namenode.plugins</name>
<value>org.apache.hadoop.thriftfs.NamenodePlugin</va...
<description>Comma-separated list of namenode plug-i...
</description>
</property>
<property>
<name>dfs.datanode.plugins</name>
<value>org.apache.hadoop.thriftfs.DatanodePlugin</va...
<description>Comma-separated list of datanode plug-i...
</description>
</property>
<property>
<name>dfs.thrift.address</name>
<value>0.0.0.0:10090</value>
</property>
</configuration>
- mapred-site.xml
mapred-site.xmlはMapReduceに関する設定を記載しています。m...
# cat mapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl...
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:8021</value>
</property>
<!-- Enable Hue plugins -->
<property>
<name>mapred.jobtracker.plugins</name>
<value>org.apache.hadoop.thriftfs.ThriftJobTrackerPl...
<description>Comma-separated list of jobtracker plug...
</description>
</property>
<property>
<name>jobtracker.thrift.address</name>
<value>0.0.0.0:9290</value>
</property>
</configuration>
** サービスの起動前に [#o543c7bc]
hdfsユーザに切り替え各サービスを起動する前に既に起動して...
# su hdfs
$ for service in /etc/init.d/hadoop-0.20-*; do sudo $ser...
*** HDFS Format [#g4eca100]
HDFSを正常に起動させるために、hdfsユーザでHDFSをFormatし...
$ sudo -u hdfs hadoop-0.20 namenode -format
11/04/12 18:55:07 INFO namenode.NameNode: STARTUP_MSG:
/*******************************************************...
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = localhost.localdomain/127.0.0.1
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 0.20.2-CDH3B4
STARTUP_MSG: build = -r 3aa7c91592ea1c53f3a913a581dbf...
********************************************************...
Re-format filesystem in /var/lib/hadoop-0.20/cache/hadoo...
11/04/12 18:55:09 INFO util.GSet: VM type = 64-bit
<略>
11/04/12 18:55:10 INFO common.Storage: Storage directory...
11/04/12 18:55:10 INFO namenode.NameNode: SHUTDOWN_MSG:
/*******************************************************...
SHUTDOWN_MSG: Shutting down NameNode at localhost.locald...
********************************************************...
** サービスの起動 [#w9ced8eb]
先ほど一括でサービスを停止したコマンドと同様に一括でサー...
$ for service in /etc/init.d/hadoop-0.20-*; do sudo $se...
Starting Hadoop datanode daemon (hadoop-datanode): start...
...
Starting Hadoop jobtracker daemon (hadoop-jobtracker): s...
...
Starting Hadoop namenode daemon (hadoop-namenode): start...
...
Starting Hadoop secondarynamenode daemon (hadoop-seconda...
...
Starting Hadoop tasktracker daemon (hadoop-tasktracker):...
...
各サービスごとの起動は以下のとおりです。~
- namenode(Master)~
$ sudo /etc/init.d/hadoop-0.20-namenode start
- datanode(Slave)~
$ sudo /etc/init.d/hadoop-0.20-datanode start
- jobtracker(Master)~
$ sudo /etc/init.d/hadoop-0.20-jobtracker start
- tasktracker(Slave)~
$ sudo /etc/init.d/hadoop-0.20-tasktracker start
起動後以下のURLでNameNodeとMap/Reduce AdministrationのWeb...
- NameNode ~
$ w3m http://localhost:50070
- Map/Reduce Administration~
$ w3m http://localhost:50070
** Examples [#oa6d340e]
ローカルモード同様、hadoop-0.20.2-CDH3B4-examples.jarを実...
$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-0.20.2-CDH...
An example program must be given as the first argument.
Valid program names are:
aggregatewordcount: An Aggregate based map/reduce progr...
...<略>
ローカルモードと同じExamplesのhadoop-0.20.2-CDH3B4-exampl...
$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-0.20.2-CDH...
Number of Maps = 10
Samples per Map = 100
Wrote input for Map #0
Wrote input for Map #1
Wrote input for Map #2
...<略>
11/04/12 19:55:03 INFO mapred.FileInputFormat: Total inp...
11/04/12 19:55:04 INFO mapred.JobClient: Running job: jo...
...<略>
11/04/12 19:55:51 INFO mapred.JobClient: Map output ...
11/04/12 19:55:51 INFO mapred.JobClient: SPLIT_RAW_B...
11/04/12 19:55:51 INFO mapred.JobClient: Reduce inpu...
Job Finished in 48.321 seconds
Estimated value of Pi is 3.14800000000000000000
この際Map/Reduce AdministrationのWebUI「Completed Jobs」...
#ref(localmapreduce.jpg);~
** サービスの停止 [#ka11513d]
一括でのサービス停止は以下のように実行します。~
$ for service in /etc/init.d/hadoop-0.20-*; do sudo $ser...
もしくは各サービスごとの停止は以下のとおりです。
- namenode(Master) ~
$ sudo /etc/init.d/hadoop-0.20-namenode stop
- datanode(Slave)~
$ sudo /etc/init.d/hadoop-0.20-datanode stop
- jobtracker(Master)~
$ sudo /etc/init.d/hadoop-0.20-jobtracker stop
- tasktracker(Slave)~
$ sudo /etc/init.d/hadoop-0.20-tasktracker stop
以上で擬似分散モードの動作確認は終了です。
* CDH3beta4:Hadoop関連プロジェクト [#qfd90596]
CDH3beta4ではHadoopの主要コンポーネントの他に以下のHadoop...
|コンポーネント名|パッケージ名|概略|参照URL|h
|Flume|Flume|データローディングインフラ|http://archive.cl...
|Sqoop|Sqoop|MySQLからHadoopへのデータインポートツール|ht...
|Hue|Hue|Hadoop User Experience(HadoopのUI)|http://archiv...
|Pig|hadoop-pig|データセットを探索するための対話的インタ...
|Hive|hadoop-hive|SQLライクな言語|http://hive.apache.org/|
|HBase|hadoop-hbase|Bigtable Storage System。HDFSとは逆に...
|ZooKeeper|hadoop-zookeeper|設定情報、名前付けなどの設定...
|Oozie server|Oozie|ワークフローエンジン|http://archive.c...
|Oozie client|oozie-client|ワークフローエンジン|http://ar...
|Whirr|Whirr|AmazonEC2のようなクラウドとの連携API|http://...
終了行:
[[Hadoop]]
#contents
* Hadoop/VMware [#eb81870e]
Hadoopの環境をVMwareイメージ(OS:CentOS5.5-x86_64)上に作...
~VMware playerの詳細については[[VMware Player に関する FA...
~
:Note|本手順ではHadoopテスト環境を構築しHDFS、MapReduceの...
* Hadoop について [#u4c3fd3b]
Hadoopは大規模分散システムのOpen Source Projectの1つです...
~
またMapReduceはMap処理、Shuffle&Sort処理、Reduce処理に分...
~
ただし大量の小さいファイルの書き込みやファイルの更新には...
~
HadoopのソフトウェアはCommon、HDFS、MapReduceから構成され...
|名称|役割|Master|Slave|h
|HDFS|Hadoop Distributed File System の略称、分散、複製の...
|MapReduce|大規模分散システム上でのプロセス並列化のフレー...
~
HDFS、MapReduceそれぞれのノードについての名称と概略を以下...
- HDFS~
|名称|概略|Master or Slave|h
|NameNode|DataNode上の情報をメタデータで管理、複製の配置...
|DataNode|実データの保存、状態の報告|Slave|
|Secondarynamenode|障害対策の1つ、一定の間隔でNamenodeの...
:Note|本手順では実行していませんがHadoopではMasterが単一...
~
- MapReduce~
|名称|概略|Master or Slave|h
|JobTracker|jobの受付、処理の割当、管理|Master|
|TaskTracker|JobTrackerから割当てられた処理を実行するワー...
~
それぞれの詳細については[[Common>http://hadoop.apache.org...
~
また動作モードとしてローカルモード、擬似分散モード(pseudo...
|名称|概略|h
|ローカルモード|1台での実行、Hadoopとしての機能は使わずJa...
|擬似分散モード|1台でMasterとSlaveの実行|
|完全分散モード|複数台でMasterとSlaveの実行|
各動作モードの詳細については[[Getting Started>http://hado...
** CDHについて [#vce83e19]
CDHはCloudera社提供されている『Cloudera Distribution for ...
~
本手順ではCDH3beta4(2011年4月1日当時の最新)で記載してい...
*** Hadoopのバージョンについて [#c390c224]
CDH3beta4に含まれるhadoop-0.20.2を使用しています。また[[h...
~
* Hadoop/VMwareについて[#uab5ce76]
VMware Player3.1.4 build-385536の仮想マシン上にCentOS5.5-...
:Note|本手順でのHadoopと主要コンポーネントとはCommon、HDF...
また今回は使用していませんが、Cloudera社からVMwareイメー...
* VMware Settings [#o828e939]
** VMware Hardware Settings [#m484df54]
VMware ハードウェア構成は以下のように設定しています。~
CPU:2
Memory:1GB
HDD:20GB(split 2GB、事前にGB使用しています。)
Network:bridge
主なアカウント情報を以下に記載します。~
ユーザー :beat
パスワード :beatcraft
rootパスワード :beatcraft
** Install Centos5.5-x86_64 [#w03f2248]
- インストール設定~
このVMイメージではほぼデフォルト設定のままインストールし...
日本語、日本語キーボードを選択しネットワークはDHCP、IPv4e...
- rootのパスワードは『beatcraft』としています。~
- インストールパッケージ~
インストールパッケージはSERVERを選択しカスタムをし、以下...
『Base、DevelopmentTools、Editors、FTP Server、Legacy Ne...
Internet、Web Server、Windows File Server』
~
Firewall SELinux は共にDisableに設定しています。その他はH...
** Update [#t9aee4b5]
インストール完了後、アップデートを実行します。~
# yum install yum-fastestmirror (導入されていますがリポ...
...<略>
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: www.ftp.ne.jp
* extras: www.ftp.ne.jp
* updates: www.ftp.ne.jp
# yum update
** ntpの設定 [#l6d47b36]
標準インストールで日本時間を選んでも正しい時刻を取得でき...
# yum install ntp (注:ntpがインストールされていない場...
# date
# ntpdate -s ntp.nict.jp
# clock -w
ntp/step-tickersに以下の3つの国内ntpサーバを追加します。~
# vi /etc/ntp/step-tickers
ntp.nict.jp
ntp.jst.mfeed.ad.jp
ntp.ring.gr.jp
完了後ntpを再起動し、時刻の確認をします。あわせてサービス...
# /etc/init.d/ntpd restart
# date
# chkconfig ntpd on
:Note|標準インストールで日本時間を選んでも正しい時刻を取...
** 環境変数設定 [#dbd80223]
予め/etc/bashrcにJAVA_HOME、HADOOP_HOMEとPATHに/sbin、/us...
# tail -n 5 /etc/bashrc
fi
# vim:ts=4:sw=4
export JAVA_HOME=/usr/java/latest
export HADOOP_HOME=/usr/lib/hadoop
export PATH=/sbin:/usr/sbin:$HADOOP_HOME/bin:$PATH
:Note|JAVAの実行時およびHadooのサービス起動時および実行時...
** ユーザ追加とvisudo設定 [#x6bdd6f9]
一般ユーザにbeatとhadoopを追加します。beatは一般ユーザ用...
- beatユーザの作成~
useraddコマンドとpasswdコマンドでbeatユーザ、パスワードbe...
# useradd beat
# passwd beat
- visudo設定~
sudoコマンドを実行できるユーザにbeatとhdfsユーザを追加し...
# visudo
...<略>
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
beat ALL=(ALL) ALL
hdfs ALL=(ALL) ALL
- hadoopユーザの作成~
useraddコマンドとpasswd -d コマンドでhadoopユーザ、パス...
# useradd hadoop
# passwd -d hadoop
beatユーザからhadoopユーザへの切り替え
$ su hadoop
** SSH設定 [#d3cb99e0]
本VMwareイメージではrootでのログイン許可をしています。ま...
- hadoopユーザの鍵作成~
ssh-keygenコマンドで鍵タイプrsa、パスワードなしのrsa鍵を/...
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
Generating public/private rsa key pair.
Created directory '/home/hadoop/.ssh'.
Your identification has been saved in /home/hadoop/.ssh/...
Your public key has been saved in /home/hadoop/.ssh/id_r...
The key fingerprint is:
xx:xx:xx:zz:zz:<略>:xx hadoop@localhost.localdomain
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
- sshd設定~
擬似分散モードや別マシンからのログインするためにsshd_conf...
rootでのログイン許可、RSA認証許可、公開鍵認証許可、空パス...
適宜設定を変更してください。~
# vi /etc/ssh/sshd_config
#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
# For this to work you will also need host keys in /etc/...
#RhostsRSAAuthentication no
# similar for protocol version 2
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# RhostsRSAAuthentication and HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes
# To disable tunneled clear text passwords, change to no...
#PasswordAuthentication yes
PermitEmptyPasswords yes
PasswordAuthentication yes
**JDKのインストール [#l36907f3]
JDKのインストールをします。以下のサイトから最新版JDK (jdk...
http://www.oracle.com/technetwork/java/javase/downloads/i...
$ mkdir jdk
$ cd jdk/
$ ls
jdk-6u24-linux-x64-rpm.bin
$ chmod +x jdk-6u24-linux-x64-rpm.bin
$ su
パスワード:
# ./jdk-6u24-linux-x64-rpm.bin
Unpacking...
Checksumming...
Extracting...
<略>
# ls -l /usr/java/
合計 4
lrwxrwxrwx 1 root root 16 4月 12 13:03 default -> /us...
drwxr-xr-x 9 root root 4096 4月 12 13:03 jdk1.6.0_24
lrwxrwxrwx 1 root root 21 4月 12 13:03 latest -> /usr...
/etc/bashrcで設定したJAVA_HOMEとディレクトリ位置があって...
# tail -n 5 /etc/bashrc
fi
# vim:ts=4:sw=4
export JAVA_HOME=/usr/java/latest
export HADOOP_HOME=/usr/lib/hadoop
export PATH=/sbin:/usr/sbin:$HADOOP_HOME/bin:$PATH
** 不要なサービスの停止と起動について [#u4fe3462]
不要なサービスの停止をします。起動しているサービス一覧を...
# chkconfig --list
NetworkManager 0:off 1:off 2:off 3:off 4:off ...
acpid 0:off 1:off 2:on 3:on 4:on ...
anacron 0:off 1:off 2:on 3:on 4:on ...
atd 0:off 1:off 2:off 3:on 4:on ...
auditd 0:off 1:off 2:on 3:on 4:on ...
...<略>
sendmail 0:off 1:off 2:on 3:off 4:on ...
...<略>
サービスの停止、起動の書式については chkconfig --level <n...
- サービスの確認~
# chkconfig --list
...<略>
iptables 0:off 1:off 2:on 3:on 4:on ...
- iptablesをoffに設定~
# chkconfig iptables off
- 再度サービスの確認~
# chkconfig --list
iptables 0:off 1:off 2:off 3:off 4:off ...
以上でCentOS上での基本的な設定は完了です。~
** CentOS-5.5-x86_64設定の制限事項 [#idc0d456]
- 本VMwareイメージでは意識してセキュリティに関する事象を...
* CDH3beta4 [#x584f3d8]
** CDH3beta4のインストール [#n16b2d43]
CDH3beta4のリポジトリを追加しCDHを導入します。以下のよう...
# vi /etc/yum.repos.d/cloudera-cdh3.repo
[cloudera-cdh3]
name=Cloudera's Distribution for Hadoop, Version 3
mirrorlist=http://archive.cloudera.com/redhat/cdh/3/mirr...
gpgkey = http://archive.cloudera.com/redhat/cdh/RPM-GPG-...
gpgcheck = 0
リポジトリを追加後yumの更新をします。~
# yum update yum
** Install Hadoop [#gb08de57]
Hadoopの主要コンポーネントと擬似分散モード用設定のインス...
yum searchコマンドを使って、Hadoop-0.20.2に対応する主要コ...
# yum install hadoop-0.20 hadoop-0.20-namenode hadoop-0....
0.20-secondarynamenode hadoop-0.20-jobtracker hadoop-0.2...
0.20-conf-pseudo -y
各コンポーネントの関係を以下に記載します。~
|名称|HDFS or MapReduce|Master or Slave|概略|h
|hadoop-0.20-namenode|HDFS|Master|DataNode上の情報をメタ...
|hadoop-0.20-datanode|HDFS|Slave|実データの保存、Namenode...
|hadoop-0.20-secondarynamenode|HDFS|Master|障害対策の1つ...
|hadoop-0.20-jobtracker|MapReduce|Master|jobの受付、処理...
|hadoop-0.20-tasktracker|MapReduce|Slave|JobTrackerから割...
~
hadoopをインストール完了後、mapred,hdfsユーザが追加されて...
またCDH3beta4を導入した際、作成していたhadoopユーザがhdfs...
# tail -n 4 /etc/passwd
beat:x:500:500::/home/beat:/bin/bash
ntp:x:38:38::/etc/ntp:/sbin/nologin
mapred:x:101:157:Hadoop MapReduce:/usr/lib/hadoop-0.20:/...
hdfs:x:501:501:Hadoop HDFS:/home/hadoop:/bin/bash
** hadoop-0.20-confの切り替えについて [#l6d6d49a]
Hadoopの動作モードにはローカルモード、擬似分散モード、完...
~
hadoopでは/etc/hadoop-0.20/以下にconf、conf.empty、conf.p...
~
ここではローカルモード用の設定conf.localと完全分散用の設...
~
設定の切り替えにはalternativesを実行し切り替えを行います...
# cd /etc/hadoop-0.20/
# ls -l
合計 8
lrwxrwxrwx 1 root root 34 4月 12 13:14 conf -> /etc/a...
drwxr-xr-x 2 root root 4096 4月 12 13:14 conf.empty
drwxr-xr-x 2 root root 4096 4月 12 13:14 conf.pseudo
# cp -r conf.empty conf.local
# cp -r conf.empty conf.bc_cluster
- hadoop-0.20-confの設定確認 ~
alternatives --displayコマンドで現在のhadoop-0.20-confのs...
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf -ステータスは自動です。
リンクは現在 /etc/hadoop-0.20/conf.pseudo を指しています。
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
現在の「最適」バージョンは /etc/hadoop-0.20/conf.pseudo ...
- 設定変更例~
conf.bc_clusterの優先度を60と設定しconf.bc_clusterがhadoo...
alternatives --installコマンドで設定を変更し、再度hadoop-...
確認します。~
# alternatives --install /etc/hadoop-0.20/conf hadoop-0....
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf -ステータスは自動です。
リンクは現在 /etc/hadoop-0.20/conf.bc_cluster を指してい...
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
/etc/hadoop-0.20/conf.bc_cluster - 優先項目 60
現在の「最適」バージョンは /etc/hadoop-0.20/conf.bc_clus...
:Note|使用法は『 alternatives --install <リンク> <名前> <...
~
本VMwareイメージではローカルモードはconf.localを使用しま...
# alternatives --set hadoop-0.20-conf /etc/hadoop-0.20/c...
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf - ステータスは手動です。
リンクは現在 /etc/hadoop-0.20/conf.local を指しています。
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
...<略>
* ローカルモード [#b7f344ff]
1台で擬似的なmaster、slaveを設定せずにMapReduceのアプリケ...
** conf.localの設定 [#q5df15bd]
ローカルモード用のconf.localに必要な設定を記載します。
- hadoop-env.sh~
Hadoopの環境変数設定が記載されているファイルです。HADOOP_...
またHadoopのheapサイズはデフォルトの1000MBのまま変更して...
# tail -n 5 hadoop-env.sh
...<略>
# A string representing this instance of hadoop. $USER b...
export HADOOP_IDENT_STRING=bclocal
# The scheduling priority for daemon processes. See 'ma...
# export HADOOP_NICENESS=10
- core-site.xml~
core-site.xmlにはHadoopの共通設定を記載します。hadoop.tmp...
適宜変更してください。~
# cat core-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl...
<!-- Put site-specific property overrides in this file. ...
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<!-- Local Disk Directory for hadoop dat...
<value>/tmp/hadooplocal</value>
<!-- its value -->
</property>
</configuration>
- hdfs-site.xml~
dfs-site.xmlにはHDFSに関する設定を記載するふぁいるです。...
- mapred-site.xml ~
mapred-site.xmlはMapReduceに関する設定を記載しています。...
# cat mapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl...
<!-- Put site-specific property overrides in this file. ...
<configuration>
<property>
<name>mapreduce.jobtracker.address</name>
<!-- JobTracker Address -->
<value>local</value>
<!-- its value -->
</property>
</configuration>
- hadoop.tmp.dirの作成 ~
上記で設定したhadoop.tmp.dir(/tmp/hadooplocalと設定)を...
# cd tmp/
# mkdir hadooplocal
# chmod -R 777 hadooplocal/
- HADOOP_CLASSPATHの設定
ローカルモードとして動作するための設定をします。ローカル...
# su hdfs
$ export HADOOP_CLASSPATH=/usr/lib/hadoop-0.20/
** Examplesの実行 [#n99b3937]
hadoop-0.20.2-CDH3B4-examples.jarを実行します。この際にja...
$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-0.20.2-CDH...
An example program must be given as the first argument.
Valid program names are:
aggregatewordcount: An Aggregate based map/reduce progr...
...<略>
hadoop-0.20.2-CDH3B4-examples.jarに含まれるpiを実行します...
$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-0.20.2-CDH...
Number of Maps = 10
Samples per Map = 100
11/04/12 17:20:07 WARN util.NativeCodeLoader: Unable to ...
Wrote input for Map #0
...<略>
11/04/12 17:20:12 INFO mapred.JobClient: SPLIT_RAW_B...
11/04/12 17:20:12 INFO mapred.JobClient: Reduce inpu...
Job Finished in 4.704 seconds
Estimated value of Pi is 3.14800000000000000000
以上でローカルモードの動作確認は終了です。
* 擬似分散モード [#z04f2d8e]
1台のVMwareイメージ上で擬似的にMasterとSlaveを設定しそれ...
# yum install w3m -y
** hadoop-0.20-confの切り替え [#ca4ffd4d]
ローカルモード後に実行する場合は擬似分散モードへhadoop-0....
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf - ステータスは手動です。
リンクは現在 /etc/hadoop-0.20/conf.local を指しています。
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
/etc/hadoop-0.20/conf.bc_cluster - 優先項目 60
/etc/hadoop-0.20/conf.local - 優先項目 60
現在の「最適」バージョンは /etc/hadoop-0.20/conf.bc_clus...
hadoop-0.20-confはconf.localに設定されていますので、先ほ...
# alternatives --set hadoop-0.20-conf /etc/hadoop-0.20/c...
# alternatives --display hadoop-0.20-conf
hadoop-0.20-conf - ステータスは手動です。
リンクは現在 /etc/hadoop-0.20/conf.pseudo を指しています。
/etc/hadoop-0.20/conf.empty - 優先項目 10
/etc/hadoop-0.20/conf.pseudo - 優先項目 30
/etc/hadoop-0.20/conf.bc_cluster - 優先項目 60
/etc/hadoop-0.20/conf.local - 優先項目 60
現在の「最適」バージョンは /etc/hadoop-0.20/conf.bc_clus...
** 擬似分散モード設定 [#dc555179]
conf.pseudoに既に設定値が記載されていますので、変更を加え...
# cd /etc/hadoop-0.20/conf.pseudo/
- hadoop-env.sh~
Hadoopの環境変数設定が記載されているファイルです。HADOOP_...
# tail -n 5 hadoop-env.sh
...<略>
# A string representing this instance of hadoop. $USER b...
export HADOOP_IDENT_STRING=bcpseudo
# The scheduling priority for daemon processes. See 'ma...
# export HADOOP_NICENESS=10
- core-site.xml ~
core-site.xmlにはHadoopの共通設定を記載します。core-site....
# cat 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:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/var/lib/hadoop-0.20/cache/${user.name}</val...
</property>
<!-- OOZIE proxy user setting -->
<property>
<name>hadoop.proxyuser.oozie.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.oozie.groups</name>
<value>*</value>
</property>
</configuration>
- hdfs-site.xml~
hdfs-site.xmlにはHDFSに関する設定を記載します。擬似分散モ...
# cat 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>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
<property>
<!-- specify this so that running 'hadoop namenode ...
<name>dfs.name.dir</name>
<value>/var/lib/hadoop-0.20/cache/hadoop/dfs/name</...
</property>
<!-- Enable Hue Plugins -->
<property>
<name>dfs.namenode.plugins</name>
<value>org.apache.hadoop.thriftfs.NamenodePlugin</va...
<description>Comma-separated list of namenode plug-i...
</description>
</property>
<property>
<name>dfs.datanode.plugins</name>
<value>org.apache.hadoop.thriftfs.DatanodePlugin</va...
<description>Comma-separated list of datanode plug-i...
</description>
</property>
<property>
<name>dfs.thrift.address</name>
<value>0.0.0.0:10090</value>
</property>
</configuration>
- mapred-site.xml
mapred-site.xmlはMapReduceに関する設定を記載しています。m...
# cat mapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl...
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:8021</value>
</property>
<!-- Enable Hue plugins -->
<property>
<name>mapred.jobtracker.plugins</name>
<value>org.apache.hadoop.thriftfs.ThriftJobTrackerPl...
<description>Comma-separated list of jobtracker plug...
</description>
</property>
<property>
<name>jobtracker.thrift.address</name>
<value>0.0.0.0:9290</value>
</property>
</configuration>
** サービスの起動前に [#o543c7bc]
hdfsユーザに切り替え各サービスを起動する前に既に起動して...
# su hdfs
$ for service in /etc/init.d/hadoop-0.20-*; do sudo $ser...
*** HDFS Format [#g4eca100]
HDFSを正常に起動させるために、hdfsユーザでHDFSをFormatし...
$ sudo -u hdfs hadoop-0.20 namenode -format
11/04/12 18:55:07 INFO namenode.NameNode: STARTUP_MSG:
/*******************************************************...
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = localhost.localdomain/127.0.0.1
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 0.20.2-CDH3B4
STARTUP_MSG: build = -r 3aa7c91592ea1c53f3a913a581dbf...
********************************************************...
Re-format filesystem in /var/lib/hadoop-0.20/cache/hadoo...
11/04/12 18:55:09 INFO util.GSet: VM type = 64-bit
<略>
11/04/12 18:55:10 INFO common.Storage: Storage directory...
11/04/12 18:55:10 INFO namenode.NameNode: SHUTDOWN_MSG:
/*******************************************************...
SHUTDOWN_MSG: Shutting down NameNode at localhost.locald...
********************************************************...
** サービスの起動 [#w9ced8eb]
先ほど一括でサービスを停止したコマンドと同様に一括でサー...
$ for service in /etc/init.d/hadoop-0.20-*; do sudo $se...
Starting Hadoop datanode daemon (hadoop-datanode): start...
...
Starting Hadoop jobtracker daemon (hadoop-jobtracker): s...
...
Starting Hadoop namenode daemon (hadoop-namenode): start...
...
Starting Hadoop secondarynamenode daemon (hadoop-seconda...
...
Starting Hadoop tasktracker daemon (hadoop-tasktracker):...
...
各サービスごとの起動は以下のとおりです。~
- namenode(Master)~
$ sudo /etc/init.d/hadoop-0.20-namenode start
- datanode(Slave)~
$ sudo /etc/init.d/hadoop-0.20-datanode start
- jobtracker(Master)~
$ sudo /etc/init.d/hadoop-0.20-jobtracker start
- tasktracker(Slave)~
$ sudo /etc/init.d/hadoop-0.20-tasktracker start
起動後以下のURLでNameNodeとMap/Reduce AdministrationのWeb...
- NameNode ~
$ w3m http://localhost:50070
- Map/Reduce Administration~
$ w3m http://localhost:50070
** Examples [#oa6d340e]
ローカルモード同様、hadoop-0.20.2-CDH3B4-examples.jarを実...
$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-0.20.2-CDH...
An example program must be given as the first argument.
Valid program names are:
aggregatewordcount: An Aggregate based map/reduce progr...
...<略>
ローカルモードと同じExamplesのhadoop-0.20.2-CDH3B4-exampl...
$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-0.20.2-CDH...
Number of Maps = 10
Samples per Map = 100
Wrote input for Map #0
Wrote input for Map #1
Wrote input for Map #2
...<略>
11/04/12 19:55:03 INFO mapred.FileInputFormat: Total inp...
11/04/12 19:55:04 INFO mapred.JobClient: Running job: jo...
...<略>
11/04/12 19:55:51 INFO mapred.JobClient: Map output ...
11/04/12 19:55:51 INFO mapred.JobClient: SPLIT_RAW_B...
11/04/12 19:55:51 INFO mapred.JobClient: Reduce inpu...
Job Finished in 48.321 seconds
Estimated value of Pi is 3.14800000000000000000
この際Map/Reduce AdministrationのWebUI「Completed Jobs」...
#ref(localmapreduce.jpg);~
** サービスの停止 [#ka11513d]
一括でのサービス停止は以下のように実行します。~
$ for service in /etc/init.d/hadoop-0.20-*; do sudo $ser...
もしくは各サービスごとの停止は以下のとおりです。
- namenode(Master) ~
$ sudo /etc/init.d/hadoop-0.20-namenode stop
- datanode(Slave)~
$ sudo /etc/init.d/hadoop-0.20-datanode stop
- jobtracker(Master)~
$ sudo /etc/init.d/hadoop-0.20-jobtracker stop
- tasktracker(Slave)~
$ sudo /etc/init.d/hadoop-0.20-tasktracker stop
以上で擬似分散モードの動作確認は終了です。
* CDH3beta4:Hadoop関連プロジェクト [#qfd90596]
CDH3beta4ではHadoopの主要コンポーネントの他に以下のHadoop...
|コンポーネント名|パッケージ名|概略|参照URL|h
|Flume|Flume|データローディングインフラ|http://archive.cl...
|Sqoop|Sqoop|MySQLからHadoopへのデータインポートツール|ht...
|Hue|Hue|Hadoop User Experience(HadoopのUI)|http://archiv...
|Pig|hadoop-pig|データセットを探索するための対話的インタ...
|Hive|hadoop-hive|SQLライクな言語|http://hive.apache.org/|
|HBase|hadoop-hbase|Bigtable Storage System。HDFSとは逆に...
|ZooKeeper|hadoop-zookeeper|設定情報、名前付けなどの設定...
|Oozie server|Oozie|ワークフローエンジン|http://archive.c...
|Oozie client|oozie-client|ワークフローエンジン|http://ar...
|Whirr|Whirr|AmazonEC2のようなクラウドとの連携API|http://...
ページ名:
BC::labsへの質問は、bc9-dev @ googlegroups.com までお願い致します。