標籤:
注意:以下安裝步驟在Centos6.5作業系統中進行,安裝步驟同樣適於其他動作系統,如有同學使用Ubuntu等其他Linux作業系統,只需注意個別命令略有不同。
注意一下不同使用者權限的操作,比如關閉防火牆,需要用root許可權。
單節點的hadoop安裝出現的問題會在如下幾個方面:JDK環境的配置、防火牆是否關閉、root使用者和hadoop使用者的不同操作等。
在搭建的過程中細心一點,按照下面的步驟做,基本不會有什麼問題的。
一、準備工作(root使用者)
1.關閉防火牆
關閉防火牆:service iptables stop關閉開機啟動:chkconfig iptables off
2.建立使用者
建立hadoop使用者:useradd hadoop密碼:passwd hadoop加入sudoers:vim /etc/sudoers ,在root下一行寫入hadoop ALL=(ALL) ALL
3.修改hosts檔案
在/etc/hosts檔案最後一行加入:
127.0.0.1hadoop
二、安裝JDK1.8(root使用者)
1.查看已裝JDK
rpm -qa |grep javarpm -qa |grep jdk
2.卸載上一步顯示的程式
rpm -e --nodeps 程式名 (如:rpm -e --nodeps tzdata-java-2013g-1.el6.noarchrpm -e --nodeps java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64)
3.安裝JDK1.8
rpm -ivh jdk-8-linux-x64.rpm (在安裝檔案所在的目錄下執行該指令,安裝前可將.rpm檔案放置在任意目錄,左後jdk預設安裝在/usr/java/jdk1.8.0 中)
4.修改環境變數
修改 /etc/profile檔案,在檔案末尾加入以下幾行:
export JAVA_HOME=/usr/java/jdk1.8.0export JRE_HOME=/usr/java/jdk1.8.0/jreexport PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
5.使剛修改的環境變數生效
source /etc/profile
6.驗證JDK是否安裝成功
java -versionecho $JAVA_HOME
三、SSH無密碼登入(hadoop使用者) 1.產生密鑰
ssh-keygen -t dsa (然後一直按斷行符號即可,會自動產生.ssh檔案夾,內有兩個檔案)
2.產生authorized_keys
進入/home/hadoop/.ssh目錄
cat id_dsa.pub >> authorized_keys
3.給authorized_keys賦予執行許可權
chmod 600 authorized_keys
4.測試是否能夠無密碼登入本地
ssh localhost
如果不用再次輸入密碼,說明成功
四、安裝hadoop(hadoop使用者)
1.解壓到指定目錄(以在/home/hadoop目錄為例)
tar -zxvf hadoop-2.5.1.tar.gz
2.設定檔
設定檔在/home/hadoop/hadoop-2.5.1/etc/hadoop/目錄下
2.1.core-site.xml檔案
在<configuration>和</configuration>之間加入如下內容
<property><name>fs.defaultFS</name><value>hdfs://localhost:9000</value></property> <property><name>hadoop.tmp.dir</name><value>/home/hadoop/hadoop-2.5.1/tmp</value></property>
2.2.hdfs-site.xml檔案
<property><name>dfs.namenode.name.dir</name> <value>/home/hadoop/hadoop-2.5.1/name</value> </property> <property><name>dfs.datanode.data.dir</name> <value>/home/hadoop/hadoop-2.5.1/data</value> </property> <property><name>dfs.replication</name> <value>1</value></property>
注意:/home/hadoop/hadoop-2.5.1/data和/home/hadoop/hadoop-2.5.1/name這兩個目錄應該是存在的。
2.3.mapred-site.xml檔案
<property><name>mapreduce.framework.name</name> <value>yarn</value> </property>
2.4.mapred-env.sh檔案
export JAVA_HOME=/usr/java/jdk1.8.0export HADOOP_MAPRED_PID_DIR=/home/hadoop/hadoop-2.5.1/tmp
2.5.hadoop-env.sh檔案
export JAVA_HOME=/usr/java/jdk1.8.0export HADOOP_PID_DIR=/home/hadoop/hadoop-2.5.1/tmpexport HADOOP_SECURE_DN_PID_DIR=/home/hadoop/hadoop-2.5.1/tmp
2.6.yarn-site.xml檔案
<property><name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property>
2.將hadoop加入環境變數
sudo vim /etc/profile加入如下兩行export HADOOP_HOME=/home/hadoop/hadoop-2.5.1export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
五、啟動(hadoop使用者)
1.格式化namenode
hdfs namenode -format
如果成功,此時,在/home/hadoop/hadoop-2.5.1/name/中會產生current檔案夾
2.啟動namenode和datanode
hadoop-daemon.sh start namenodehadoop-daemon.sh start datanode
通過jps能夠驗證是否啟動成功
3.啟動yarn
start-yarn.sh
輸入jps驗證
4.在網頁端查看
輸入IP:50070(例如:http://192.168.56.103:50070/)
六、運行wordcount例子(hadoop使用者)
Wordcount例子在/home/hadoop/hadoop-2.5.1/share/hadoop/mapreduce中的hadoop-mapreduce-examples-2.5.1.jar
1.上傳本地檔案至hdfs
hadoop fs -put 檔案 /test (如:hadoop fs -put 1 /test是將本地的檔案1上傳至hdfs中的/test目錄下)
2.運行
hadoop jar hadoop-mapreduce-examples-2.5.1.jar wordcount /test/1 /test/output/1
注意:/test/output/1必須是不存在的目錄
3.查看結果
hadoop fs -cat /test/output/1/part-r-00000
大資料之Hadoop平台(二)Centos6.5(64bit)Hadoop2.5.1偽分布式安裝記錄,wordcount運行測試