IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Hadoop分布式集群的安装与部署实训总结报告 -> 正文阅读

[大数据]Hadoop分布式集群的安装与部署实训总结报告

目录

前言

一、Hadoop平台框介绍

1.Hadoop的架构

2.HDFS:遵循主从架构,它具有以下元素。

2.1 名称节点 -Namenode

2.2 数据节点 - Datanode

2.3 块 -block

3.HDFS常用命令

4.MapReduce

4.1 客户端(client):

4.2 JobTracker:

4.3 TaskTracker:

4.4 Hdfs:

二、CentOS集群的安装与配置

1.安装虚拟机

2.安装Xshell

3.CentOS系统配置

4.无密码登陆配置

5.安装jdk

总结


前言

本文为LINUX系统下的Hadoop分布式集群的安装与部署实训步骤分享

首次分享:望海涵,有错请及时告知。

目标:掌握Hadoop分布时集群的安装与部署具体步骤与相关经验总结


一、Hadoop平台框介绍

1.Hadoop的架构

在其核心,Hadoop主要有两个层次,即:

  • 加工/计算层(MapReduce)
  • 存储层(Hadoop分布式文件系统)

除了上面提到的两个核心组件,Hadoop的框架还包括以下两个模块:

  • Hadoop通用:这是Java库和其他Hadoop组件所需的实用工具
  • Hadoop YARN :这是作业调度和集群资源管理的框架

Hadoop Streaming 是一个实用程序,它允许用户使用任何可执行文件(例如shell实用程序)作为映射器和/或reducer创建和运行作业。


2.HDFS:遵循主从架构,它具有以下元素。

2.1 名称节点 -Namenode

名称节点是包含GNU/Linux操作系统和软件名称节点的普通硬件。它是一个可以在商品硬件上运行的软件。具有名称节点系统作为主服务器,它执行以下任务:

  • 管理文件系统命名空间。
  • 规范客户端对文件的访问。
  • 它也执行文件系统操作,如重命名,关闭和打开的文件和目录。

2.2 数据节点 - Datanode

Datanode具有GNU/Linux操作系统和软件Datanode的普通硬件。对于集群中的每个节点(普通硬件/系统),有一个数据节点。这些节点管理数据存储在它们的系统。
- 数据节点上的文件系统执行的读写操作,根据客户的请求。
- 还根据名称节点的指令执行操作,如块的创建,删除和复制。

2.3 块 -block

一般用户数据存储在HDFS文件。在一个文件系统中的文件将被划分为一个或多个段和/或存储在个人数据的节点。这些文件段被称为块。换句话说,数据的HDFS可以读取或写入的最小量被称为一个块。缺省的块大小为64MB,但它可以增加按需要在HDFS配置来改变


3.HDFS常用命令

  • 运行jar包:hadoop jar /Users/kexin/work/projects/Hadoop/target/hadoop-0.0.1-SNAPSHOT.jar com.kexin.hadoop.units.WordCount /test/test.txt /project/wordcount/output
  • 文件系统操作:hadoop fs -cat|ls|mkdir
  • 上传文件:hadoop dfs -put ./testdata.txt /testdata
  • 递归删除目录及文件:hadoop fs -rmr /testdata
  • 删除文件:hadoop fs -rm /testdata.txt

4.MapReduce

MapReduce计划分三个阶段执行,即映射阶段,shuffle阶段,并减少阶段。

涉及到的角色:

4.1 客户端(client):

编写mapreduce程序,配置作业,提交作业,这就是程序员完成的工作;

4.2 JobTracker:

初始化作业,分配作业,与TaskTracker通信,协调整个作业的执行;

4.3 TaskTracker:

保持与JobTracker的通信,在分配的数据片段上执行Map或Reduce任务,

TaskTracker和JobTracker的不同有个很重要的方面,就是在执行任务时候TaskTracker可以有n多个,JobTracker则只会有一个(JobTracker只能有一个就和hdfs里namenode一样存在单点故障,我会在后面的mapreduce的相关问题里讲到这个问题的)

4.4 Hdfs:

保存作业的数据、配置信息等等,最后的结果也是保存在hdfs上面

  • map阶段:映射或映射器的工作是处理输入数据。一般输入数据以存储在HDFS的文件或目录的形式,输入文件被传递到映射器功能线路,映射器处理该数据,并创建数据的若干小块。
  • reduce阶段:这个阶段是Shuffle阶段和Reduce阶段的组合。减速器的工作是处理该来自映射器中的数据。处理之后,它产生一组新的输出,这将被存储在HDFS。

