Hadoop学习(一)

来源:互联网 发布:淘宝在哪里领取优惠卷 编辑:程序博客网 时间:2024/05/01 17:46

使用系统: centos7  (HanWate Linux7最小系统)

两个系统镜像:HanWate_BigData-X86_64.iso

              HanWate_HDP2.6.1.0_REPO.iso

包含有linux系统及hadoop相关组件

3linux系统 :mymaster1    mymaster2     myslave1

因为笔记本只有4G内存 所以三个系统都是1G的 内存的大小会影响部分功能

 

 

 

                       NamenodeDatanode

NameNode

(1)主要提供查询服务

(2)保存metadata信息

文件的owershippermissions

文件包含哪些block以及block保存在哪个datanodeblock的位置信息)

3metadata信息会在启动后自动加载到内存中

4metadata存储在fsimage文件中   block的位置信息不在fsimage

DataNode:

(1)保存block

(2)启动datanode时会向namenode汇报block信息

(3)namenode发送心跳保持与其联系(3秒一次),如果namenode10分钟没有收到datanode的心跳则认为其已经lost,并复制其上的block到其它的datanode

SecondaryNamenode:

  1SecondaryNamenode并不是NameNode的备份节点

(2)备份fsimage

(3)日志与镜像的定期合并的作用

 

 

NamenodeDatanode的安装

(3)表示3台机器都需要安装

一、安装hadoop3

linux系统中需要meke* openssl-1*  以及redhat-lsb基础包

由于是在无互联网环境下所以使用iso镜像安装,需要配置新的yum仓库

 

缺少KEY

 

安装hadoop-2.6.1.0.129

二、地址角色的分配(3

linux的网络连接模式为NAT模式会自动分配ip地址 (ip addr show查看)

mymaster1:

 

mymaster2:

 

myslave1:

 

(1)修改主机名  /etc/hostname

    是三台主机更易于辩认

(2)配置主机名映射

三台机器的ip地址 主机名 都要添加,使这三台机器可以通信。

完成后重启机器相互通信(ping

 

三、各个主机安装的节点

mymaster1namenodedatanode

mymaster2:secondarynamenodedatanode

myslave1datanode

四、配置文件的修改(3

core-site.xml的修改

 

HDFS的访问入口

hdfs-site.xml的修改(需自己创建的文件)

 

namenodedatanode的数据存放位置。namenode至少2个,datanode至少1

五、准备数据目录(3

(1)创建 disk1disk2用来存放数据,其中disk2在另一块硬盘中。

     (新添加的硬盘要:分区,格式化,挂载)

(2)创建子目录disk{1,2}/dfs/{dn,nn}

(3)修改子目录权限chown -R hdfs.hadoop /disk[12]

六、初始化hdfs文件系统 (1

仅在主节点上操作(namenode

JAVA_HOME要配置好否则不能初始化

 

切换到hdfs用户(susudo

执行 hdfs namenode -format

七、启动服务

mymaster1:namenode ,datanode

mymaster2:sendarynamenodedatanode

myslave1:datanode

注意:(1)要将节点的.server文件在/usr/lib/systemd/system中可执行(链接(ln)、复制(cp))

 

          (2)要创建/var/run/hadoop-hdfs文件来让namenode可以执行并修改权限

 

 

 

这样namenode就可以启动了

 

ps:为了防止重启机器时/var/run/hadoop-hdfs文件丢失,需要在

/usr/lib/tmpfile.d/ 文件下新建一个hadoop.conf文件并写入

d /var/run/hadoop-hdfs 0755 hdfs hadoop -

这样就可以永久存在了

 

datanodesecondarynamenode也是同样的道理

 

上图就是没有/var/run/hadoop-hdfs  报错了。

还可以使用systemctl enable hadoop-hdfs-namenode将其激活,使下次开机后自动开启服务。

namenode启动后会50070端口会启动

可以访问该网站:  http://192.168.40.132:50070/

 

 

 

这样就配置好了

 

 

遇到问题

  配置文件排错 core-site.xml hdfs-site.xml

权限问题  文件无法读写

run文件

 

 

原创粉丝点击