hadoop学习第二天笔记

海量数据

- 存储数据

- 分析数据

 

分布式

相对于集中式

集中式:

一台机器:所有的东西(软件)都放在此计算机上(安装)

分布式:

多台机器:将东西进行划分,每台机器存储放一部分

 

主从架构:

主节点:项目经理

管理者、调度者

从节点:小弟

被管理者,干活的

 

分布式文件系统HDFS:

主节点:

NameNode

将存储的文件划分为block块进行存储(128M)

每个Block副本数量3个,

从节点:

DataNode

管理存储 当前DataNode所在节点机器上的数据block

 

分布式集群资源管理YARN

集群资源:CPU core 和内存

 

主节点:

ResourceManager

管理整个集群的资源,接收client提交的应用

从节点:

NodeManager

管理每个节点(每台机器)资源管理

综上所述:

在企业部署Hadoop集群的时候,HDFS的DataNode和YARN nodemanager基本上在一台机器上,充分利用资源

 

 

 

 

 

 

伪分布式安装Hadoop

文档:http://hadoop.apache.org/docs/r2.7.6/hadoop-project-dist/hadoop-common/SingleCluster.html

上传解压

tar -zxvf hadoop-2.7.3.tar.gz -C /opt/modules/

了解目录结构,删除无用文件

rm -rf bin/*.cmd

rm -rf sbin/*.cmd

rm -rf etc/hadoop/*.cmd

rm -rf share/doc/

修改配置:etc/hadoop/

(1)*-evn.sh:3个模块的环境变量文件

hadoop-env.sh 、yarn-env.sh(23行)、mapred-env.sh

JAVA_HOME=/opt/modules/jdk1.8.0_91

(2)按模块配置

 

a、common模块:core-site.xml

 

<!--指定文件系统HDFS的主机名称和端口号-->

<property>

<name>fs.defaultFS</name>

<value>hdfs://bigdata-hpsk01.huadian.com:8020</value>

</property>

<!--指定文件系统本地临时存储目录,默认值是系统/tmp-->

<!--临时目录需要自己创建-->

<property>

<name>hadoop.tmp.dir</name>

<value>/opt/modules/hadoop-2.7.3/data/tmpData</value>

</property>

 

 

b、HDFS模块配置:

hdfs-site.xml

<!--由于是伪分布式,仅有一台机器,副本数量没有必要设置为3-->

<property>

        <name>dfs.replication</name>

        <value>1</value>

    </property>

 

slaves:

指定小弟DataNode运行在那台机器上

如果有多个小弟,一行一个

bigdata-hpsk01.huadian.com

 

c、测试HDFS模块是否OK

-》格式化

bin/hdfs namenode -format

成功的标准:

18/08/07 23:25:02 INFO util.ExitUtil: Exiting with status 0

-》启动

主节点

sbin/hadoop-daemon.sh start namenode

从节点

sbin/hadoop-daemon.sh start datanode

-》验证是否成功:

方式一:查看进程jps

方式二:

bigdata-hpsk01.huadian.com:50070

-》测试HDFS:

(1)怎么用

bin/hdfs dfs

(2)创建一个目录

 bin/hdfs dfs -mkdir -p /datas

(3)查看

 bin/hdfs dfs -ls /

(4)上传文件

 bin/hdfs dfs -put /opt/datas/input.data  /datas

(5)查看文件

bin/hdfs dfs -text /datas/input.data

(6)删除文件

bin/hdfs dfs -rm -r -f  /datas/input.data

d、YARN

对于分布式资源管理和任务调度框架来说,

在YARN上可以运行多种应用程序

- MapReduce

- spark

- tez

配置:

(1)yarn-site.xml

<!--resourcemanager服务运行的主机名名称-->

<property>

<name>yarn.resourcemanager.hostname</name>

<value>bigdata-hpsk01.huadian.com</value>

</property>

 

<!--告知YARN,MapReduce程序将在 其上运行-->

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

(2)slaves

指定nodemanager运行的主机名称,由于NameNode和DataNode在同一台机器

前面已经配置

e、启动YARN服务

-》启动:

主节点:resourceManager

sbin/yarn-daemon.sh start resourcemanager

sbin/yarn-daemon.sh stop resourcemanager

从节点:nodeManager

sbin/yarn-daemon.sh start nodemanager

sbin/yarn-daemon.sh stop nodemanager

-》验证启动:

方式一:jps

方式二:

http://bigdata-hpsk01.huadian.com:8088/

f、Mapreduce模块

并行计算 的框架

思想:分而治之

核心:

map :分

并行处理数据,将数据分割,一部分一部分的处理

reduce:合

将Map处理数据的结果进行合并,

 

配置:

mv mapred-site.xml.template mapred-site.xml

<!--指定MapReduce的程序运行在YARN-->

<property>

        <name>mapreduce.framework.name</name>

        <value>yarn</value>

    </property>

 

g、测试MapReduce程序

案例:wordcount程序

准备数据:/datas/input.data

程序:

/opt/modules/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar

将MapReduce应用提交到YARN上运行

bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount

Usage: wordcount <in> [<in>...] <out>

<in>:表示MapReduce程序要处理的数据在哪里

<out>:表示MapReduce程序处理数据之后的结果 存储在哪里,这个目录不能存在

 终极提交:

 bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /datas/input.data /datas/output/output001

 

 

如果格式化、启动某个进程失败,怎么办????

看日志文件。。。。就是IDEA控制台的输出

logs/XX.log

 

hadoop-huadian-datanode-bigdata-hpsk01.huadian.com.log

模块   root   进程名字 主机名

 

后缀名:

日志分类:标准输出、错误输出

.log:程序启动相关信息   ==========

.out:程序运行的相关输出

system.out.println(),system.error.println

 

使用tail -100f xxx.log

找Exception,case by

 

 

 

 

额外配置:

历史服务器

HistoryServer

 

配置:mapred-site.xml 后面添加

 

<!--历史服务器-->

<property>

<name>mapreduce.jobhistory.address</name>

<value>bigdata-hpsk01.huadian.com:10020</value>

</property>

<property>

<name>mapreduce.jobhistory.webapp.address</name>

<value>bigdata-hpsk01.huadian.com:19888</value>

</property>

启动服务

sbin/mr-jobhistory-daemon.sh start historyserver

 

日志聚集功能

YARN提供日志中央化管理功能,他能将运行完成的任务 日志 上传到HDFS指定目录下。

以便后期监控查看

 

配置:yarn-site.xml

<!--启动日志聚集功能-->

<property>

<name>yarn.log-aggregation-enable</name>

<value>true</value>

</property>

 

<!--设置日志保存的时间,1周-->

<property>

<name>yarn.log-aggregation.retain-seconds</name>

<value>604800</value>

</property>

注意:重启YARN和JobHistoryServer服务,

修改了配置文件,需要重新读取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值