博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
大数据之路- Hadoop环境搭建(Linux)
阅读量:7115 次
发布时间:2019-06-28

本文共 3241 字,大约阅读时间需要 10 分钟。

前期部署

1.JDK

2.上传HADOOP安装包

2.1官网:

 

2.2下载hadoop-2.6.1的这个tar.gz文件,官网:

 

下载成功后,把这个tar.gz包上传到服务器上,命令:

通过SecureCRT软件alt+p打开SFTP,然后把这个文件上传

上传成后,解压

tar -xvzf hadoop-2.6.1.tar.gz

然后把解压后的文件移动到/usr下,改名为hadoop

命令: 

mv hadoop-2.6.1 /usr/hadoop

然后开始把hadoop的命令加到环境变量里面去

 

 

 

然后记得source一下

然后再修改配置文件,配置文件查看查看官网:

 最简化配置如下:(在/usr/hadoop/etc/hadoop)

主要配置文件
/usr/hadoop/etc/hadoop/
 
hadoop-env.sh 环境变量
运行时配置
core-site.xml 核心公共配置
hdfs-site.xml
mapred-site.xml
yarn-site.xml
 
slaves
 
vim core-site.xml
fs.defaultFS
hdfs://hdp-node-01:9000
hadoop.tmp.dir
//指定进程工作目录,数据存放目录
/home/HADOOP/apps/hadoop-2.6.1/tmp
core-site.xml里面可以设置垃圾回收属性 
fs.trash,interval ,默认在core-default问件里,默认7天
 
vim hdfs-site.xml
//设置保留副本的数量,即备份的数量,默认是3。客户端把文件交给fds之后,fds保留的副本数量
dfs.replication
2
vim  mapre-site.xmlmapreduce要放在一个资源调度平台上面跑,所以需要指定资源调度平台yarn,默认是local,不是在集群上运行
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
vim yarn-site.xml
//指定集群节点老大,不然提交程序运行时不知道找谁
<configuration>
 
<property>
<name>yarn.resourcemanager.hostname</name>
<value>svr01</value> //主机名
</property>
 
 
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
 
</configuration>
 
vim slaves  //记录本集群的datenode,用来自动化统一管理datenode
 
192.168.1.88     srv01192.168.1.89     srv02192.168.1.90     srv03
配置ssh。(前提先配置好/etc/hosts文件)
ssh-keygen -t rsa 四个回车
ssh-copy-id srv01 //首先是自己
ssh-copy-id srv02
ssh-copy-id srv03
 
格式化后分发hadoop文件 
/usr/hadoop 和环境变量文件 
/etc/profile 到所有的集群服务器。
scp  /etc/profile srv02:/etc/          //记得到srv02去source它的profile文件scp  /etc/profile srv03:/etc/          //记得到srv02去source它的profile文件
scp -R /usr/hadoop srv02:/usr/hadoop
scp -R /usr/hadoop  srv03:/usr/hadoop

 hadoop格式化是为了生成fsimage文件。

hadoop要先格式化才能开启。他是一个架设在linux上的文件系统,并不是格式化linux的文件系统。
hadoop启动命令/sbin/start-dfs.sh
yarn启动命令/sbin/start-yarn.sh
或者:直接启动hdfs+yarn服务:sbin/start-all.sh
 
检查dfs的进程,jps,下图代表hdfs正常启动

可以在浏览器上看到hadoop集群状态

namenode的ip加上50070端口

http://192.168.1.88:50070/

 

配置HDFS垃圾回收

fs.trash.interval

描述:检查点被删除的分钟数。如果为零,垃圾功能将被禁用。可以在服务器和客户端上配置此选项。如果垃圾桶被禁用服务器端,则客户端配置被检查。如果在服务器端启用垃圾箱,则使用服务器上配置的值,并忽略客户端配置值。

例子:7天后自动清理

fs.trash.interval
7 * 24 * 60

 

 NameNode启动过程详解

namenode的数据存放在两个地方,一个是内存,一个是磁盘(edits,fsimage)

第一次启动HDFS

1.format : 格式化hdfs

2.make image : 生成image文件

3.start NameNode:read fsimage

4.start Datenode : datanode 向 NameNdoe 注册,汇报 block report ,

5.create dir /user/xxx/temp  :写入edits文件

6.put files /user/xxx/tmp(*=site,xml) :写入edites文件

7.delete file /user/xxx/tmp/(core-site.xml):写入edits文件

 

对dfs的操作都会记录到edits里面

 第二次启动hdfs:

1.启动NameNode,读取fsimage里面的镜像文件,读取edits文件,因为edits记录着上一次hdfs的操作,写入一个新的fsimage,创建一个新的edits记录操作

2.start Datenode : datanode 向 NameNdoe 注册,汇报 block report ,

3.create dir /user/xxx/temp  :写入edits文件

4.put files /user/xxx/tmp(*=site,xml) :写入edites文件

5.delete file /user/xxx/tmp/(core-site.xml):写入edits文件

6.Secondly NameNode定期将edits文件和fsimage文件合并成一个新的fsimage文件替换掉NameNode上面的fsimage

 

另:手动编译hadoop记得要联网,因为它是用maven管理的,很多依赖需要下载

 

转载于:https://www.cnblogs.com/RzCong/p/7323864.html

你可能感兴趣的文章
如何使用榛子获得第一条短信验证码?
查看>>
Android进阶必学retrofit源码解析
查看>>
java 进销存 crm websocket即时聊天发图片文字 好友群组 SSM源码
查看>>
Day7:html和css
查看>>
什么是 5G?它比 4G 好在哪里?
查看>>
[译] C++ 和 Android 本地 Activity 初探
查看>>
Java异常简介及异常信息缺失处理
查看>>
VBA+正则表达式解决订单小问题
查看>>
字符编码ASCII、Unicode、UTF-8
查看>>
mybatis+dubbo+ springmvc+zookeeper分布式架构
查看>>
MJRefresh源码解读
查看>>
easyui tabs切换和单个页面手动刷新以及点击添加新的tabs
查看>>
一天4-5小时睡眠也可以高效工作
查看>>
图形化编程语言的设计
查看>>
实现一个前端路由,如何实现浏览器的前进与后退 ?
查看>>
面试题 async/await
查看>>
多线程协作wait、notify、notifyAll方法简介理解使用 多线程中篇(十四)
查看>>
Handler源码剖析
查看>>
微服务监控神器Prometheus的安装部署
查看>>
Python3 爬虫
查看>>