Apache hadoop 学习(一)-HDFS安装

所有资料基本来自官网。

1.hadoop目前最新开源版本3.1.2,学习资料也很多。希望自己可以整理出相对全完整的一份资料吧,方便今后学习查阅。

2.镜像地址

http://mirror.bit.edu.cn/apache/hadoop/common/

3.下载hadoop-3.1.2.tar.gz  编译好的。

4.三台虚拟机机安装,修改主机名 分别为master,slave1,slave2;三台机器。

   采用root安装JDK1.8即可这里不再介绍。

   三台机器分别新建账号hdp(因为感觉用root账号不太好)。

5.说明

HDFS  有三种节点

NameNode:管理数据块映射;处理客户端的读写请求;配置副本策略;管理HDFS的名称空间

SecondaryNameNode:保存着NameNode的部分信息 ,是NameNode的冷备份

DataNode:负责存储client发来的数据块block;执行数据块的读写操作。是NameNode的小弟.

6.安装

主节点配置:

~  mkdir modual     -- 存放安装文件

~  mkdir software   -- 存放压缩包

解压 tar.gz包到hdp  ~/modual  目录下 

~  tar -zxvf  ./software/hadoop-3.1.2.tar.gz  -C  ./modual/

配置 etc/hadoop/hadoop-env.sh 

export JAVA_HOME=/opt/moduals/jdk1.8.0_152

#存储守护程序进程ID文件的目录。

export HADOOP_PID_DIR=/home/hdp/modual/hadoop-3.1.2/data     

 #存储守护程序日志文件的目录。如果日志文件不存在,则会自动创建。

export HADOOP_PID_DIR=/home/hdp/modual/hadoop-3.1.2/log   

#用于Java heapsize的最大内存使用量,默认单位为M. 默认情况下, Hadoop将让JVM决定使用多少内存

export HADOOP_PID_DIR=1g  

配置etc/hadoop/core-site.xml  

#namenode节点配置

<property>

<name>fs.defaultFS</name>

<value>hdfs://master:9000</value>

</property>

#读/写缓冲区大小。

<property>

<name>io.file.buffer.size</name>

<value>131072</value>

</property>

配置etc/hadoop/hdfs-site.xml

#标记可以介入到集群中的DaraNode的列表(文件一定要在active的namenode节点下面 才会生效)
#conf/slaves 不存在 自己创建 可自行测试相关
<property>
    <name>dfs.hosts</name>     
    <value>/home/hdp/modual/hadoop-3.1.2/etc/hadoop/conf/slaves</value>
  </property>
#标记需要下线的机器列表(文件一定要在active的namenode节点下面 才会生效)
#conf/dfs.hosts.exclude不存在 自己创建 可自行测试相关
 <property>
    <name>dfs.hosts.exclude</name>     
    <value>/home/hdp/modual/hadoop-3.1.2/etc/Hadoop/conf/dfs.hosts.exclude</value>
  </property>

#namenode 数据存储目录

 <property>
    <name>dfs.namenode.name.dir</name>     
    <value>/home/hdp/modual/hadoop-3.1.2/namenodedir</value>
  </property>

#datanode 数据存储目录 (可以多个 用逗号隔开)

<property>
    <name>dfs.datanode.data.dir</name>     
    <value>/home/hdp/modual/hadoop-3.1.2/datanodedir</value>
  </property>
#数据块大小,默认256M

 <property>
    <name>dfs.blocksize</name>     
    <value>268435456</value>
  </property>

#nameNode通信线程数

 <property>
    <name>dfs.namenode.handler.count</name>     
    <value>100</value>
  </property>

7.其他节点配置 hdp 用户目录下创建module目录

~ mkdir module

三台机器ssh互通配置,不做介绍(方便SCP传输,和后期集群启动)

scp -r ./hadoop-3.1.2/  hdp@slave1:~/modual/

scp -r ./hadoop-3.1.2/  hdp@slave2:~/modual/

8.启动节点

cd  /home/hdp/modual/hadoop-3.1.2/bin

master 启动namenode,datanode ,其他只启动datanode节点。

./hdfs namenode -format

./hdfs --daemon start namenode
./hdfs --daemon start datanode

slave1,slave2 启动DataNode节点

./hdfs --daemon start datanode

完成HDFS 一个NameNode节点,三个数据节点配置。

访问默认NameNode webUI:  http://192.168.19.148:9870 ( 访问不同 关闭防火墙)

成功如图:

三台节点

 

 

9.测试

hdfs-shell  文件上传 下载 删除 查看 

shell相关操作很多,可以去官网查看 如图:

cd  /home/hdp/modual/hadoop-3.1.2/bin到目录下

目录创建

./hadoop fs -mkdir /TEST

文件上传 

./hadoop fs -put -f  /home/hdp/text.txt /TEST 

文件查看

./hadoop fs -cat hdfs://master:9000/TEST/text.txt

web 数据目录如下:

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值