Hadoop2.0完全分布式集群搭建方法(CentOS7+Hadoop2.7.7)

栏目: 编程工具 · 发布时间: 6年前

内容简介:本文详细介绍搭建4个节点的完全分布式Hadoop集群的方法,Linux系统版本是CentOS 7,Hadoop版本是2.7.7,JDK版本是1.8。一、准备环境如何在VMware workstation上创建Linux虚拟机

本文详细介绍搭建4个节点的完全分布式Hadoop集群的方法,Linux系统版本是CentOS 7,Hadoop版本是2.7.7,JDK版本是1.8。

一、准备环境

1. 在VMware workstations上创建4个 Linux 虚拟机,并配置其静态IP。

如何在VMware workstation上创建Linux虚拟机

准备使用Linux虚拟机部署Hadoop集群,故在win10系统上安装了VMware workstation,具体安装非常简单,在此不做阐述。本文主要介绍如何在VMware workstation上创建Linux虚拟机。

步骤:

1. 如下图,在VMware workstation中,点击【创建新的虚拟机】。

Hadoop2.0完全分布式集群搭建方法(CentOS7+Hadoop2.7.7)

2. Linux虚拟机的具体配置如下:

Hadoop2.0完全分布式集群搭建方法(CentOS7+Hadoop2.7.7)

有关【克隆Linux虚拟机及配置网络】,请参考这里。

2. 配置DNS(每个节点)

编辑配置文件,添加主节点和从节点的映射关系。

#vim /etc/hosts

192.168.44.3 hadoop01

192.168.44.4 hadoop02

192.168.44.5 hadoop03

192.168.44.6 hadoop04

3. 关闭防火墙(每个节点)

#关闭服务

[root@hadoop01 opt]# systemctl stop firewalld

#关闭开机自启动

[root@hadoop01 opt]# systemctl disable firewalld

Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.

Removed symlink /etc/systemd/system/dbus-org.Fedoraproject.FirewallD1.service.

4. 配置免密码登录

有关【配置免密码登录方法】,请参考这里 https://www.linuxidc.com/Linux/2019-02/156882.htm

5. 配置 Java 环境(每个节点)

本文详细介绍Linux系统下配置Java环境的方法,使用JDK1.8版本。

1. 从Oracle官网上下载Java8版本。

下载链接:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

2. 上传Java包到Linux系统。

使用rz命令将Java tar包上传到Linux系统。(有关rz命令用法,请参考这里)

3. 解压Java安装包

[root@hadoop01 opt]# ls

jdk-8u101-linux-x64.tar.gz

[root@hadoop01 opt]# tar -zxvf jdk-8u101-linux-x64.tar.gz

...

jdk1.8.0_101/man/ja_JP.UTF-8/man1/javapackager.1

jdk1.8.0_101/man/ja_JP.UTF-8/man1/jstat.1

[root@hadoop01 opt]# ls

jdk1.8.0_101  jdk-8u101-linux-x64.tar.gz

4. 配置Java环境变量

#vim /etc/profile

# Java

export JAVA_HOME=/opt/jdk1.8.0_101  # 该路径为java安装路径

export CLASSPATH=$JAVA_HOME/lib/

export PATH=$PATH:$JAVA_HOME/bin

# :wq保存后,使配置文件生效

#source /etc/profile

5. 验证Java安装状态

[root@hadoop01 jdk1.8.0_101]# java -version

java version "1.8.0_101"

Java(TM) SE Runtime Environment (build 1.8.0_101-b13)

Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)

二、搭建Hadoop完全分布式集群

在各个节点上安装与配置Hadoop的过程都基本相同,因此可以在每个节点上安装好Hadoop后,在主节点master上进行统一配置,然后通过scp 命令将修改的配置文件拷贝到各个从节点上即可。

1. 下载Hadoop安装包,解压,配置Hadoop环境变量

有关【Hadoop安装包下载方法】。

Hadoop3.0版本的诞生,引入了很多新功能,为了验证Hadoop2.0与3.0版本的性能,需下载Hadoop的不同版本。故下文演示如何下载Hadoop安装包的方法。

