Hadoop的三种模式(单机模式,伪分布式,完全分布式)以及集群的搭建

本文详细介绍了Hadoop的三种运行模式:单机模式、伪分布式和完全分布式,并提供了每种模式下的集群搭建步骤。重点讨论了NameNode和DataNode的角色,以及在完全分布式模式下的集群配置和测试过程,强调了全网一致性、主机名解析等关键点。
摘要由CSDN通过智能技术生成

基本概念:

1. Hadoop是一个分布式文件系统的基础架构,用户可以利用集群进行高速运算和存储

2. Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算

3. Hdfs主要模块:NameNode、DataNode

4. HDFS主要模块及运行原理:
(1)NameNode:
功能:是整个文件系统的管理节点。维护整个文件系统的文件目录树,文件/目录的元数据和每个文件对应的数据块列表。接收用户的请求
(2)DataNode:
功能:是HA(高可用性)的一个解决方案,是备用镜像,但不支持热备

5. Hadoop的三种模式:

(1)单机模式Local或Standalone Mode
默认情况下,Hadoop即处于该模式,用于开发和调试,使用本地文件系统,而不是分布式文件系统,Hadoop不会启动NameNode、DataNode、JobTracker、TaskTracker等守护进程。用于对MapReduce程序的逻辑进行调试,确保程序的正确

(2)伪分布式模式(Pseudo-Distrubuted Mode)

  • 模拟一个小规模的集群,在一台主机模拟多主机。
  • Hadoop启动NameNode、DataNode、JobTracker、TaskTracker这些守护进 程都在同一台机器上运行,是相互独立的Java进程
  • 在这种模式下,Hadoop使用的是分布式文件系统,各个作业也是由JobTraker服务,来管理的独立进程。在单机模式之上增加了代码调试功能,允许检查内存使用情况,HDFS输入输出,类似于完全分布式模式

(3)完全分布式模式

  • Hadoop守护进程运行在一个集群上,hadoop的守护进程namenode,datanode,jobTracker,TaskTracker运行在多台主机上,也就是一个集群不同机器上

一、单机分布式

1.创建hadoop用户,将安装包传到hadoop的家目录下

[root@server1 ~]# useradd hadoop
[root@server1 ~]# id hadoop
uid=1000(hadoop) gid=1000(hadoop) groups=1000(hadoop)
[root@server1 ~]# ls
hadoop-3.0.3.tar.gz  jdk-8u181-linux-x64.tar.gz
[root@server1 ~]# mv * /home/hadoop/
[root@server1 ~]# su - hadoop
[hadoop@server1 ~]$ ls
hadoop-3.0.3.tar.gz  jdk-8u181-linux-x64.tar.gz

在这里插入图片描述
2.解压安装包,创建软连接

(1)jdk

[hadoop@server1 ~]$ tar zxf jdk-8u181-linux-x64.tar.gz 
[hadoop@server1 ~]$ ls
hadoop-3.0.3.tar.gz  jdk1.8.0_181  jdk-8u181-linux-x64.tar.gz
[hadoop@server1 ~]$ ln -s jdk1.8.0_181/ java
[hadoop@server1 ~]$ ls
hadoop-3.0.3.tar.gz  java  jdk1.8.0_181  jdk-8u181-linux-x64.tar.gz

在这里插入图片描述
(2)hadoop

[hadoop@server1 ~]$ tar zxf hadoop-3.0.3.tar.gz 
[hadoop@server1 ~]$ ls
hadoop-3.0.3         java          jdk-8u181-linux-x64.tar.gz
hadoop-3.0.3.tar.gz  jdk1.8.0_181
[hadoop@server1 ~]$ ln -s hadoop-3.0.3 hadoop
[hadoop@server1 ~]$ ls
hadoop        hadoop-3.0.3.tar.gz  jdk1.8.0_181
hadoop-3.0.3  java                 jdk-8u181-linux-x64.tar.gz

在这里插入图片描述
3.配置java环境变量

[hadoop@server1 hadoop]$ pwd
/home/hadoop/hadoop/etc/hadoop
[hadoop@server1 hadoop]$ vim hadoop-env.sh

54 export JAVA_HOME=/home/hadoop/java

在这里插入图片描述
在这里插入图片描述

4.添加系统环境变量

[hadoop@server1 hadoop]$ cd
[hadoop@server1 ~]$ vim .bash_profile 
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/java/bin
[hadoop@server1 ~]$ source .bash_profile 

在这里插入图片描述
在这里插入图片描述配置完后可以执行jps命令

[hadoop@server1 ~]$ jps
11515 Jps

在这里插入图片描述
5.创建input目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值