千家信息网

Hadoop2.X的环境怎么配置

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,本篇内容主要讲解"Hadoop2.X的环境怎么配置",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Hadoop2.X的环境怎么配置"吧!一、安装之前的准备1
千家信息网最后更新 2026年11月04日Hadoop2.X的环境怎么配置

本篇内容主要讲解"Hadoop2.X的环境怎么配置",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Hadoop2.X的环境怎么配置"吧!

一、安装之前的准备

1.1 修改主机名称

进入 Linux 系统查看本机的主机名。通过 hostname 命令查看。

[root@localhost ~]# hostname
localhost.localdomain

如果此时需要修改主机名则可以按照如下的方式进行修改

范例一:临时修改主机名称为Hadoop01 hostname hadoop01 重启之后失效

范例二:永久修改主机名称为Hadoop01

vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop01

在修改完主机名称之后,需要编辑/etc/hosts 文件需要把主机名称与IP地址进行映射

vi /etc/hosts 在该文件下添加如下内容

192.168.1.128 hadoop01 # 地址是自己主机名称的ip

1.2 关闭防火墙

1)service iptables stop 关闭防火墙

2)chkconfig iptables off 永久关闭防火墙启动

3)chkconfig iptables --list 查看防火墙开机启动状态

1.3 规划软件安装目录

1)创建安装包的保存目录,以及安装目录

mkdir -p /opt/software 保存软件的安装包

mkdir -p /opt/app 软件的安装路径

1.4 创建Hadoop用户,以及赋予sudo权限

1)创建Hadoop用户,以后的操作都是在hadoop用户下完成的

useradd hadoop 创建hadoop用户

passwd hadoop 为hadoop用户设置密码

2)为hadoop用户赋予sudo权限

在root用户下,执行visudo命令编辑如下内容

Allow root to run any commands anywhere root ALL=(ALL) ALL

hadoop ALL=(ALL) ALL 为hadoop用户设置sudo权限

Same thing without a password %wheel ALL=(ALL) NOPASSWD: ALL hadoop ALL=(ALL) NOPASSWD: ALL. 为hadoop用户设置免密码sudo权限

1.5 安装JDK环境

首先先把jdk的安装包上传到software 文件夹下,之后对其安装

1)解压 sudo tar -zvxf jdk-8u181-linux-x64.tar.gz

2)配置JDK环境变量

首先获取JDK的安装路径

[hadoop@hadoop01 jdk1.8.0_181]$ pwd
/opt/soft/jdk1.8.0_181

接下来打开 /etc/profile 文件进行环境变量的设置

vi /etc/profile

在 profie 文件末尾添加 jdk 路径:

#JAVA_HOME

export JAVA_HOME=/data/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH

保存后推出 :wq

完成以上的操作之后,配置文件并不能立即生效,需要使用到如下命令,使配置文件立即生效

[hadoop@hadoop01 jdk1.8.0_181]$ source /etc/profile

之后测试JDK环境变量是否配置成功,使用如下命令输出JDK的版本信息

[hadoop@hadoop01 jdk1.8.0_181]$ java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

如果能看到如上的信息,说明JDK的环境变量已经配置成功

1.6 安装Hadoop环境

1)进入到软件包的安装路径下:

[hadoop@hadoop01 /]$ cd /opt/soft/

对hadoop安装包进行解压

[hadoop@hadoop01 soft]$ sudo tar -zvxf hadoop-2.7.2.tar.gz

解压成功之后,hadoop的安装目录结构如下:

bin:Hadoop最基本的管理脚本和使用脚本所在目录,这些脚本是sbin目录下管理脚本的基础实现,用户可以直接使用这些脚本管理和使用hadoop

etc:Hadoop配置文件所在目录,包括core-site.xml, hdfs-site.xml, mapred-site.xml等从hadoop1.0继承而来的配置文件和yarn-site.xml等hadoop 2.0新增的配置文件

