Hadoop下载安装及HDFS配置教程
Hadoop下载安装及HDFS配置教程
前⾔
Hadoop是⼀个由Apache基⾦会所开发的分布式系统基础架构。⽤户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利⽤集的威⼒进⾏⾼速运算和存储。Hadoop实现了⼀个分布式⽂件系统(Hadoop Distributed File System),简称HDFS。HDFS有⾼容错性的特点,并且设计⽤来部署在低廉的(low-cost)硬件上;⽽且它提供⾼吞吐量(high throughput)来访问应⽤程序的数据,适合那些有着超⼤数据集(large data set)的应⽤程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)⽂件系统中的数据。Hadoop的框架最核⼼的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,⽽MapReduce则为海量的数据提供了计算。
简⾔之,Hadoop的核⼼就是解决两个问题,⼀是存储(采⽤HDFS),⼆是计算(采⽤MapReduce编程模型)
⼀、Hadoop HDFS简单集框架原理
NameNode:整个hdfs集的管理者,不存储实际⽂件数据,只记录⽂件数据的元数据信息(如,数据切
分为多少块block,每块数据及其备份数据存储在哪台服务器节点上(NameNode))
DataNode:真正⽤来存储数据的节点
Block(数据块):既然要分布式处理,就要将数据切分,然后分布在各个服务器节点上。Block就是由NameNode对数据⽂件进⾏切分的最⼩单元。在hadoop2.x版本中⼀个Block块为128M;在hadoop1.x版本中⼀个Block块为64M;
Replice(副本):HDFS集为了保证数据⾼可⽤性,默认会对⼀个数据块进⾏3次备份(讲⽩了,就是对每⼀个Block备份3次,这3次备份数据分别合理的分配在不同的服务器上,防⽌⼀个服务器挂掉,数据就丢失或者损坏的问题)
机房 长啥样?我是没见过,如果有机会见见也是极好的,不过⽹传⼤概就这样吧,不知道我对于万⼀所有机房都被坏⼈⼲掉了的担⼼是否多余(天真脸)
⼆、Hadoop安装准备
1、安装虚拟机VMware
Hadoop框架运⾏组lunix系统之上,那么window系统上如何运⾏Hadoop呢?这就需要虚拟机了。VMWare (Virtual Machine ware)是⼀个“虚拟PC”软件公司,它的产品可以使你在⼀台机器上同时运⾏⼆个或更多Windows、DOS、LINUX系统。简单来说是⼀种软件,⽤它可以在⼀个系统中装另外⼀个系统。这就满⾜了我们window系统上安装lunix系统的需求。
1.1 VMware Workstation Pro 15.5下载
1.2 虚拟机安装
2、在虚拟机上安装CentOS系统
2.1 CentOS系统下载
2.2 CentOS系统安装:
2.3 JDK安装和环境配置:
三、Hadoop安装和HDFS配置
1、下载Hadoop
2、建议保留安装的初始CentOS系统,然后克隆这个初始系统,进⾏Hadoop的相关配置
因为CentOS系统安装⼀次很⿇烦,不必要每次都安装⼀次,保留安装好的初始系统,后⾯搭建集的时候,只需要克隆这个初始系统就可以了。
3、添加ip地址和hostname以及ip和hostname的关联
3.1查看ip地址
ifconfig
3.2 添加ip地址到ifcfg-ens33⽂件
vim /etc/sysconfig/network-scripts/ifcfg-ens33
注意:BOOTPROTO要修改为static,不然CentOS的ip地址是动态的,下次重启系统可能就不是我们配置的那个ip了,导致⽆法在浏览器查看
3.3 修改hostname名字
vim /etc/hostname
3.4 将ip与hostname关联
vim /etc/hosts
hadoop分布式集搭建3.5 重启系统
reboot
4、将hadoop压缩包通过Xftp传到CentOS系统中
5、解压hadoop压缩包
tar -zxvf hadoop-2.9.
5.1 hadoop⽂件结构
bin⽂件夹:⾥⾯都是可执⾏的⼆进制脚本⽂件
etc/hadoop⽂件夹:⾥⾯都是hadoop系统配置⽂件,后⾯对于hadoopp的配置⽂件都在这个⽬录。sbn⽂件夹:⾥⾯都是可执⾏的⼆进制脚本⽂件,⾥⾯包括HDFS的启动,关闭
share⽂件夹:⾥⾯是hadoop的⽂档和运⾏核⼼包
6、配置hadoop环境变量
编辑环境变量
vim /etc/profile
重新加载配置
source /etc/profile
验证hadoop是否加⼊环境变量
echo $PATH
7、配置hadoop-env.sh
将JAVA的路径配置到hadoop的环境⽂件中
vim /root/hadoop/hadoop-2.9.2/etc/hadoop/hadoop-env.sh
8、配置l
vim /root/hadoop/hadoop-2.9.2/etc/l 1、配置哪台机器为namenode