Hadoop 3.x 详细安装步骤

写在前面


如果你想通过这篇博客在本地成功搭建 Hadoop 集群的话,你需要先跟着视频课程 三天入门大数据实操课程  在本地搭建集群环境,在这个视频课程中你需要学习的章节是:

 

  1. VMWare WorkStation 安装
  2. 创建虚拟机
  3. 安装 Centos 7 操作系统
  4. Centos 7 网络配置方式说明
  5. Centos 7 网络配置
  6. 使用客户端登录操作虚拟机
  7. 克隆三台虚拟机
  8. 修改主机名
  9. ip 映射主机名
  10. 配置无密钥登录
  11. 虚拟机的文件上传和下载
  12. 关闭防火墙
  13. 安装 Java

请在看本篇博客之前务必学习完上面视频课程中章节,如果你能学习完 三天入门大数据实操课程 所有的章节的话就更好,因为你学完这个课程可以有以下三大收获:

1. 搭建一个属于自己的大数据集群
2. 使用大数据技术处理大数据文件
3. 建立大数据技术知识体系架构

Hadoop 安装

Hadoop 3.x 详细安装步骤请参考:三天入门大数据实操课程

本篇文章是 Hadoop 2.x 安装步骤

安装前


分别在 master、slave1、slave2 三台机器的 root 用户下的主目录下创建目录 bigdata,即执行下面的命令:

mkdir ~/bigdata

Hadoop 安装包下载


我们下载安装包的时候一般会去官网下载,Hadoop 的官网是 https://hadoop.apache.org/ 。

Hadoop 所有版本的安装包都放在 https://archive.apache.org/dist/hadoop/common/ 这个网址中,我们可以根据自己的需求下载相应的版本。

我们这篇文章以 Hadoop 2.x 系列的 Hadoop 2.7.5 版本为例来进行安装。实际上,Hadoop 2 中的所有版本的安装步骤基本都是一致的。我们可以在 master 机器上通过下面的命令来下载 Hadoop 安装包:

## 进入到主目录下的 bigdata 目录下
cd ~/bigdata

## 使用 wget 下载 hadoop 2.7.5 的安装包
wget https://archive.apache.org/dist/hadoop/common/hadoop-2.7.5/hadoop-2.7.5.tar.gz


第一次运行上面的 wget 命令的时候,会报如下的错误:

[root@master bigdata]# wget https://archive.apache.org/dist/hadoop/common/hadoop-2.7.5/hadoop-2.7.5.tar.gz
-bash: wget: command not found


当出现上面的错误的时候,我们需要使用 yum 来安装 wget :

## 安装 wget 命令
yum -y install wget


然后再执行下面的命令:

## 使用 wget 下载 hadoop 2.7.5 的安装包
wget https://archive.apache.org/dist/hadoop/common/hadoop-2.7.5/hadoop-2.7.5.tar.gz


上面命令执行完后,在当前的目录下会出现名字为 hadoop-2.7.5.tar.gz 的压缩安装包。我们通过下面的命令解压安装包:

## 解压 hadoop 压缩安装包
tar zxvf hadoop-2.7.5.tar.gz


执行完后,在当前的目录下会出现一个名为 hadoop-2.7.5 的文件目录,这个目录就是 hadoop 的安装目录。

至此,Hadoop 安装包下载完毕。

在 Hadoop 中包含了 3 个技术组件,分别是:

  1. 分布式存储技术 - HDFS
  2. 分布式资源管理技术 - Yarn
  3. 分布式计算技术 - MapReduce

那么,我们常说的 Hadoop 安装,实际上就包含了 HDFS 的安装、Yarn 的安装以及 MapReduce 的安装,我们接下来分别配置安装。

HDFS 配置安装


修改配置


执行下面的命令进入到 hadoop 的配置文件所在的目录:

cd ~/bigdata/hadoop-2.7.5/etc/hadoop/


1. 修改 core-site.xml 配置文件