在一个MapReduce工作过程中:

  • 由Hadoop发送Map和Reduce任务到集群的相应服务器
  • 框架管理数据传递,例如发出任务的所有节点之间的集群周围的详细信息,验证任务完成,和复制数据
  • 大部分的计算发生在与在本地磁盘上,可以减少网络通信量数据的节点
  • 给定的任务完成后,将收集并减少了数据,以一个合适的结果发送回Hadoop服务器

二、CentOS集群的安装与配置

1.安装虚拟机

2.安装Xshell

3.CentOS系统配置

(1)虚拟机? 编辑-虚拟网络编辑器? nat模式

配置ip地址:192.168.8.2/3/4

(2)关闭防火墙?

service iptables stop

chkconfig iptables off

4.无密码登陆配置

(2) 实现master到slave免密登录

在master上执行 ssh localhost 会在roothome目录生成.ssh目录

执行 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 实现本地免密登录

将id_dsa.pub远程拷贝到其他机器上

scp ~/.ssh/id_dsa.pub root@Slave1:`pwd`

在Slave1电脑上执行

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

5.安装jdk


  1. Hadoop通用:这是Java库和其他Hadoop组件所需的实用工具
  2. Hadoop YARN :这是作业调度和集群资源管理的框架
  3. Hadoop通用:这是Java库和其他Hadoop组件所需的实用工具
  4. Hadoop YARN :这是作业调度和集群资源管理的框架
  5. HDFS:
  6. HDFS常用命令
  7. 运行jar包:hadoop jar /Users/kexin/work/projects/Hadoop/target/hadoop-0.0.1-SNAPSHOT.jar com.kexin.hadoop.units.WordCount /test/test.txt /project/wordcount/output
  8. 文件系统操作:hadoop fs -cat|ls|mkdir
  9. 上传文件:hadoop dfs -put ./testdata.txt /testdata
  10. 递归删除目录及文件:hadoop fs -rmr /testdata
  11. 删除文件:hadoop fs -rm /testdata.txt
  12. MapReduce
  13. map阶段:映射或映射器的工作是处理输入数据。一般输入数据以存储在HDFS的文件或目录的形式,输入文件被传递到映射器功能线路,映射器处理该数据,并创建数据的若干小块。
  14. reduce阶段:这个阶段是Shuffle阶段和Reduce阶段的组合。减速器的工作是处理该来自映射器中的数据。处理之后,它产生一组新的输出,这将被存储在HDFS。
  15. CentOS集群的安装与配置
  16. 安装虚拟机
  17. 安装Xshell
  18. CentOS系统配置
  19. 无密码登陆配置
  20. 安装jdk
  21. Hadoop的安装与配置
  22. 上传hadoop安装包
  23. 编辑配置文件core-site.xml?? hdfs-site.xml? yarn-site.xml? mapred-site.xml
  24. 配置从节点信息
  25. 集群的启动和运行
  26. 命令查看
  27. 网页查看
  28. 范例程序(wordcount)运行?

  • 总结

    HDFS优点总结:

    1、支持任意超大文件存储;硬件节点可不断扩展,低成本存储(真实案例为:4000节点,目前最大5000节点);

    2 、对上层应用屏蔽分布式部署结构,提供统一的文件系统访问接口,感觉就是一个大硬盘;应用无需知道文件具体存放位置,使用简单;

    3、文件分块存储(1块缺省64MB),不同块可分布在不同机器节点上,通过元数据记录文件块位置;应用顺序读取各个块;

    4 、系统设计为高容错性,允许廉价PC故障;每块文件数据在不同机器节点上保存3份;这种备份的另一个好处是可方便不同应用就近读取,提高访问效率。

    HDFS缺点总结:

    1、适合大数据文件保存和分析,不适合小文件,由于分布存储需要从不同节点读取数据,效率反而没有集中存储高;一次写入多次读取,不支持文件修改;

    2、是最基础的大数据技术,基于文件系统层面提供文件访问能力,不如数据库技术强大,但也是海量数据库技术的底层依托;

    3、文件系统接口完全不同于传统文件系统,应用需要重新开发。

    个人实验总结:通过本次实验,简单掌握了Hadoop整体的搭建过程,电脑内存不足,搭建三台虚拟机导致电脑数次崩溃,网页查看时多次出错。在Hadoop伪分布式的安装配置过程中,遇到许许多多的问题,安装jdk,配置环境变量,安装ssh等等。同时在本次实验中认识到了自己的不足,对Linux系统不够熟悉,在以后的学习中需要进一步努力。实验考验是一个人的耐心,实验步骤要一步一步地做,每一步都要严谨认真。今后会加强对Linux系统知识的掌握,力求手到擒来。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-21 15:32:29  更:2021-08-21 15:34:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 13:19:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码