一篇搞定hadoop安装,建议收藏

369 阅读2分钟

导语

之前后台小伙伴私信我想了解hadoop的单机环境安装,今天给大家安排上了,废话不多说,直接上干货。

目录

  1. 前置条件
  2. 配置 SSH 免密登录
  3. Hadoop(HDFS)环境搭建
  4. Hadoop(YARN)环境搭建

1、前置条件

Hadoop 的运行依赖 JDK,需要预先安装,安装步骤见:

1.1 下载并解压

在官网 下载所需版本的 JDK,这里我下载的版本为JDK 1.8 ,下载后进行解压:

[root@ java]# tar -zxvf jdk-8u201-linux-x64.tar.gz
1.2 设置环境变量
[root@ java]# vi /etc/profile添加如下配置:export JAVA_HOME=/usr/java/jdk1.8.0_201  export JRE_HOME=${JAVA_HOME}/jre  export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  export PATH=${JAVA_HOME}/bin:$PATH执行 source 命令,使得配置立即生效:[root@ java]# source /etc/profile
1.3 检查是否安装成功
[root@ java]# java -version显示出对应的版本信息则代表安装成功。java version "1.8.0_201"Java(TM) SE Runtime Environment (build 1.8.0_201-b09)Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

2、配置免密登录

Hadoop 组件之间需要基于 SSH 进行通讯。

2.1 配置映射

配置 ip 地址和主机名映射:

vim /etc/hosts# 文件末尾增加192.168.43.202  hadoop001
2.2 生成公私钥

执行下面命令行生成公匙和私匙:

ssh-keygen -t rsa
2.3 授权

进入 ~/.ssh 目录下,查看生成的公匙和私匙,并将公匙写入到授权文件:

[root@@hadoop001 sbin]#  cd ~/.ssh[root@@hadoop001 .ssh]# ll-rw-------. 1 root root 1675 315 09:48 id_rsa-rw-r--r--. 1 root root  388 315 09:48 id_rsa.pub# 写入公匙到授权文件[root@hadoop001 .ssh]# cat id_rsa.pub >> authorized_keys[root@hadoop001 .ssh]# chmod 600 authorized_keys

3、Hadoop(HDFS)环境搭建

3.1 下载并解压

下载 Hadoop 安装包,这里我下载的是 CDH 版本的,下载地址为:archive.cloudera.com/cdh5/cdh/5/

# 解压tar -zvxf hadoop-2.6.0-cdh5.15.2.tar.gz 
3.2 配置环境变量
# vi /etc/profile配置环境变量:export HADOOP_HOME=/usr/app/hadoop-2.6.0-cdh5.15.2export  PATH=${HADOOP_HOME}/bin:$PATH执行 source 命令,使得配置的环境变量立即生效:# source /etc/profile
3.3 修改Hadoop配置

进入 ${HADOOP_HOME}/etc/hadoop/ 目录下,修改以下配置:

  1. hadoop-env.sh

    JDK安装路径export JAVA_HOME=/usr/java/jdk1.8.0_201/

  2. core-site.xml

    fs.defaultFS hdfs://hadoop001:8020 hadoop.tmp.dir /home/hadoop/tmp

  3. hdfs-site.xml

    指定副本系数和临时文件存储位置: dfs.replication 1

  4. slaves

    配置所有从属节点的主机名或 IP 地址,由于是单机版本,所以指定本机即可:hadoop001

3.4 关闭防火墙
不关闭防火墙可能导致无法访问 Hadoop 的 Web UI 界面:# 查看防火墙状态sudo firewall-cmd --state# 关闭防火墙:sudo systemctl stop firewalld.service
3.5 初始化
第一次启动 Hadoop 时需要进行初始化,进入 ${HADOOP_HOME}/bin/ 目录下,执行以下命令:[root@hadoop001 bin]# ./hdfs namenode -format
3.6 启动HDFS
进入 ${HADOOP_HOME}/sbin/ 目录下,启动 HDFS:[root@hadoop001 sbin]# ./start-dfs.sh

3.7 验证是否启动成功

方式一:执行 jps 查看 NameNode 和 DataNode 服务是否已经启动:[root@hadoop001 hadoop-2.6.0-cdh5.15.2]# jps9137 DataNode9026 NameNode9390 SecondaryNameNode方式二:查看 Web UI 界面,端口为 50070:
![](https://imgkr2.cn-bj.ufileos.com/76c823be-8ca8-45e3-a8dd-3941eab03935.png?UCloudPublicKey=TOKEN_8d8b72be-579a-4e83-bfd0-5f6ce1546f13&Signature=knq2W4aMmkjhLSAntCt%252Fti1R6OI%253D&Expires=1603972641)

4、Hadoop(YARN)环境搭建

4.1 修改配置

进入 ${HADOOP_HOME}/etc/hadoop/ 目录下,修改以下配置:

  1. mapred-site.xml

    如果没有mapred-site.xml,则拷贝一份样例文件后再修改cp mapred-site.xml.template mapred-site.xml mapreduce.framework.name yarn

  2. yarn-site.xml

    yarn.nodemanager.aux-services mapreduce_shuffle

4.2 启动服务

进入 ${HADOOP_HOME}/sbin/ 目录下,启动 YARN:./start-yarn.sh

4.3 验证是否启动成功

方式一:执行 jps 命令查看 NodeManager 和 ResourceManager 服务是否已经启动:[root@hadoop001 hadoop-2.6.0-cdh5.15.2]# jps9137 DataNode9026 NameNode12294 NodeManager12185 ResourceManager9390 SecondaryNameNode方式二:查看 Web UI 界面,端口号为 8088:
![](https://imgkr2.cn-bj.ufileos.com/9c10b982-4355-43de-97d0-b73fa842f573.png?UCloudPublicKey=TOKEN_8d8b72be-579a-4e83-bfd0-5f6ce1546f13&Signature=mP2gRXjtzxxFsrVrOkfiH5ywfOQ%253D&Expires=1603972654)

更多干货,关注: 【数据猿温大大】