大家好,今天讲解的是Hadoop安装步骤,内容下:

一、前期准备
1、必须要有三台Linux(小编使用的是ubuntu14.04server版,大家也可以使用别的Linux,但三台电脑必须是统一的Linux版本,ubuntu14.04server下载地址[http://releases.ubuntu.com/?_ga=1.129027977.446445887.1487857185])。
2、小编使用的是Hadoop2.6,下载地址[http://apache.fayea.com/hadoop/common/],选择2.6.*任意一版即可,下载后,将其分别传入linux的用户目录下。
3、下载一个java JDK1.8Linux安装包,将其分别传入linux的用户目录下。

有了这三样东西,前期准备工作算是干好了,接着就是搭建Hadoop集群

二、开始搭建Hadoop集群
ubuntu安装后,/opt目录是个空目录,所以我们将Hadoop集群安装到此目录下,
1、将jdk安装到三台ubuntu上
代码如下:
cd /opt
sudo tar zvxf ~/jdk1.8.* jdk的名字
ln -s jdk1.8.*(解压后的jdk名字) jdk
sudo vim /etc/profile #在文件最后加入以下内容后保存退出,并验证是否配置真确
JAVA_HOME=/opt/jdk
CLASSPATH=.
PATH=$PATH:$JAVA_HOME/bin

如何验证java配置正确与否请百度。
2、配置ubuntu的IP
查出每一台电脑的ip,在每一台ubuntu的/etc/hosts文件中做一下修改
注释127.0.0.1这一行,如果有Localhost行也注释该行,并加入
ip 主机名 主机名
hosts所加内容如下:

# 127.0.0.1 **********
# localhost***********
ip1  主机名1  主机名1
ip2  主机名2  主机名2
ip3  主机名3  主机名3

提示:以下用到的主机名和用户名不是同一个名字,不知道两者关系的百度

3.安装hadoop
将hadoop安装包解压到/opt目录下,代码如下:

sudo tar zvxf ~/hadoop* 
sudo ln -s hadoop* hadoop
vim /etc/profile #在此文件中加入以下内容
HADOOP_HOME=/opt/hadoop
PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

保存后执行source /etc/profile

三台ubuntu全部执行

4.安装hadoop步骤 操作

此时可以查看你之前的工作是否正确,每台电脑执行代码

sudo chown –R 你的用户名 /opt
hadoop version

如果出现

Hadoop 2.*.*(自己安装的hadoop版本号)
Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r baa91f7c6bc9cb92be5982de4719c1c8af91ccff
Compiled by root on 2016-08-18T01:41Z
Compiled with protoc 2.5.0
From source with checksum 2e4ce5f957ea4db193bce3734ff29ff4
This command was run using /opt/hadoop-2.7.3/share/hadoop/common/hadoop-common-2.*.*.jar

如果报JAVA_HOME找不到,就在hadoop安装目录下的etc/hadoop/hadoop-env.sh 文件里找到JAVA_HOME,JAVA_HOME=/opt/jdk补全。
说明前期安装成功,可以执行下面的操作,如果不对,请返回前面步骤重新来过。

5.配置hadoop
此时需要将三台ubuntu分成两部分,一台作为主节点,剩下两台作为从节点(一般将hosts文件中的ip1的ubuntu作为主节点,其他两个作为从节点即:
ip1 主机名 1 用户名1
ip2 主机名 2 用户名2
ip3 主机名 3 用户名3),

在主节点做如下配置:
配置文件修改:
配置文件在/opt/hadoop/etc/hadoop/下,修改 mapred-site.xml.template、core-site.xml、hdfs-site.xml、yarn-site.xml四个文件,其他不动,代码如下:

mapred-site.xml.template:
复制mapred-site.xml.template :cp mapred-site.xml.template mapred-site.xml
执行vim mapred-site.xml加入以下代码:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

core-site.xml 加入以下代码:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://(此处写你hadoop主节点的主机名):9000</value>
</property>     
</configuration>

hdfs-site.xml 加入以下代码:

<configuration>
    <property>
        <name>dfs.nameservices</name>
        <value>hadoop-cluster1</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file: /opt/hadoop_data/hdfs/nn</value>
    </property>
    <property>
        <name>fs.checkpoint.dir</name>
        <value>file:/opt/hadoop_data/hdfs/checkpoint</value>
    </property>
    <property>
        <name>fs.checkpoint.edits.dir</name>
        <value>file:/opt/hadoop_data/hdfs/checkpointedits</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/opt/hadoop_data/hdfs/dn</value>
    </property>
</configuration>

yarn-site.xml 加入以下代码:

<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>主节点主机名</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.local-dirs</name>
        <value>/opt/hadoop_data/yarn/nodemanager</value>
    </property>
</configuration>

完成以上修改后,将将上面修改后的四个文件,复制到其他两台机器上的相同位置,不做任何修改
6、创建文件夹,每台ubuntu上执行下列代码:

sudo mkdir -p /opt/hadoop/logs
sudo mkdir -p /opt/hadoop_data/hdfs/nn
sudo mkdir -p /opt/hadoop_data/hdfs/dn
sudo mkdir -p /opt/hadoop_data/hdfs/checkpointedits
sudo mkdir -p /opt/hadoop_data/hdfs/checkpoint
sudo mkdir -p /opt/hadoop_data/yarn/nodemanager
sudo chown –R 你的用户名 /opt

7.验证hadoop集群
(1)在 主节点 执行hdfs namenode –format格式化文件系统
(2)配置ssh无密码登录:
在主节点执行ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
在你用户的家目录下的.ssh目录下产生两个文件,其中将id_rsa.pub拷贝到两个从节点的相同目录下,三台电脑都执行cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
验证:在主节点测试

ssh 主节点主机名
ssh 从节点主机名

(第一次可能需要密码,第二次如果不需要,就配置成功了,否则,重新配置)
(3)如果以上全部正确,请在主节点输入start-dfs.sh start-yarn.sh
(4)hdfs和YARN都有UI界面分别是
http://“主节点主机名”:50070, http://“主节点主机名”:80080
如果成功出现界面,就OK了,集群搭建完成