栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

centos7 Hadoo3.3.1环境配置总结

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

centos7 Hadoo3.3.1环境配置总结

前几天心血来潮,突然想学习一下大数据,去百度和知乎看了一些大神的建议,决定从Hadoop入手。由于好久不用Linux,这次配置的过程踩了不少坑,本着为人民服务的原则,希望能给其他小白提供一些帮助。

1、推荐使用CentOS+VMware虚拟机

因为Ubuntu相比较其他Linux系统有着太多基础用户,我觉得肯定有人会因为操作习惯不去选择centos。如果你是大神,那这段话直接略过,但如果你是技术一般的小白,我推荐各位使用CentOS。我使用的是CentOS7,自我感觉,在centos中配置Hadoop的教程还是挺多的,并不会影像使用。
此外,真正让我不推荐大家使用Ubuntu的原因,还是因为穷的原因。毕竟Ubuntu的图形界面,太过于占用系统资源,不过话说回来,对于小白,命令行界面却又过于困难。我的建议则很简单,安装CentOS自带的GUI图形界面。
接下来我讲解一下我的安装推荐。
我的电脑总共的内存是16G,i5处理器,使用的是win10系统。可供参考的虚拟机硬件配置如下:
单个虚拟机建议2G内存,1个CPU,硬盘20G或以上。
安装时如果想使用图形界面,安装到以下界面时选择安装图形界面。


也可以选择server with GUI,同样是图形界面。

接下来内容已经没有什么特别注意的了,其他博客给的教程已经够多了。
安装一台centos对于Hadoop来说是不够的,我相信其他的教程中也不会只让你配置一台虚拟机,但还好,VMware有虚拟机克隆。
通过在VMware虚拟机列表中,选中要克隆的虚拟机,右击→管理→克隆,接下来的流程比较简单,克隆时选择虚拟机当前状态→创建完整克隆→命名新虚拟机,即可。
一般来讲,一台虚拟机不足以满足Hadoop需求,我推荐克隆两台主机。总共三台虚拟机,一台主节点,两台分节点。
我在一些教程中看到,克隆后的虚拟机需要配置网络才能联网,可惜的是,我克隆出的虚拟机并没有出现不能上网的情况。此外,如果你安装时选择了图像界面,重新进行网络配置还是很方便的。
此外,图形界面比较吃系统资源,如果发现系统运行卡慢,可以修改虚拟机,改成开机进入命令行。

systemctl set-default graphical.target  # 将默认模式修改为图形界面模式
systemctl set-default multi-user.target # 将默认模式修改为命令行模式

注意:CentOS 7和CentOS 6的设置命令不不同的。

但克隆后的虚拟机一般也是需要配置静态网络并且修改主机名。我的三个系统主机名分别为Hadoop01,Hadoop02和Hadoop03。配置静态网络且修改主机名后,再修改系统的hosts文件,实现主机名和ip地址的映射,对接下来的操作尤为重要。但因为步骤没有保存,这次暂且略过,今后有空我再补上。

2、环境配置

Hadoop所需的环境配置包括java环境、Hadoop安装、网络配置和ssh免密登陆。具体的细节我建议大家去百度,毕竟我一下子写不了这么多的内容。我在此只能提一下需要注意的地方。
首先是java环境。很多Linux系统有自带的java环境,(使用java -version有正确输出)但没有再 /etc/profile中配置JAVA_HOME,大家可以先使用以下命令查询下java的路径。

~/Desktop$ which java
/usr/bin/java
~/Desktop$  ls -lrt /usr/bin/java
lrwxrwxrwx 1 root root 22 11月 19 15:23 /usr/bin/java -> /etc/alternatives/java
k~/Desktop$  ls -lrt /etc/alternatives/java
lrwxrwxrwx 1 root root 46 11月 19 15:23 /etc/alternatives/java -> /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

得到java路径后,使用sudo vi /etc/profile 编辑文件,加入以下内容:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64/jre
export PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH

JAVA_HOME后跟自己系统的java路径。
编辑完后记得使用 source /etc/profile 指令使配置文件生效。
hadoop安装对于大家应该不会出什么问题,解压到指定目录即可。如果大家选择了克隆虚拟机,由于系统文件相同,可以采用在主节点配置后,将配置文件发送到其他两台节点。具体步骤如下:
创建安装目录
我的三台虚拟机分别名为 Hadoop01、Hadoop02和Hadoop03,分别在三台主机的根目录下创建三个文件夹:
/export/data/ :存放数据类文件;
/export/servers/ :存放服务类软件;
/export/software/ :存放安装包文件。
记住,三台主机都要创建。目录的图片示意如下:


Hadoop的下载网站
https://hadoop.apache.org/releases.html

下载后将文件解压到/export/servers/目录下。先cd到Hadoop的安装包目录下,使用以下命令:

tar -zxvf hadoop-3.3.1.tar.gz -C /export/servers/

注意,-C是大写,Hadoop的文件名不对应的话记得改。
解压后,使用 sudo vi /etc/profile指令,在文件末尾加入Hadoop环境变量。

export HADOOP_HOME=/export/servers/hadoop-3.3.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

编辑完后使用 source /etc/profile 指令使配置文件生效。
再使用Hadoop version,看到Hadoop的版本号,就说明安装完成了。

Hadoop集群配置
修改hadoop-env.sh文件。
该文件位于/etc/hadoop/目录下,使用文本编辑器或者vi打开该文件,加入JAVA_HOME参数位置,参照如下:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64/jre

修改core-site.xml文件
该文件主要配置HDFS地址、端口号,已经临时文件的目录,打开文件,添加以下内容:


    fs.defaultFS
    hdfs://hadoop01:9000


    hadoop.tmp.dir
    /export/servers/hadoop-3.3.1/tmp

修改hdfs-site.xml文件
该文件主要设置hdfs的namenode和datanode两大进程。配置如下:

   
      dfs.replication
      3
      副本个数,配置默认是3,应小于datanode机器数量
   
    
        dfs.namenode.secondary.http-address
        hadoop02:50090
        web端访问地址
    

修改mapred-site.xml文件


    mapreduce.framework.name
    yarn
    指定MapReduce程序运行在Yarn上

修改yarn-site.xml文件


    yarn.resourcemanager.hostname
    hadoop01
    指定ResourceManager的地址


    yarn.nodemanager.aux-services
    mapreduce_shuffle
    指定MR走shuffle



    yarn.nodemanager.resource.memory-mb
    2048



    yarn.scheduler.minimum-allocation-mb
    1024


    yarn.nodemanager.resource.cpu-vcores
    1

后面那部分是关于资源的配置,分别是可用资源大小、最小内存限制和可分配的CPU核数。配置好的电脑如果给虚拟机分配的资源够多,大家也可以适当调大些。
修改workers文件,删除里面的localhost,添加主机名,

hadoop01
hadoop02
hadoop03

根据自己设置的主机名来修改。

3、配置ssh免密登陆

配置ssh免密登陆,我对这个不是很擅长,我也是第一操作这个,就不跟大家举例步骤了,大家去找相关操作的博客即可,过程并不复杂。

4、将配置文件分发到子节点

如果你在主节点上配置好了Hadoop,并且在其他节点创建了前面提到的文件夹,可以使用以下命令将这些文件分发到其他节点。具体命令如下:

scp /etc/profile hadoop02:/etc/profile
scp /etc/profile hadoop03:/etc/profile
scp -r /export/ hadoop02:/
scp -r /export/ hadoop03:/

如果指令执行失败,可尝试切换到root用户下进行。指令完成后,在Hadoop02和Hadoop03节点执行source /etc/profile指令使配置文件生效。

接着,在主节点使用start-all.sh命令,能够正常启动,就说明没有问题了。

对于Hadoop目录下的配置文件,不想自己输入的,可以花积分下载。
https://download.csdn.net/download/HIST_JK/47496215
如有疑问或者错误,可在评论区留言。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/591099.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号