vi core-site.xml


在 configuration 标签中添加如下的内容:

<property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:9999</value>
    <description>表示HDFS的基本路径</description>
</property>


修改完后进行保存退出。2. 创建 NameNode 和 DataNode 需要的文件目录
在 master 机器上执行下面的命令:

## 创建 NameNode 需要存储数据的文件目录
mkdir -p ~/bigdata/dfs/name

## 创建 DataNode 需要存放数据的文件目录
mkdir -p ~/bigdata/dfs/data

3. 修改 hdfs-site.xml 配置文件

vi hdfs-site.xml


在 configuration 标签中添加如下的内容:

<property>
    <name>dfs.replication</name> 
     <value>1</value>
     <description>表示数据块的备份数量,不能大于DataNode的数量</description>
</property>
<property>
    <name>dfs.namenode.name.dir</name>
    <value>/home/hadoop-twq/bigdata/dfs/name</value>
    <description>表示 NameNode 需要存储数据的文件目录</description>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>/home/hadoop-twq/bigdata/dfs/data</value>
    <description>表示 DataNode 需要存放数据的文件目录</description>
</property>


添加完后保存退出。

4. 修改 slaves 文件
执行下面的命令将 slaves 的机器名字填入到 slaves 文件中:

vi slaves


删除文件中 localhost ,然后添加如下内容:
 

slave1
slave2

5. 配置 Hadoop 依赖的 JAVA_HOME
修改配置 hadoop-env.sh :

vi hadoop-env.sh


添加如下的 JAVA_HOME

export JAVA_HOME=/usr/local/lib/jdk1.8.0_161



6. 拷贝配置到 slave1 和 slave2 上
在 master 机器中执行如下的命令:
 

## 将 NameNode 存储的文件目录以及 DataNode 存储的文件目录拷贝到 slave1 和 slave2 中
scp -r ~/bigdata/dfs root@slave1:~/bigdata
scp -r ~/bigdata/dfs root@slave2:~/bigdata

## 将在 master 中配置好的 hadoop 安装目录拷贝到 slave1 和 slave2 中
scp -r ~/bigdata/hadoop-2.7.5 root@slave1:~/bigdata
scp -r ~/bigdata/hadoop-2.7.5 root@slave2:~/bigdata


7. 配置环境变量
在 master 机器上执行下面的命令,配置 hadoop 的环境变量:

## 修改环境变量
vi ~/.bash_profile


添加如下的内容:

export HADOOP_HOME=~/bigdata/hadoop-2.7.5
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin


然后执行下面的命令,使得环境变量生效:
 

source ~/.bash_profile

8. 启动验证
到目前为止,HDFS 的配置已经全部结束,接下来我们启动 HDFS 集群,并且验证。

第一次启动 HDFS 之前,需要先对集群做格式化处理,执行下面的命令:
 

## 格式化 HDFS 集群的 namenode
hdfs namenode -format

注意:格式化只能执行一次,如果你执行了多次,那么集群启动的时候会不正常,这个时候的解决方案就是重新安装。

接下来我们在 master 节点中执行下面的命令来启动 HDFS 集群:
 

start-dfs.sh

我们分别在 master 、slave1、slave2 机器上执行 jps 命令,如果能看到如下的进程,说明机器成功启动:


我们也可以打开浏览器,访问网址:http://master:50070/ 。 如果出现下面的界面,也说明 HDFS 安装成功:

9. 停止 HDFS 集群
我们可以在 master 机器上执行下面的命令来停止 HDFS 集群:
 

stop-dfs.sh

Yarn 配置安装


我们现在基于上面 HDFS 的安装配置来配置安装 Yarn,你会发现还是很简单的。

1. 创建 Yarn 存储临时数据的文件目录


在 master 机器上执行如下命令:
 

mkdir -p ~/bigdata/yarn/local-dir

2. 修改 yarn-site.xml 配置文件


