在CentOS 6上以本地模式搭建Hadoop(只需六步)
0x00:目錄
1、添加特定的組(hadoop)和用戶(hduser)
2、配置SSH免密碼登錄
3、JDK和Hadoop的下載
4、JDK和Hadoop環境設置
5、配置Hadoop
6、啟動Hadoop
0x01:過程
1、添加特定的組(hadoop)和用戶(hduser)【以root用戶登錄】
1) groupadd hadoop
2) useradd hduser -g hadoop
2、配置SSH免密碼登錄
1) 切換到新添加的用戶hduser 【以下步驟均以hduser用戶執行】
su - hduser
2) 生成公鑰
ssh-keygen -t rsa -p ""
3) cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
4) 檢查是否設置成功
?ssh localhost
輸出信息:
The authenticity of host 'localhost (::1)' can't be established.
RSA key fingerprint is da:80:b4:64:d2:9a:94:92:99:02:7d:b1:ff:4f:d1:ac.
Are you sure you want to continue connecting (yes/no)? yes ?【<--這里輸入yes】
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
3、JDK和Hadoop的下載
1)下載JDK
mkdir /home/hduser/Downloads
cd /home/hduser/Downloads
wget http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-linux-x64.tar.gz
2) 下載Hadoop
wget http://archive.apache.org/dist/hadoop/common/stable1/hadoop-1.2.1.tar.gz
4、JDK和Hadoop環境設置
1) 將下載好的JDK和Hadoop壓縮文件復制到/home/hduser/opt下
cp /home/hduser/Downloads/jdk-8u77-linux-x64.tar.gz /home/hduser/opt/
cp /home/hduser/Downloads/hadoop-1.2.1.tar.gz /home/hduser/opt/
2) 解壓JDK和Hadoop文件
cd /home/hduser/opt
tar -zxvf jdk-8u77-linux-x64.tar.gz
tar -zxvf hadoop-1.2.1.tar.gz
3) 編輯~/.bash_profile
export JAVA_HOME=/home/hduser/opt/jdk1.8.0_77
export HADOOP_HOME=/home/hduser/opt/hadoop-1.2.1
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH:$HOME/bin
注:JAVA_HOME為jdk所在路徑,HADOOP_HOME為hadoop所在路徑
4)檢測Java環境和Hadoop環境
檢查Java環境:
java -version
輸出信息:
java version "1.8.0_77"
Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)
檢查Hadoop環境:
hadoop
輸出信息:
Warning: $HADOOP_HOME is deprecated.
Usage: hadoop [--config confdir] COMMAND
where COMMAND is one of:
....... ......
Most commands print help when invoked w/o parameters.
5、配置Hadoop
1) 進入hadoop所在的配置目錄
cd /home/hduser/opt/hadoop-1.2.1/conf
2) 修改hadoop配置文件
共修改四個配置文件:1) hadoop-env.sh 2)core-site.xml 3)hdfs-site.xml 4)mapred-site.xml
對于hadoop-env.sh文件,設置JAVA_HOME的路徑為/home/hduser/opt/jdk1.8.0_77
對于core-site.xml文件,配置為:
對于hdfs-site.xml文件,配置為:
對于mapred-site.xml文件,配置為:
6、啟動Hadoop
1) 格式化namenode
hadoop namenode -format
2) 啟動所有Hadoop的守護進程
cd /home/hduser/opt/hadoop-1.2.1/bin
start-all.sh
3) 檢查hadoop是否啟動正常
jps
輸出信息:
11041 TaskTracker
10834 SecondaryNameNode
11111 Jps
10919 JobTracker
10729 DataNode
10623 NameNode
看到這6個進程就說明Hadoop已經正常啟動運行。
0x02:備注
如果DataNode沒有啟動,可以嘗試以下辦法解決。
cd /home/hduser/opt/hadoop-1.2.1/bin
stop-all.sh
cd /home/hduser/opt/hadoop-1.2.1/logs
將目錄下所有的文件刪除【但是不要刪除history文件夾】
然后重新執行格式化namenode操作
再次啟動hadoop所有守護進程進行驗證
0x03:參考
http://hadoop.apache.org/docs/r1.2.1/single_node_setup.html
http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-single-node-cluster/
文章不足之處,還請批評指正。
文章轉載請注明出處,謝謝。