一、環境資源
JDK和Hadoop存在版本兼容問題,選擇安裝包的時候一定要考慮到兩個軟件的版本兼容,我這裏選擇的安裝版本如下:
- JDK1.8:https://pan.baidu.com/s/1Rm5ErmvKFjVmwx1uAF90vQ 提取碼:kpre
- Hadoop2.7:https://pan.baidu.com/s/1xynMsryyTDZBn_ApgbuTSA 提取碼:ir1l
二、安裝JDK
- 將Java安裝文件上傳到服務器上。
- 將安裝文件解壓縮,並記錄jdk解壓文件根目錄
tar -zxvf 文件名 解壓目錄 //解壓到當前目錄時,可以省略解壓目錄
- 配置JDK環境變量,打開配置文件,在文件末尾加入JDK配置,配置內容如截圖所示
vi /etc/profile
- 刷新環境變量:輸入命令,之間刷新
source /etc/profile
- 輸入 jps 命令,如果出現jdk進程信息,說明JDK環境配置成功
三、安裝SSH免密
默認情況下,使用ssh登陸Linux,都需要提供祕鑰,登陸本機也是需要祕鑰,因此啓動Hadoop時,也是需要輸入祕鑰信息,爲避免每次啓動都輸入祕鑰,可以通過下面的命令,實現本機登陸時免祕鑰。
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa //生成祕鑰文件
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys //安裝祕鑰
四、安裝配置Hadoop
- 將Hadoop安裝文件上傳到服務器上
- 將Hadoop安裝文件解壓,並記錄下Hadoop的根目錄
tar -zxvf 文件名 解壓目錄 //解壓到當前目錄時,可以省略解壓目錄
- 配置Hadoop環境變量,在/etc/profile末尾加上對應的配置信息
vi /etc/profile
- 配置Hadoop的Java環境變量:需要爲Hadoop根目錄下,ect/hadoop/下的hadoop-env.sh、mapred-env.sh、yarn-env.sh三個文件分別設置Java環境變量,將JAVA_HOME設置爲我們安裝的Java根目錄
vi hadoop-env.sh
vi mapred-env.sh
vi yarn-env.sh
- 配置core-site.xml,文件同樣在Hadoop根目錄下的ect/hadoop/目錄中,需要在文件中,加入如下配置
vi core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://你的IP:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>你的Hadoop環境存儲位置</value>
</property>
- 配置hdfs-site.xml,文件同樣在Hadoop根目錄下的ect/hadoop/目錄中
vi hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>你的IP:50090</value>
</property>
- 配置slaves文件:將文件中的localhost替換爲你的IP
vi hdfs-site.xml
- 格式化hdfs:每個Hadoop只需在第一次進行格式化,以後直接啓動即可,出現successfully表示格式化成功。
hdfs namenode -format
- 啓動集羣:啓動後,可以輸入 jps 命令,查看Java進程(Hadoop進程都是Java進程),出現進程,代表啓動成功。
start-dfs.sh
- 訪問Hadoop:訪問地址是 你的IP:50070,出現這個頁面,代表整個配置完成,如果出錯,Hadoop會在根目錄的log目錄下生產日誌文件,可以根據日誌,調整配置。
關閉防火牆
- 如果不能訪問,請確認是否關閉了防火牆,關閉命令:
systemctl stop firewalld.service //停止firewall
systemctl disable firewalld.service //禁止firewall開機啓動