include:对外提供的编程酷头文件(具体动态库和静态库在lib目录中),这些头文件均是用c++定义的,通常用于c++程序访问hdfs或者编写mapreduce程序

lib:该目录包含了Hadoop对外提供的的编程动态库和静态库,与include目录中的头文件结合使用。

libexec:各个服务对应的shell配置文件所在目录,可用于配置日志输出目录,启动参数(比如JVM参数)等基本信息。

sbin:Hadoop管理脚本所在目录,主要包含HDFS和YARN中各类服务的启动/关闭脚本

share:Hadoop各个模块编译后的jar包所在目录

2) 配置hadoop环境

hadoop需要我们配置的相关文件都存放在$HADOOP_HOME/etc/hadoop目录下面,首先进入到该目录

[hadoop@hadoop01 hadoop]$ cd etc/hadoop/

进入到该目录之后使用ls 命令查看该目录下的文件信息

-rw-r--r--. 1 root root 4436 May 22 2017 capacity-scheduler.xml
-rw-r--r--. 1 root root 1335 May 22 2017 configuration.xsl
-rw-r--r--. 1 root root 318 May 22 2017 container-executor.cfg
-rw-r--r--. 1 root root 774 May 22 2017 core-site.xml
-rw-r--r--. 1 root root 3670 May 22 2017 hadoop-env.cmd
-rw-r--r--. 1 root root 4224 May 22 2017 hadoop-env.sh
-rw-r--r--. 1 root root 2598 May 22 2017 hadoop-metrics2.properties
-rw-r--r--. 1 root root 2490 May 22 2017 hadoop-metrics.properties
-rw-r--r--. 1 root root 9683 May 22 2017 hadoop-policy.xml
-rw-r--r--. 1 root root 775 May 22 2017 hdfs-site.xml
-rw-r--r--. 1 root root 1449 May 22 2017 httpfs-env.sh
-rw-r--r--. 1 root root 1657 May 22 2017 httpfs-log4j.properties
-rw-r--r--. 1 root root 21 May 22 2017 httpfs-signature.secret
-rw-r--r--. 1 root root 620 May 22 2017 httpfs-site.xml
-rw-r--r--. 1 root root 3518 May 22 2017 kms-acls.xml
-rw-r--r--. 1 root root 1527 May 22 2017 kms-env.sh
-rw-r--r--. 1 root root 1631 May 22 2017 kms-log4j.properties
-rw-r--r--. 1 root root 5511 May 22 2017 kms-site.xml
-rw-r--r--. 1 root root 11237 May 22 2017 log4j.properties
-rw-r--r--. 1 root root 951 May 22 2017 mapred-env.cmd
-rw-r--r--. 1 root root 1383 May 22 2017 mapred-env.sh
-rw-r--r--. 1 root root 4113 May 22 2017 mapred-queues.xml.template
-rw-r--r--. 1 root root 758 May 22 2017 mapred-site.xml.template
-rw-r--r--. 1 root root 10 May 22 2017 slaves
-rw-r--r--. 1 root root 2316 May 22 2017 ssl-client.xml.example
-rw-r--r--. 1 root root 2268 May 22 2017 ssl-server.xml.example
-rw-r--r--. 1 root root 2250 May 22 2017 yarn-env.cmd
-rw-r--r--. 1 root root 4567 May 22 2017 yarn-env.sh
-rw-r--r--. 1 root root 690 May 22 2017 yarn-site.xml

我们首先可以发现,这些文件目前的权限都是基于root用户的,但是我们现在使用的是hadoop用户,hadoop用户并没有这些文件的权限,所以首先需要修改权限

使用chown 命令修改用户与用户组权限

sudo chown -R hadoop:hadoop /opt/soft/hadoop-2.7.2/

修改完成之后再次使用ls命令查看文件,查看是否修改成功 [hadoop@hadoop01 hadoop]$ ll