在 master 机器上执行如下的命令来修改 yarn-site.xml 文件:

cd ~/bigdata/hadoop-2.7.5/etc/hadoop/

vi yarn-site.xml


在文件中的 configuration 标签中增加如下的内容:

<property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
        <description>表示ResourceManager安装的主机</description>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>master:8032</value>
        <description>表示ResourceManager监听的端口</description>
    </property>
    <property>
        <name>yarn.nodemanager.local-dirs</name>
        <value>/home/hadoop-twq/bigdata/yarn/local-dir</value>
        <description>表示nodeManager中间数据存放的地方</description>
    </property>
    <property>
            <name>yarn.nodemanager.resource.memory-mb</name>
            <value>1630</value>
       <description>表示这个NodeManager管理的内存大小</description>
    </property>
    <property>
        <name>yarn.nodemanager.resource.cpu-vcores</name>
            <value>2</value>
       <description>表示这个NodeManager管理的cpu个数</description>
    </property>

3. 拷贝 yarn 相关配置到 slave1 和 slave2 中


在 master 机器上执行如下的命令:

scp ~/bigdata/hadoop-2.7.5/etc/hadoop/yarn-site.xml root@slave1:~/bigdata/hadoop-2.7.5/etc/hadoop/
scp ~/bigdata/hadoop-2.7.5/etc/hadoop/yarn-site.xml root@slave2:~/bigdata/hadoop-2.7.5/etc/hadoop/

scp -r ~/bigdata/yarn/local-dir root@slave1:~/bigdata/
scp -r ~/bigdata/yarn/local-dir root@slave2:~/bigdata/

4. 启动验证

在 master 机器上执行下面的命令,来启动 yarn :
 

start-yarn.xml

我们可以在三台机器上执行 jps 来查看 yarn 的相关进程,如下图:

看到以上三个进程,说明 Yarn 集群安装成功。

我们也可以打开浏览器,输入网址:http://master:8088/ 来访问 Yarn 集群,如果出现下面的界面,也可以说明集群安装成功:

5. 停止 Yarn 集群


我们可以在 master 机器上执行下面的命令来停止 Yarn 集群:

stop-yarn.sh


MapReduce 配置安装


在安装 MapReduce 之前,需要先保证 Yarn 集群是停止的,可以通过执行 stop-yarn.sh 来完成。

1. 修改 yarn-site.xml 配置


在 master 机器上修改 yarn-site.xml 文件:

cd ~/bigdata/hadoop-2.7.5/etc/hadoop/

vi yarn-site.xml


添加一个配置项:

<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    <description>为map reduce应用打开shuffle 服务</description>
</property>

2. 修改 mapred-site.xml 配置


在 master 机器上执行如下的命令:
 

## 创建 mapred-site.xml 文件
cp mapred-site.xml.template mapred-site.xml

然后修改 mapred-site.xml 配置文件:

vi mapred-site.xml


添加如下的配置:

<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    <description>向yarn申请资源</description>
</property>

3. 将 MapReduce 相关的配置文件同步到 slave1 和 slave2 上


在 master 中执行下面的命令:
 

scp yarn-site.xml mapred-site.xml root@slave1:~/bigdata/hadoop-2.7.5/etc/hadoop
scp yarn-site.xml mapred-site.xml root@slave2:~/bigdata/hadoop-2.7.5/etc/hadoop

4. 启动 yarn


在 master 机器上执行下面的命令
 

start-yarn.sh

5. 验证 MapReduce 


在 master 上执行下面的命令:

## 准备目录和数据
hadoop fs -mkdir /input
hadoop fs -put ~/bigdata/hadoop-2.7.5/etc/hadoop /input
hadoop fs -rm -r /output

## 执行 MapReduce 任务
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar grep /input/hadoop /output 'dfs[a-z.]+'


出现下面的界面:

说明 MapReduce 的配置安装也是成功的。

系统学习大数据技术大数据高级工程师就业课程

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值