1. 进入Apache Hadoop官网:http://hadoop.apache.org/

2. 点击左侧【Download】按钮,进入如下下载页面:

Hadoop2.0完全分布式集群搭建方法(CentOS7+Hadoop2.7.7)

可点击当前界面上显示的Binary安装包进入下载,亦可点击【mirror site】进入镜像页面,选择要安装的版本进行下载。

本文下载的Hadoop版本是2.7.7,指定一个目录(比如:/opt),使用rz命令上传Hadoop安装包到Linux系统,解压到指定目录,配置Hadoop环境变量,并使其生效。实现命令如下:

#配置Hadoop环境变量

[root@hadoop02 opt]# vim /etc/profile

#Hadoop

export HADOOP_HOME=/opt/hadoop-2.7.7 # 该目录为解压安装目录

export PATH=$PATH:$HADOOP_HOME/bin

export PATH=$PATH:$HADOOP_HOME/sbin

export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop

#保存后,使profile生效

[root@hadoop02 opt]# source /etc/profile

2. 配置Hadoop环境脚本文件中的JAVA_HOME参数

#进入Had安装目录下的etc/hadoop目录

[root@hadoop01 ~]#cd /opt/hadoop-2.7.7/etc/hadoop

#分别在hadoop-env.sh、mapred-env.sh、yarn-env.sh文件中添加或修改如下参数:

[root@hadoop01 hadoop]# vim hadoop-env.sh

[root@hadoop01 hadoop]# vim mapred-env.sh

[root@hadoop01 hadoop]# vim yarn-env.sh

export JAVA_HOME="/opt/jdk1.8.0_101"  # 路径为jdk安装路径

3. 修改Hadoop配置文件

Hadoop安装目录下的etc/hadoop目录中,需修改core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml、slaves(3.0之后为workers)文件,根据实际情况修改配置信息。

(1)core-site.xml

fs.defaultFS

hdfs://hadoop01:9000

hadoop.tmp.dir

/opt/hadoop-2.7.7/tmp

hadoop.proxyuser.root.hosts

*

hadoop.proxyuser.root.groups

*

(2)hdfs-site.xml

dfs.namenode.http-address

hadoop01:50070

dfs.namenode.name.dir

file:/opt/hadoop/dfs/name

dfs.datanode.data.dir

file:/opt/hadoop/dfs/data

dfs.replication

2

dfs.namenode.secondary.http-address

hadoop02:9001

dfs.webhdfs.enabled

true

dfs.permissions

false

配置为false后,可以允许不要检查权限就生成dfs上的文件,需防止误删操作

(3)mapred-site.xml

mapreduce.framework.name

yarn

mapreduce.jobhistory.address

hadoop01:10020

mapreduce.jobhistory.webapp.address

hadoop01:19888

(4)yarn-site.xml

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.nodemanager.auxservices.mapreduce.shuffle.class

org.apache.hadoop.mapred.ShuffleHandler

yarn.resourcemanager.address

hadoop01:8032

yarn.resourcemanager.scheduler.address

hadoop01:8030

yarn.resourcemanager.resource-tracker.address

hadoop01:8031

yarn.resourcemanager.admin.address

hadoop01:8033

yarn.resourcemanager.webapp.address

hadoop01:8088

yarn.nodemanager.resource.memory-mb

6144

yarn.scheduler.maximum-allocation-mb

61440

yarn.nodemanager.resource.cpu-vcores

2

yarn.log-aggregation-enable

true

yarn.log-aggregation.retain-seconds

604800

yarn.nodemanager.vmem-check-enabled

false

忽略虚拟内存的检查,如果你是安装在虚拟机上,这个配置很有用,配上去之后后续操作不易出问题。

yarn.resourcemanager.scheduler.class

org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler

(5)slaves文件

#增加从节点地址(若配置了hosts,可直接使用主机名,亦可用IP地址)

[root@hadoop01 hadoop]# vim slaves