-rw-r--r--. 1 hadoop hadoop 4436 May 22 2017 capacity-scheduler.xml
-rw-r--r--. 1 hadoop hadoop 1335 May 22 2017 configuration.xsl
-rw-r--r--. 1 hadoop hadoop 318 May 22 2017 container-executor.cfg
-rw-r--r--. 1 hadoop hadoop 774 May 22 2017 core-site.xml
-rw-r--r--. 1 hadoop hadoop 3670 May 22 2017 hadoop-env.cmd
-rw-r--r--. 1 hadoop hadoop 4224 May 22 2017 hadoop-env.sh
-rw-r--r--. 1 hadoop hadoop 2598 May 22 2017 hadoop-metrics2.properties
-rw-r--r--. 1 hadoop hadoop 2490 May 22 2017 hadoop-metrics.properties
-rw-r--r--. 1 hadoop hadoop 9683 May 22 2017 hadoop-policy.xml
-rw-r--r--. 1 hadoop hadoop 775 May 22 2017 hdfs-site.xml
-rw-r--r--. 1 hadoop hadoop 1449 May 22 2017 httpfs-env.sh
-rw-r--r--. 1 hadoop hadoop 1657 May 22 2017 httpfs-log4j.properties
-rw-r--r--. 1 hadoop hadoop 21 May 22 2017 httpfs-signature.secret
-rw-r--r--. 1 hadoop hadoop 620 May 22 2017 httpfs-site.xml
-rw-r--r--. 1 hadoop hadoop 3518 May 22 2017 kms-acls.xml
-rw-r--r--. 1 hadoop hadoop 1527 May 22 2017 kms-env.sh
-rw-r--r--. 1 hadoop hadoop 1631 May 22 2017 kms-log4j.properties
-rw-r--r--. 1 hadoop hadoop 5511 May 22 2017 kms-site.xml
-rw-r--r--. 1 hadoop hadoop 11237 May 22 2017 log4j.properties
-rw-r--r--. 1 hadoop hadoop 951 May 22 2017 mapred-env.cmd
-rw-r--r--. 1 hadoop hadoop 1383 May 22 2017 mapred-env.sh
-rw-r--r--. 1 hadoop hadoop 4113 May 22 2017 mapred-queues.xml.template
-rw-r--r--. 1 hadoop hadoop 758 May 22 2017 mapred-site.xml.template
-rw-r--r--. 1 hadoop hadoop 10 May 22 2017 slaves
-rw-r--r--. 1 hadoop hadoop 2316 May 22 2017 ssl-client.xml.example
-rw-r--r--. 1 hadoop hadoop 2268 May 22 2017 ssl-server.xml.example
-rw-r--r--. 1 hadoop hadoop 2250 May 22 2017 yarn-env.cmd
-rw-r--r--. 1 hadoop hadoop 4567 May 22 2017 yarn-env.sh
-rw-r--r--. 1 hadoop hadoop 690 May 22 2017 yarn-site.xml

通过再次查看我们发现,现在的权限已经全部修改为hadoop ,这样我们就可以在hadoop用户下对这些文件进行操作了

完成了以上的配置之后,我们接下来首先需要配置如下文件

hadoop-env.sh: 用于hadoop的环境变量配置文件

#The java implementation to use.
export JAVA_HOME=/opt/soft/jdk1.8.0_181

在该配置文件中,找到如上内容,并且修改JAVA_HOME 为自己的JDK路径 配置完成之后,可以在hadoop根路径下,输入如下命令

bin/hadoop

Usage: hadoop [--config confdir] [COMMAND | CLASSNAME]
CLASSNAME run the class named CLASSNAME
or
where COMMAND is one of:
fs run a generic filesystem user client
version print the version
jar run a jar file
note: please use "yarn jar" to launch
YARN applications, not this command.
checknative [-a|-h] check native hadoop and compression libraries availability
distcp copy file or directories recursively
archive -archiveName NAME -p * create a hadoop archive
classpath prints the class path needed to get the
credential interact with credential providers
Hadoop jar and the required libraries
daemonlog get/set the log level for each daemon
trace view and modify Hadoop tracing settings

