linux下安装hadoop分布式文件系统hdfs

时间:2017-09-18 11:00来源:网络整理 作者:Linux先生 举报 点击:
一、环境准备服务器四台:node5:192.168.13.135node6:192.168.13.136node7:192.168.13.137&n

本文地址:http://www.kooct.com/install/setup/2017/0918/13000.html
文章摘要:,故意牙根是什么人,播客放刁撒泼油墨厂。

服务器四台:node5 :192.168.13.135

node6:192.168.13.136

node7:192.168.13.137

node8:192.168.13.138

二、基本介绍

1. 分布式存储系统hdfs (hadoop Distributed File System )
分布式存储系统
提供了 高可靠性、高扩展性和高吞吐率的数据存储服务

2.HDFS优点:
– 高容错性
数据自动保存多个副本
副本丢失后,自动恢复
– 适合批处理
移动计算而非数据
数据位置暴露给计算框架
– 适合大数据处理
GB 、TB 、甚至PB 级数据
百万规模以上的文件数量
10K+ 节点
– 可构建在廉价机器上
通过多副本提高可靠性
提供了容错和恢复 机制

3.HDFS缺点:
– 低延迟数据访问
比如毫秒级
低延迟与高吞吐率
– 小文件存取
占用NameNode 大量内存
寻道时间超过读取时间
– 并发写入、文件随机修改
一个文件只能有一个写者
仅支持append

4.HDFS的架构

/plinux下安装hadoop分布式文件系统hdfs

5.HDFS设计思想

linux下安装hadoop分布式文件系统hdfs


三、节点介绍

1. NameNode(NN)
– NameNode主要功能:接受客户端的读写服务
– NameNode保存metadate信息包括
文件owership和permissions
文件包含哪些块
Block保存在哪个DataNode(由DataNode启动时上报)
– NameNode的metadate信息在启动后会加载到内存
metadata存储到磁盘文件名为”fsimage”
Block的位置信息不会保存到fsimage
edits记录对metadata的操作日志

2.SecondaryNameNode(SNN)

它不是NN的备份(但可以做备份),它的主要工作是帮助NN合并editslog,减少NN启动时间。
– SNN执行合并时机
根据配置文件设置的时间间隔fs.checkpoint.period 默认3600秒
根据配置文件设置edits log大小 fs.checkpoint.size 规定edits文件的最大值默认是64MB  DataNode(DN)
– 存储数据(Block)
– 启动DN线程的时候会向NN汇报block信息
– 通过向NN发送心跳保持与其联系(3秒一次),如果NN 10分钟没有收到DN的心跳,则认为其已经lost,并copy其上的block到其它DN

3. DataNode(DN)
– 存储数据(Block)
– 启动DN线程的时候会向NN汇报block信息
– 通过向NN发送心跳保持与其联系(3秒一次),如果NN 10分钟没有收到DN的心跳,则认为其已经lost,并copy其上的block 到其它DN


四、安装搭建

1.安装集群前,先统一各服务器时间和检查jdk
date
2.设置各服务器免密码登录本服务器(以node5为例)
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa      //生成秘钥
会在家目录(~)下生成两个秘钥文件   cd  ~/.ssh/   
Id_dsa私钥(自己用)    id_dsa.pub(别人用)
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys   //设置本机上免密码登录
此时本机输入ssh node5 发现可以免密码登录    exit(退出)
3.配置各服务器免密码登录另一台服务器(以node5免密码登录node7为例)
1)拷贝node5的公钥至node7(任意目录下)
      scp ~/.ssh/id_dsa.pub root@node7:/opt
2)在node7中把node5的公钥追加到本机的认证文件中
      cat /opt/id_dsa.pub >> ~/.ssh/authorized_keys 
3)在node5中免秘钥登录node7
      ssh node7
注:虽然node7不设置免密码登录本服务器没影响
4.配置node5为namenode,node6为secondary namenode,node6 ,7, 8为datanode
1)将hadoop-2.5.1_x64.tar.gz拷贝至linux下home目录
      tar -zxvf hadoop-2.5.1_x64.tar.gz
2)修改配置文件
A)vi /home/hadoop-2.5.1/etc/hadoop/hadoop-env.sh
      修改为export JAVA_HOME=/usr/java/jdk1.7.0_79(jdk地址)
B)vi /home/hadoop-2.5.1/etc/hadoop/core-site.xml

<configuration>

<property>

//配置namenode主机和端口

<name>fs.defaultFS</name>

<value>hdfs://node5:9000</value>  //数据上传和下载的端口,不能通过浏览器访问(不是http和http端口协                         //议,是RPC协议端口)

</property>

<property>

//配置hadoop的临时文件目录以及fsimage文件目录,不能放在temp下

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

<value>/opt/hadoop-2.5</value>

</property>

</configuration>

C)vi /home/hadoop-2.5.1/etc/hadoop/hdfs-site.xml

------分隔线----------------------------
推荐内容
破解重庆幸运农场杀号 重庆幸运农场在线计划 幸运农场官方网站 幸运农场开到晚上几点 幸运3前3全中多少钱
幸运农场开奖号码 广东快乐十分绝杀一码 重庆时时彩0_9数字规律 幸运农在手机上买 幸运农场出号规律
重庄幸运农场开奖结果 幸运农场几点开盘? 重庆幸运农场稳赢 幸运农场买19码 pk10计划人工在线计划
幸运28外围投注微信群 幸运农场软件 幸运农场20170622042期 重庆幸运农场奖项 幸运农场的秘密