hadoop02

hadoop03

hadoop04

4. 将配置好的文件夹拷贝到其他从节点

[root@hadoop01 hadoop-2.7.7]# scp -r /opt/hadoop-2.7.7 root@hadoop02:/opt/

[root@hadoop01 hadoop-2.7.7]# scp -r /opt/hadoop-2.7.7 root@hadoop03:/opt/

[root@hadoop01 hadoop-2.7.7]# scp -r /opt/hadoop-2.7.7 root@hadoop04:/opt/

5. 初始化 & 启动

#格式化

[root@hadoop01 hadoop-2.7.7]# bin/hdfs namenode -format

#启动

[root@hadoop01 hadoop-2.7.7]# sbin/start-dfs.sh

[root@hadoop01 hadoop-2.7.7]# sbin/start-yarn.sh

6. 验证Hadoop启动成功

#主节点

[root@hadoop01 hadoop-2.7.7]# jps

5895 Jps

5624 ResourceManager

5356 NameNode

#从节点

[root@hadoop02 hadoop]# jps

5152 SecondaryNameNode

5085 DataNode

5245 NodeManager

5357 Jps

[root@hadoop03 opt]# jps

5080 DataNode

5178 NodeManager

5278 Jps

[root@hadoop04 opt]# jps

5090 NodeManager

5190 Jps

4991 DataNode

7. Web端口访问

注:先开放端口或直接关闭防火墙

# 查看防火墙状态

firewall-cmd --state

# 临时关闭

systemctl stop firewalld

# 禁止开机启动

systemctl disable firewalld

在浏览器输入:http://hadoop01:8088打开Hadoop Web页面。

在浏览器输入:http://hadoop01:50070打开Hadoop Web页面。

Hadoop基本操作命令

#hadoop dfsadmin -report 查看hdfs集群的存储空间使用情况。

#hadoop fs -du -h 目录  查看当前目录下各个文件占得内存

#hadoop fs –rmr /tmp/aaa删除一个目录

#hadoop fs –put文件 hdfs文件目录上传一个文件

#hadoop fs –get  hdfs文件下载地址目录下载一个文件

#hadoop fs –moveFromLocal文件hdfs文件目录上传一个文件同时删除本地文件

#haddop fs –text hdfs目录查看文件内容

#haddopfs –cat hdfs目录查看文件内容

#hadoop job –list获取任务列表

#hadoop job –kill job-id杀死一个job

#hadoop-daemon.sh start datanoe加入一个新的节点

#hadoop mradmin/dfsadmin –refreshnones删除一个节点

#yarn application -kill application_任务id:停止在yarn上运行的spark任务,在resourcemanager上执行

#hadoop fs -ls .Trash/Current (显示Current目录)

#hadoop fs -rm -r .Trash/Current (删除Current目录及其子目录)

在 LinuxUbuntu 18.04/18.10上安装Hadoop图文详解  https://www.linuxidc.com/Linux/2018-11/155282.htm

CentOS 7 下搭建Hadoop 2.9 分布式集群 https://www.linuxidc.com/Linux/2018-11/155328.htm

更多Hadoop相关信息见 Hadoop 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=13

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-02/156881.htm


以上所述就是小编给大家介绍的《Hadoop2.0完全分布式集群搭建方法(CentOS7+Hadoop2.7.7)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Vim实用技巧

Vim实用技巧

[英] Drew Neil / 杨源、车文隆 / 人民邮电出版社 / 2014-5-1 / 59.00元

vim是一款功能丰富而强大的文本编辑器,其代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中得到非常广泛的使用。vim能够大大提高程序员的工作效率。对于vim高手来说,vim能以与思考同步的速度编辑文本。同时,学习和熟练使用vim又有一定的难度。 《vim实用技巧》为那些想要提升自己的程序员编写,阅读本书是熟练地掌握高超的vim技巧的必由之路。全书共21章,包括121个技巧。每一章......一起来看看 《Vim实用技巧》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

随机密码生成器
随机密码生成器

多种字符组合密码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具