当前位置: 首页 > news >正文

分布式系统框架hadoop3入门

分布式系统框架hadoop3入门 (qq.com)

Hadoop3作为分布式系统架构的重要基石,为大规模数据存储与处理提供了强大支持

基本信息

hadoop:一个存储和处理大数据的分布式系统框架

组成: HDFS(数据存储)、MapReduce(计算)、Yarn(资源调度)、Common(辅助工具)

HDFS:Hadoop Distributed File System,一个分布式文件系统;组成有NameNode(存储文件的元数据,类似目录索引),DataNode(存储文件块数据),Secondary NameNode(NameNode元数据备份)

YARN:Yet Another Resource Negotiator,另一种资源协调者,Hadoop 的资源管理器,组成有ResourceManager(管理集群资源)、NodeManager(管理单个节点资源)、ApplicationMaster(管理单个任务)、Container(封装任务需要的资源)

MapReduce:将计算过程分为两个阶段Map 和 Reduce,Map 阶段并行处理输入数据,Reduce 阶段对 Map 结果进行汇总

配置环境

三台虚机:安装vmvare,创建模板虚拟机h1,centos7.5,配置完虚机模板后,克隆三个虚机h2-h4,分别修改对应的ip地址和主机名

配置ip地址:vm设置VMnet8的子网ip和网关、内部虚机修改主机名和hosts文件,静态地址、window配置Adapter VMnet8 默认网关,DNS服务器

安装远程终端工具:Xshell,Xftp传输工具

模板虚机配置:

安装epel-release(需更换为阿里源)

关闭防火墙及开机自启、配置常用用户有root权限

/opt目录下创建文件夹module和software,一个安装软件,一个放软件包

卸载虚拟机自带的JDK

在h2安装JDK和hadoop

用XShell传输工具将安装包,导入到opt目录下面的software文件夹下面

解压安装包到/opt/module目录下

配置环境变量

测试是否安装成功

将在h2安装的JDK和hadoop分发到h3,h4

两个命令:scp(secure copy)安全拷贝、rsync远程同步工具,前者可以在虚机之间复制文件,后者增量复制,效率更高

xsync集群分发脚本:基于上述两个命令编写xsync编写集群分发脚本,声明了全局环境变量的路径的bin目录下

SSH无密登录配置:生成公钥和私钥,将公钥拷贝到要免密登录的目标机器上,每台机器都要生成,并拷贝到其他机器上

配置集群并启动

集群规划:h2放NameNode,h3放ResourceManager,h4放SecondaryNameNode

配置-修改配置文件

核心配置文件core-site.xml:指定NameNode的地址、指定hadoop数据的存储目录

HDFS配置文件hdfs-site.xml:指定NameNode(nn)的地址 web端访问地址、SecondaryNameNode(2nn) web端访问地址

YARN配置文件yarn-site.xml:指定MR走shuffle、指定ResourceManager的地址、环境变量的继承

MapReduce配置文件mapred-site.xml:指定MapReduce程序运行在Yarn上

在集群上分发配置好的Hadoop配置文件:xsync

启动

配置workers并同步

集群是第一次启动:在h2节点格式化NameNode

h2机器上启动HDFS:start-dfs.sh

h3机器上启动YARN:start-yarn.sh

Web端查看HDFS的NameNode、YARN的ResourceManager

测试上传文件和执行wordcount程序

配置历史服务器和日志聚集

配置历史服务器

配置mapred-site.xml:配置历史服务器端地址、历史服务器web端地址

分发配置并启动,web查看

配置日志聚集

配置yarn-site.xml:开启日志聚集功能、设置日志聚集服务器地址、设置日志保留时间为7天

分发配置,关闭NodeManager 、ResourceManager和HistoryServer

启动NodeManager 、ResourceManage和HistoryServer

删除HDFS上已经存在的输出文件

执行WordCount程序

查看日志

参考资料

大海哥,hadoop3.x

hadoop+spark生态系统操作与实战指南

http://www.lryc.cn/news/430752.html

相关文章:

  • 使用 i3.LayoutCell() 方法绘制版图并输出为 GDS 文件
  • mariadb容器
  • 应用层协议Http
  • display flex 的div 被子元素撑开不显示滚动条的一个解决demo
  • 判断键盘输入是数字、大写字母还是小写字母——C#学习笔记
  • 进程控制块PCB的组织方式有哪些?
  • getent passwd 获取linux并显示用户账户信息
  • 达梦数据库+JPA+Springboot 报错 :无效的列名
  • #单片机基础 笔记一
  • echarts多个环形图
  • vue 的面试题
  • MongoDB-部署PSA(一主一从一仲裁)架构复制集群
  • CSS中 特殊类型的选择器 伪元素如何使用
  • 科技信贷业务怎么寻找客户?
  • VM中创建CentOS 7及VM中如何修改DHCP的IP网段
  • mybatis#{}与${}的区别,mybatis关联查询,mybatis动态sql
  • K8S(Kubernates) 知识目录
  • 基于Java+SpringBoot+Vue+MySQL的失物招领管理系统
  • Mybatis链路分析:JDK动态代理和责任链模式的应用
  • 【Spring Boot 3】【Web】解析获取HTTP请求参数
  • conda换源是什么?
  • 英文缩写大全(IT 领域和电子行业制造领域)
  • 如何将图片左右翻转?8种方法来将图片进行左右翻转
  • linux:ln用法详解
  • 0基础跟德姆(dom)一起学AI Python进阶02-Python面向对象高级
  • 【深度学习】softmax 回归的从零开始实现与简洁实现
  • Sollong、IO.NET和 Solana,为何参加 WebX 2024活动?
  • 3个免费好用的网站,可以转换PDF,提取MP3
  • PHP智能匹配轻松预订自习室在线订座系统小程序源码
  • 构建高效医护人员排班系统:Spring Boot框架的优势