欢迎光临散文网 会员登陆 & 注册

Hadoop集群搭建

2023-03-07 16:24 作者:编程霸王花  | 我要投稿

文章目录

        一、运行环境配置(所有节点)
            1、基础配置
            2、配置Host
        二、依赖软件安装(101节点)
            1、安装JDK
            2、安装Hadoop(root)
            3、Hadoop目录结构
        三、本地运行模式(官方WordCount)
            1、简介
            2、本地运行模式(官方WordCount)
        四、完全分布式运行模式
            1、文件分发脚本(root)
            2、SSH免密登录设置
            3、同步文件
            4、集群节点资源配置
                4.1 核心配置文件(core-site.xml)
                4.2 HDFS配置文件(hdfs-site.xml)
                4.3 YARN配置文件(yarn-site.xml)
                4.4 MapReduce配置文件(mapred-site.xml)
                4.5 分发配置文件
            5、群起集群
                5.1 配置workers
                5.2 启动集群
                5.3 其它启动停止方式
                5.4 启动脚本
            6、查看相关页面
            7、配置历史服务器
            8、配置日志的聚集
            9、其它
                9.1 常用端口号
                9.2 常用页面
        五、遇到问题
            1、编辑文件无权限('readonly' option is set (add ! to override))
            2、Hadoop启动出错Cannot assign requested address

一、运行环境配置(所有节点)

所有集群服务,都需要配置

1、基础配置

关闭防火墙,关闭防火墙开机自启

创建lydms用户,并修改lydms用户的密码lydms123

配置lydms用户具有root权限,方便后期加sudo执行root权限的命令

'readonly' option is set (add ! to override) 查看5.1解决。

/opt目录下创建文件夹

并修改所属主和所属组

2、配置Host

更新本机名称(参照下表)

配置Linux克隆机主机名称映射hosts文件

重启虚拟机

二、依赖软件安装(101节点)

只有主节点进行配置

1、安装JDK

下载JDK

解压文件

添加环境变量

加载环境变量

查看是否安装完成

2、安装Hadoop(root)

下载地址

解压到/opt/module/目录

添加环境变量

加载环境变量

查看是否安装完成

3、Hadoop目录结构


  • bin目录:存放对Hadoop相关服务(hdfs,yarn,mapred)进行操作的脚本。

  • etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件。

  • lib目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)。

  • sbin目录:存放启动或停止Hadoop相关服务的脚本。

  • share目录:存放Hadoop的依赖jar包、文档、和官方案例。

三、本地运行模式(官方WordCount)

1、简介

Hadoop官方网站:http://hadoop.apache.org/

Hadoop运行模式包括:本地模式、伪分布式模式以及完全分布式模式。

  • 本地模式:单机运行,只是用来演示一下官方案例。生产环境不用。

  • 伪分布式模式:也是单机运行,但是具备Hadoop集群的所有功能,一台服务器模拟一个分布式的环境。个别缺钱的公司用来测试,生产环境不用。

  • 完全分布式模式:多台服务器组成分布式环境。生产环境使用。

2、本地运行模式(官方WordCount)

hadoop-3.1.3文件下面创建一个wcinput文件夹

在wcinput文件下创建一个word.txt文件

运行单机Hadoop

查看运行结果

四、完全分布式运行模式

三台资源列表

1、文件分发脚本(root)

新建文件xsync

添加执行权限

2、SSH免密登录设置

原理:

生成公私钥:

查看生成文件

将公钥拷贝到要免密登录的目标机器上(输入相应密码)

几台服务器之间都要互相配置

测试:

还需要配置(集群各个节点之间免密沟通):

  • hadoop101上采用root账号,配置一下免密登录到hadoop101、hadoop102、hadoop103

  • hadoop102上采用root账号,配置一下免密登录到hadoop101、hadoop102、hadoop103

  • hadoop103上采用root账号,配置一下免密登录到hadoop101、hadoop102、hadoop103

最终效果:

3、同步文件

  • 同步环境变量/etc/profile.d/my_env.sh

  • 同步JDK、Hadoop:/opt/model

同步环境变量

同步JDK、Hadoop

4、集群节点资源配置

  • NameNode和SecondaryNameNode不要安装在同一台服务器。

  • ResourceManager也很消耗内存,不要和NameNode、SecondaryNameNode配置在同一台机器上。

Hadoop配置文件分两类:默认配置文件和自定义配置文件,只有用户想修改某一默认配置值时,才需要修改自定义配置文件,更改相应属性值。

默认配置文件。

自定义配置文件:

core-site.xmlhdfs-site.xmlyarn-site.xmlmapred-site.xml四个配置文件存放在$HADOOP_HOME/etc/hadoop这个路径上,用户可以根据项目需求重新进行修改配置。

4.1 核心配置文件(core-site.xml)

文件内容:

4.2 HDFS配置文件(hdfs-site.xml)

文件内容:

4.3 YARN配置文件(yarn-site.xml)

4.4 MapReduce配置文件(mapred-site.xml)

4.5 分发配置文件

5、群起集群

5.1 配置workers

新增节点配置文件

同步配置

5.2 启动集群

如果集群是第一次启动,需要在hadoop001节点格式化NameNode。

(注意:格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据。如果集群在运行过程中报错,需要重新格式化NameNode的话,一定要先停止namenode和datanode进程,并且要删除所有机器的data和logs目录,然后再进行格式化。)

启动HDFS

启动YARN(配置了ResourceManager的节点hadoop002

5.3 其它启动停止方式

启动/停止HDFS

启动/停止YARN

5.4 启动脚本

新建启动/停止集群脚本

赋予脚本执行权限

新建Java进程脚本:jpsall

赋予脚本执行权限

分发/home/atguigu/bin目录,保证自定义脚本在三台机器上都可以使用

6、查看相关页面

Web端查看HDFS的NameNode
http://hadoop101:9870/

Web端查看YARN的ResourceManager
http://hadoop102:8088

7、配置历史服务器

分发配置

hadoop101启动历史服务器

查看是否启动

查看页面

http://hadoop101:19888/jobhistory

8、配置日志的聚集

日志聚集概念:应用运行完成以后,将程序运行日志信息上传到HDFS系统上。

日志聚集功能好处:可以方便地查看到程序运行详情,方便开发调试。

**注意:**开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和HistoryServer。

新增配置

分发配置

删除HDFS上已经存在的输出文件(可以通过页面删除)

需要重启Hadoop集群

9、其它

9.1 常用端口号

9.2 常用页面

Web端查看HDFS的NameNode

YARN的ResourceManager

历史服务器

五、遇到问题

1、编辑文件无权限(‘readonly’ option is set (add ! to override))

原因:

解决:

2、Hadoop启动出错Cannot assign requested address

配置hosts地址问题。导致采用内网IP可用,公网IP不可用。
报错信息:

阿里云服务器无法绑定公网IP的地址,并且本地host地址需要配置内网地址,或者127.0.0.1

最后
    小伙伴们学习编程,有时候不知道怎么学,从哪里开始学。掌握了基本的一些语法或者做了两个案例后,不知道下一步怎么走,不知道如何去学习更加高深的知识。

那么对于这些小伙伴们,我准备了大量的视频教程,PDF电子书籍,以及源代码!
只要+up主威信wangkeit1备注“B站”就可以白嫖领取啦!


Hadoop集群搭建的评论 (共 条)

分享到微博请遵守国家法律