1.下載地址
https://dist.apache.org/repos/dist/release/hadoop/common/
我們這里用的版本是:hadoop-2.7.7.tar.gz
2.創建安裝目錄
我們在Centos環境中的opt目錄創建install文件夾(用來存放壓縮包)和soft文件夾(用來存放解壓之后的文件):
cd /opt
mkdir install soft
3.下載rz(用來向Linux Centos傳送文件)和sz命令:
yum install -y lrzsz
接着進入install目錄:cd /opt/install
然后輸入rz命令 選中我們剛才下載的hadoop-2.7.7.tar.gz 傳輸完畢后我們在instal目錄輸入ll命令就可以看到hadoop-2.7.7.tar.gz
4.解壓hadoop-2.7.7.tar.gz
輸入命令:tar -zxvf hadoop-2.7.7.tar.gz
解壓成功后我們會在install目錄看到一個hadoop-2.7.7文件,這就是我們需要的東西,接下來移動一下位置,把它移到 opt目錄的soft文件夾中:mv hadoop-2.7.7 /opt/soft
進入soft目錄: cd /opt/soft
移到完成后我在這給hadoop-2.7.7改了個名字:mv hadoop-2.7.7 hadoop2.7
5.配置環境變量
進入etc目錄的profile文件:vi /etc/profile
在尾行添加如下命令:
HADOOP_HOME=/opt/soft/hadoop2.7
PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
圖中多了jdk的環境變量,因為hadoop是由java編寫的,配置jdk環境是必不可少的,在這里就不演示jdk的安裝了
6.修改hadoop配置文件
①修改hadoop-env.sh
進入hadoop2.7目錄: cd /opt/soft/hadoop2.7
編輯配置文件hadoop-env.sh: vi etc/hadoop/hadoop-env.sh
修改25行(這里修改的是jdk的位置): export JAVA_HOME=/opt/soft/jdk1.8
修改33行(這里修改的是hadoop的位置): export HADOOP_CONF_DIR=/opt/soft/hadoop2.7/etc/hadoop
②修改core-site.xml配置文件
vi etc/hadoop/core-site.xml
在尾末添加:
<configuration>
<!-- 指定HDFS中NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadop51:9000</value>
</property>
<!-- 指定hadoop運行時產生文件的存儲目錄 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/soft/hadoop2.7/tmp</value>
</property>
</configuration>
注意這里的hadop51是主機名,可以在 vi /etc/hostname中修改
③修改hdfs-site.xml配置文件
vim etc/hadoop/hdfs-site.xml
在尾末添加:
<configuration>
<!-- 指定HDFS副本的數量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
④修改mapred-site.xml配置文件
這個配置文件一般沒有,但是有個模板,名字是:mapred-site.xml.templat
我們把模板復制一遍:
進入etc目錄下單hadoop文件夾: cd etc/hadoop
復制: scp mapred-site.xml.template mapred-site.xml
修改配置文件:vi mapred-site.xml
在尾末添加:
<!-- 指定mr運行在yarn上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
⑤修改yarn-site.xml配置文件
vi yarn-site.xml
在尾末添加
<!-- 指定YARN的ResourceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadop51</value>
</property>
<!-- reducer獲取數據的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
注意這里的hadop51是主機名,可以在 vi /etc/hostname中修改(和之前的一致,修改過可以省略)
⑥修改slaves文件
vi slaves
修改為自己的主機名
至此配置文件修改完畢,注意這些配置文件都在 /opt/soft/hadoop2.7/etc/hadoop目錄下
7.格式化文件系統:
hadoop namenode -format
8.配置免密通信:
如果不配置免密通信每次啟動Hadoop都要輸入很多次密碼,很麻煩。
輸入命令: ssh-keygen
之后一直回車 可以看到類似圖形:
在輸入命令: ssh-copy-id hadop51
注意這里的hadop51是主機名
9.啟動和關閉Hadoop
啟動: start-all.sh
關閉: stop-all.sh
10.web端查看是否啟動成功
http://192.168.31.54:50070 #查看NameNode的狀態
http://192.168.31.54:50075 #查看DataNode的狀態
http://192.168.31.54:50090 #查看SecondaryNameNode的狀態