一、 安裝ssh免密登錄
命令:ssh-keygen
overwrite(覆蓋寫入)輸入y
一路回車
將生成的密鑰發送到本機地址
ssh-copy-id localhost
(若報錯命令無法找到則需要安裝openssh-clients)
yum –y install openssh-clients
測試免密設置是否成功
ssh localhost
二、 卸載已有java
確定JDK版本
rpm –qa | grep jdk
rpm –qa | grep gcj
切換到root用戶,根據結果卸載java
yum -y remove java-1.8.0-openjdk-headless.x86_64
yum -y remove java-1.7.0-openjdk-headless.x86_64
卸載后輸入java –version查看
三、 安裝java
切換回hadoop用戶,命令:su hadoop
查看下當前目標文件,命令:ls
將桌面的hadoop文件夾中的java及hadoop安裝包移動到app文件夾中
命令:
mv /home/hadoop/Desktop/hadoop/jdk-8u141-linux-x64.gz /home/hadoop/app
mv /home/hadoop/Desktop/hadoop/hadoop-2.7.0.tar.gz /home/hadoop/app
解壓java程序包,命令:tar –zxvf jdk-7u79-linux-x64.tar.gz
創建軟連接
ln –s jdk1.8.0_141 jdk
配置jdk環境變量
切換到root用戶
再輸入vi /etc/profile
輸入
export JAVA_HOME=/home/hadoop/app/jdk1.8.0_141
export JAVA_JRE=JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_JRE/lib
export PATH=$PATH:$JAVA_HOME/bin
保存退出,並使/etc/profile文件生效
source /etc/profile
能查詢jdk版本號,說明jdk安裝成功
java -version
四、 安裝hadoop
切換回hadoop用戶,解壓縮hadoop-2.6.0.tar.gz安裝包
創建軟連接,命令:ln -s hadoop-2.7.0 hadoop
驗證單機模式的Hadoop是否安裝成功,命令:
hadoop/bin/hadoop version
此時可以查看到Hadoop安裝版本為Hadoop2.7.0,說明單機版安裝成功。
在Hadoop2.6.0安裝目錄下新建一個源數據文件test.txt,輸入以下隨機內容
測試運行Hadoop
單機環境,輸入命令運行Hadoop自帶的WordCount程序,統計單詞個數: bin/hadoop jar
share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0. jar wordcount test.txt output
此時MapReduce程序讀取的本地文件test.txt,輸出目錄output也在本地
查看wordcount運行結果
五、 配置偽分布式登錄
進入hadoop/etc/hadoop目錄,修改相關配置文件
cd etc/
cd hadoop/
修改core-site.xml配置文件
修改hdfs-site.xml配置文件
修改hadoop-env.sh配置文件
修改mapred-site.xml.template配置文件
修改yarn-site.xml配置文件
配置hadoop環境變量
使修改生效,命令:sourec ~/.bashrc
創建hadoop相關數據目錄
在hadoop相關配置文件中配置了多個數據目錄,提前建立這些文件夾
格式化namenode
在啟動hadoop集群前需要格式化namenode。需要注意的是,第一次安裝Hadoop集群的時候需要格式化Namenode,以后直接啟動Hadoop集群即可,不需要重復格式化Namenode。
切回到hadoop目錄,輸入如下命令:
bin/hdfs namenode -format
啟動hadoop偽分布式集群
sbin/start-all.sh
啟動完畢輸入jps查看
出現上面所有進程表示啟動成功
通過網頁訪問
localhost:50070
localhost:8088
測試運行hadoop偽分布式集群
hadoop偽分布式集群搭建完成,通過命令查看hdfs根目錄下沒有任何文件
bin/hdfs dfs –ls /
將之前本地新建的test.txt文件上傳至hdfs
bin/hdfs dfs –mkdir /data (在集群上新建一個數據文件夾)
bin/hdfs dfs –put test.txt /data(將本地的test文件上傳到集群中的data文件夾)
運行wordcount程序計數
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar wordcount /data/test.txt /data/output
查看運行結果
bin/hdfs dfs –cat /data/output/*