Most commands print help when invoked w/o parameters.

如果能看到如上的信息,说明基本的运行环境已经搭建完成了

二、Hadoop运行模式

Hadoop的运行模式,分为以下几种:

1) 本地模式(默认模式)

不需要启用单独进程,直接可以运行,测试和开发时使用。

2)伪分布模式

等同于完全分布式,只有一个节点。

3)完全分布式模式

多个节点一起运行。

2.1 本地运行Hadoop官方案例Grep

对于这个案例来说,主要的作用就是,在一堆文件中与规定的正则表达式进行匹配,把匹配成功的单词出现的次数,进行统计

$ mkdir input
$ cp etc/hadoop/*.xml input
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output 'dfs[a-z.]+'
$ cat output/*

以上为官网上给出的案例代码

从以上的案例代码可以得出,首先需要创建一个目录,用于存放需要统计的文件,而对于统计结果的保存目录则不用以前创建,注意:Hadoop中输出结果的目录是不能提前存在的

范例:运行grep案例

1)在hadoop根目录下创建一个文件夹input

[hadoop@hadoop01 hadoop-2.7.2]$ mkdir input

2) 将hadoop的xml配置文件复制到input

[hadoop@hadoop01 hadoop-2.7.2]$ cp etc/hadoop/*.xml input/

3) 执行share目录下的mapreduce程序

[hadoop@hadoop01 hadoop-2.7.2]$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output 'dfs[a-z.]+'

4) 查看输出结果

[hadoop@hadoop01 hadoop-2.7.2]$ cat output/*
1 dfsadmin

2.2 运行官方wordcount案例

1) 在hadoop根目录中创建用于保存统计文件的wcinput目录

[hadoop@hadoop01 hadoop-2.7.2]$ mkdir wcinput

2) 在 wcinput 文件下创建一个 wordcount.txt 文件

[hadoop@hadoop01 wcinput]$ vi worldcount.txt

hello java world input
hadoop hive zookeeper java
world input hello hadoop
hbase zookeeper sqoop

3) 执行wordcount案例程序

[hadoop@hadoop01 hadoop-2.7.2]$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount wcinput wcoutput

4) 查看结果

[hadoop@hadoop01 hadoop-2.7.2]$ cat wcoutput/part-r-00000
hadoop 2
hbase 1
hello 2
hive 1
input 2
java 2
sqoop 1
world 2
zookeeper 2

通过以上的方式,就可以完成Hadoop的最基本的环境搭建,以及运行Hadoop的一些案例

到此,相信大家对"Hadoop2.X的环境怎么配置"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

文件 目录 配置 用户 环境 权限 运行 主机 命令 案例 脚本 名称 模式 路径 成功 信息 内容 变量 所在 程序 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 耶加雪菲 湖北九亚互联网络科技有限公司 华服互联网科技靠谱吗 美国互联网保险保险科技 互联网科技股票 易通互联网络科技有限公司 猫创互联网科技 中国最先进互联网科技公司 中国的互联网科技企业的崛起 互联网科技寓意 厦门比较好的科技互联网公司 河南猎农互联网科技有限公司 速维有品互联网信息科技(苏州)有限公司 燊美集互联网科技有限公司 华中科技大学互联网的牛人 美国五大互联网科技公司市值多少 玉溪新华互联网科技怎么选 深圳互联网科技园地址 互联网的黑科技实验室 高科技和互联网的现代国家 什么是科技互联网 互联网金融公司科技 未来的互联网科技 重庆科技学院互联网 新华互联网科技校企合作 互联网在线教育科技创业 互联网科技手机排行榜 科技互联网专业工作会议发言稿 互联网科技创新方面的资料 银川新华互联网科技学校招聘
0