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 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Linux——Hadoop大数据平台 -> 正文阅读

[大数据]Linux——Hadoop大数据平台

简介

Hadoop框架包括以下四个模块:

  • Hadoop Common: 这些是其他Hadoop模块所需的Java库和实用程序。这些库提供文件系统和操作系统级抽象,并包含启动Hadoop所需的Java文件和脚本。
  • Hadoop YARN: 这是一个用于作业调度和集群资源管理的框架。
  • Hadoop Distributed File System (HDFS): 分布式文件系统,提供对应用程序数据的高吞吐量访问。
  • Hadoop MapReduce:这是基于YARN的用于并行处理大数据集的系统。

Hadoop的框架最核心的设计就是:HDFS和MapReduce。

  • HDFS为海量的数据提供了存储。
  • MapReduce为海量的数据提供了计算。
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

Hadoop部署

官网:https://hadoop.apache.org
安装包:hadoop-3.2.1.tar.gz
JDK:jdk-8u181-linux-x64.tar.gz

单机模式

创建hadoop用户,设置密码

useradd hadoop
echo westos | passwd --stdin hadoop

使用hadoop用户将安装包以及JDK在hadoop家目录解压,并创建软链接

[root@server2 ~]# su - hadoop
[hadoop@server2 ~]$ ls
hadoop-3.2.1.tar.gz  jdk-8u181-linux-x64.tar.gz
[hadoop@server2 ~]$ tar zxf hadoop-3.2.1.tar.gz
[hadoop@server2 ~]$ tar zxf jdk-8u181-linux-x64.tar.gz 
[hadoop@server2 ~]$ ln -s jdk1.8.0_181/ java
[hadoop@server2 ~]$ ln -s hadoop-3.2.1/ hadoop

编辑hadoop运行环境脚本,添加JAVA运行环境

cd hadoop/etc/hadoop
vim hadoop-env.sh
	export JAVA_HOME=/home/hadoop/java
	export HADOOP_HOME=/home/hadoop/hadoop

创建输入目录,测试hadoop

[hadoop@server2 hadoop]$ mkdir input
[hadoop@server2 hadoop]$ cp etc/hadoop/*.xml input
[hadoop@server2 hadoop]$ bin/hadoop

在这里插入图片描述
测试,过滤模块过滤’dfs[a-z.]+’

[hadoop@server2 hadoop]$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input output 'dfs[a-z.]+'

在这里插入图片描述
检查输出

[hadoop@server2 hadoop]$ cat output/*
1	dfsadmin

伪集群模式

文件系统web界面 http://172.25.52.2:9870/

修改hadoop核心配置文件

cd ~/hadoop
vim etc/hadoop/core-site.xml
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

设置副本为1

 vim etc/hadoop/hdfs-site.xml
 <configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>
[hadoop@server2 ~]$ ssh-keygen 
[hadoop@server2 ~]$ ssh-copy-id localhost

在这里插入图片描述
格式化hdfs,重新开启hdfs文件系统

[hadoop@server2 hadoop]$ bin/hdfs namenode -format
[hadoop@server2 hadoop]$ sbin/start-dfs.sh

在这里插入图片描述
创建用户目录,上传文件至文件系统

[hadoop@server2 hadoop]$ bin/hdfs dfs -mkdir /user
[hadoop@server2 hadoop]$ bin/hdfs dfs -mkdir /user/hadoop
[hadoop@server2 hadoop]$ bin/hdfs dfs -mkdir input
[hadoop@server2 hadoop]$ bin/hdfs dfs -put etc/hadoop/*.xml input

在这里插入图片描述
在这里插入图片描述
测试hadoop,单词计数

[hadoop@server2 hadoop]$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar wordcount input output

查看输出:

在这里插入图片描述下载到本地查看。关闭文件系统

[hadoop@server2 hadoop]$ bin/hdfs dfs -get output output
[hadoop@server2 hadoop]$ cat output/*
[hadoop@server2 hadoop]$ sbin/stop-dfs.sh

集群模式

详情见官方手册: https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html
准备其余两个节点。创建用户hadoop,UID GID 为1000(需要与master的hadoop用户一致)。
在master上开启nfs,共享hadoop家目录。

[hadoop@server2 hadoop]$yum install -y nfs-*
[hadoop@server2 hadoop]$vim /etc/exports

/home/hadoop	*(rw,anonuid=1000,anongid=1000)

[hadoop@server2 hadoop]$exportfs -rv
[hadoop@server2 hadoop]$showmount -e

在这里插入图片描述
在其余两个节点挂载hadoop家目录到本机hadoop家目录,(需要有server2也就是master节点的解析)

[hadoop@server2 hadoop]$ yum install -y nfs-*
[hadoop@server2 hadoop]$ mount server2:/home/hadoop /home/hadoop 
[hadoop@server2 hadoop]$ showmount -e server2

在这里插入图片描述在server2上配置到server3 4 的ssh免密。
由于家目录下所有数据都是相同的,因此公钥私钥也相同,只需要进行确认即可。
在这里插入图片描述修改server2 即master端配置文件 , workers中可以配置ip或主机名

[hadoop@server2 hadoop]$ vim etc/hadoop/workers 
server3
server4
[hadoop@server2 hadoop]$ vim etc/hadoop/core-site.xml

修改hadoop核心配置文件 , 指定master IP

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://172.25.52.2:9000</value>
    </property>
</configuration>

设置副本为2

[hadoop@server2 hadoop]$ vim etc/hadoop/hdfs-site.xml
 <configuration>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
</configuration>

格式化存储,重新开启dfs,在web端可以看到节点状态

[hadoop@server2 hadoop]$  bin/hdfs namenode -format
[hadoop@server2 hadoop]$  sbin/start-dfs.sh

在这里插入图片描述

YARN

编辑配置文件

[hadoop@server2 hadoop]$  vim etc/hadoop/mapred-site.xml


<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.application.classpath</name>
        <value>$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value>
    </property>
</configuration>


[hadoop@server2 hadoop]$  vim  etc/hadoop/yarn-site.xml
<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_HOME,PATH,LANG,TZ,HADOOP_MAPRED_HOME</value>
    </property>
</configuration>

修改hadoop环境变量,在etc/hadoop/hadoop-env.sh 中增加内容

export HADOOP_MAPRED_HOME=/home/hadoop/hadoop


开启yarn,访问master的8088端口

hadoop@server2 hadoop]$ sbin/start-yarn.sh

在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-16 11:48:52  更:2021-08-16 11:51:28 
 
开发: 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 12:49:27-

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