安裝環境:Centos 6
Hadoop版本:2.7.2
用戶名:huwei
Hadoop2.7.2下載鏈接:https://pan.baidu.com/s/1AK4CXh2jBKOSa-bN4NA8nQ 提取碼:bemy
下載好的hadoop壓縮包如下圖所示:

提示:全文中所有cd命令,均可在圖形化界面點擊進入指定檔案夾后,右擊打開終端而省略,
1. 為Hadoop創建安裝的檔案夾
cd命令進入/usr/local 目錄下,由于進入系統目錄操作需要管理員權限,故使用su命令由普通用戶轉為root用戶,mkdir Hadoop創建Hadoop檔案夾(touch是創建檔案)
su
cd /usr/local/
mkdir Hadoop

2.將Hadoop移至已創建好的檔案夾中
mv /home/huwei/下載/hadoop-2.7.2.tar.gz /usr/local/Hadoop
移動成功后如下圖:

2. 解壓Hadoop壓縮包
進入剛剛創建的Hadoop檔案夾,滑鼠右擊“在終端打開”

即直接在終端進入了該檔案夾的位置,免去的較為繁瑣的cd命令

還有一點要特別注意的就是,在系統目錄里進行操作,需要轉為root用戶
su
解壓壓縮包
tar -zxvf hadoop-2.7.2.tar.gz

解壓完成!
3. 配置環境變數
su命令轉為root用戶,在任一目錄下輸入
vi /etc/profile
進入該檔案后按下鍵盤中的字母 i 進行輸入,在檔案末尾添加以下變數(具體根據自己放置hadoop的位置進行相應修改)
export HADOOP_HOME=/usr/local/Hadoop/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
輸入完成后按下鍵盤右上角的 Esc 并輸入:wq進行保存退出
使變數生效并檢驗
source /etc/profile
任意目錄輸入hado,然后按下Tab,如果自動補全hadoop,則說明環境變數配置的沒問題,回車則有

4. 安裝SSH、配置SSH無密碼登陸
檢查是否安裝了SSH
rpm -qa | grep ssh
一般情況下,CentOS 默認已安裝了 SSH client、SSH server,可打開終端執行如下命令進行檢驗,如果回傳的結果如下圖所示,包含了 SSH client 跟 SSH server,則不需要再安裝,

測驗 SSH 是否可用
ssh localhost
此時會有如下提示(SSH首次登陸提示),輸入 yes ,然后按提示輸入密碼 ,這樣就登陸到本機了

但這樣登陸是需要每次輸入密碼的,我們需要配置成SSH無密碼登陸比較方便,
SSH無密碼登陸
在客戶端生成私鑰與公鑰
ssh-keygen -t [rsa|dsa],rsa和dsa代表不同的演算法
將會生成密鑰檔案和私鑰檔案 id_rsa,id_rsa.pub(如果用dsa則生成id_dsa,id_dsa.pub)
ssh-keygen -t rsa # 三個回車

cat id_rsa.pub >> authorized_keys # 加入授權
chmod 600 ./authorized_keys # 修改檔案權限
ssh-copy-id localhost # 將公鑰拷貝給自己
此時再用 ssh localhost 命令,無需輸入密碼就可以直接登陸了,如下圖所示

SSH無密碼登陸配置成功!
有關上述Linux權限詳解可參考:https://blog.csdn.net/u013197629/article/details/73608613
5.關閉防火墻
查看防火墻狀態(切換為root用戶)
service iptables status
CentOS 7的防火墻服務為firewalld,不再使用iptables了
systemctl stop firewalld 關閉防火墻服務網
若出現下圖資訊則說明防火墻處于開啟狀態!

關閉防火墻
service iptables stop

再次查看防火墻的狀態
service iptables status

防火墻成功關閉!
6. 修改相關組態檔
進入hadoop檔案夾下的etc/hadoop/目錄,打開終端并切換為root用戶

(1)hadoop-env.sh
vi hadoop-env.sh
修改下圖紅圈部分內容,即配置jdk的路徑

改后為:

按下左上角的Esc輸入:wq保存退出
(2) core-site.xml
vi core-site.xml
在<configuration></configuration>中加入
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>

按下左上角的Esc輸入:wq保存退出
(3) hdfs-site.xml
vi hdfs-site.xml
在<configuration></configuration>中加入
<!-- HDFS的副本為1,即資料只保存一份 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>

按下左上角的Esc輸入:wq保存退出
(4) mapred-site.xml
由于該目錄下只有mapred-site.xml.template檔案,故將其改名為mapred-site.xml

mv mapred-site.xml.template mapred-site.xml
修改mapred-site.xml檔案
vi mapred-site.xml
在<configuration></configuration>中加入
<!-- 指定MapReduce運行在YARN上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

按下左上角的Esc輸入:wq保存退出
(5) yarn-site.xml
vi yarn-site.xml
在<configuration></configuration>中加入
<!-- 分別指定ResouceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<!-- 分別指定MapReduce的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>

按下左上角的Esc輸入:wq保存退出
7. IP映射配置
要在root下進行
vi /etc/hosts

8.初始化Hadoop HDFS檔案系統
hdfs namenode -format
若出現下圖所示內容,則說明初始化成功!

9. 啟動Hadoop
進入hadoop檔案夾下的sbin目錄,需切換至root用戶
start-dfs.sh
start-yarn.sh
jps

至此,hadoop安裝完成!!!
你可能會遇到的以下問題
(1)在root用戶下啟動hadoop集群后完全正常,如上圖所示;但是若在普通用戶下開啟hadoop后,卻發現沒有namenode,那么就在普通用戶狀態下重新執行初始化操作,
(2)在root用戶下啟動hadoop集群不需要輸入密碼,而在普通用戶下的免密登錄沒有起效,仍需要多次輸入密碼,那么就輸入reboot重啟或者在普通用戶下重新執行SSH免密操作再reboot重啟,
(3)如果啟動hadoop集群時提示找不到命令…,那么就再次輸入source /etc/profile或輸入source /etc/profile再reboot重啟,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/225939.html
標籤:其他
