Hadoop单机版环境搭建

文章目录

  • 一、前置条件
  • 二、配置免密登录(本地单机可不设置直接跳到下一节)
    • 2.1 配置映射
    • 2.2 生成公私钥
    • 2.3 授权
  • 三、Hadoop(HDFS)环境搭建
    • 3.1 下载并解压
    • 3.2 配置环境变量
    • 3.3 修改Hadoop配置
    • 3.4 关闭防火墙
    • 3.5 初始化
    • 3.6 启动HDFS
    • 3.7 验证是否启动成功
  • 四、Hadoop(YARN)环境搭建
    • 4.1 修改配置
    • 4.2 启动服务
    • 4.3 验证是否启动成功

一、前置条件

Hadoop 的运行依赖 JDK,需要预先安装,版本为1.8以上即可,这里不再赘述。

二、配置免密登录(本地单机可不设置直接跳到下一节)

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 3 月  15 09:48 id_rsa
-rw-r--r--. 1 root root  388 3 月  15 09:48 id_rsa.pub
# 写入公匙到授权文件
[root@hadoop001 .ssh]# cat id_rsa.pub >> authorized_keys
[root@hadoop001 .ssh]# chmod 600 authorized_keys

三、Hadoop(HDFS)环境搭建

3.1 下载并解压

下载 Hadoop 安装包,这里我下载的是 CDH 版本的,下载地址为:http://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.2
export  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
    <configuration>
        <property>
            <!--指定 namenode 的 hdfs 协议文件系统的通信地址-->
            <name>fs.defaultFS</name>
            <value>hdfs://hadoop001:8020</value>
        </property>
        <property>
            <!--指定 hadoop 存储临时文件的目录-->
            <name>hadoop.tmp.dir</name>
            <value>/home/hadoop/tmp</value>
        </property>
    </configuration>
    
  3. hdfs-site.xml
    指定副本系数和临时文件存储位置:
    <configuration>
        <property>
            <!--由于我们这里搭建是单机版本,所以指定 dfs 的副本系数为 1-->
            <name>dfs.replication</name>
            <value>1</value>
        </property>
    </configuration>
    
  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

此处启动失败,报了如下错误

~/software/hadoop-2.6.0-cdh5.15.1/sbin  ./start-dfs.sh
20/07/31 11:42:28 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting namenodes on [localhost]
localhost: ssh: connect to host localhost port 22: Connection refused
localhost: ssh: connect to host localhost port 22: Connection refused
Starting secondary namenodes [0.0.0.0]
0.0.0.0: ssh: connect to host 0.0.0.0 port 22: Connection refused
20/07/31 11:42:30 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

尝试两种办法:

1、偏好设置 – 共享 – 远程登录(打勾允许)

2、执行

sudo systemsetup -f -setremotelogin on

3.7 验证是否启动成功

方式一:执行 jps 查看 NameNodeDataNode 服务是否已经启动:

[root@hadoop001 hadoop-2.6.0-cdh5.15.2]# jps
9137 DataNode
9026 NameNode
9390 SecondaryNameNode

方式二:查看 Web UI 界面,端口为 50070:
Hadoop单机版环境搭建_第1张图片

四、Hadoop(YARN)环境搭建

4.1 修改配置

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

  1. mapred-site.xml
    # 如果没有mapred-site.xml,则拷贝一份样例文件后再修改
    cp mapred-site.xml.template mapred-site.xml
    
    <configuration>
        <property>
            <name>mapreduce.framework.namename>
            <value>yarnvalue>
        property>
    configuration>
    
  2. yarn-site.xml
    <configuration>
        <property>
            
            <name>yarn.nodemanager.aux-servicesname>
            <value>mapreduce_shufflevalue>
        property>
    configuration>
    

4.2 启动服务

进入 ${HADOOP_HOME}/sbin/ 目录下,启动 YARN:

./start-yarn.sh

4.3 验证是否启动成功

方式一:执行 jps 命令查看 NodeManagerResourceManager 服务是否已经启动:

[root@hadoop001 hadoop-2.6.0-cdh5.15.2]# jps
9137 DataNode
9026 NameNode
12294 NodeManager
12185 ResourceManager
9390 SecondaryNameNode

方式二:查看 Web UI 界面,端口号为 8088:
Hadoop单机版环境搭建_第2张图片

你可能感兴趣的:(大数据)