Hadoop之安装hdfs集群

Hadoop之虚拟机创建与安装(1)

Hadoop之虚拟机创建与安装

Hadoop之集群创建与配置(2)

Hadoop之集群创建与配置

Hadoop之linux服务器的基础软件环境配置(3)

Hadoop之linux服务器的基础软件环境配置

安装hadoop

上传hadoop安装包到hdp-01

软件:hadoop-3.0.3.tar.gz
上传hadoop安装包

解压hadoop-3.0.3.tar.gz

tar -zxvf hadoop-3.0.3.tar.gz 

删除doc文件夹–非必要

删除 /root/apps/hadoop-3.0.3/share/doc以减少450M容量,可忽略

rm -rf doc

修改配置文件

要点提示:

核心配置参数:
1)	指定hadoop的默认文件系统为:hdfs
2)	指定hdfs的namenode节点为哪台机器
3)	指定namenode软件存储元数据的本地目录
4)	指定datanode软件存放文件块的本地目录
  1. 修改hadoop-env.sh
    找到# JAVA_HOME=/usr/java/testing hdfs dfs -ls
    添加:JAVA_HOME=/root/apps/jdk1.8.0_191

    vim /root/apps/hadoop-3.0.3/etc/hadoop/hadoop-env.sh
    
    #  JAVA_HOME=/usr/java/testing hdfs dfs -ls
    JAVA_HOME=/root/apps/jdk1.8.0_191
    

添加环境变量
2. 修改core-site.xml
添加节点:
vim /root/apps/hadoop-3.0.3/etc/hadoop/core-site.xml

<configuration>

<property>
<name>fs.defaultFS</name>
<value>hdfs://hdp-01:9000</value>
</property>

</configuration>

添加节点
3. 修改hdfs-site.xml
添加节点:
vim /root/apps/hadoop-3.0.3/etc/hadoop/hdfs-site.xml

<configuration>

<property>
<name>dfs.namenode.name.dir</name>
<value>/root/hdpdata/name</value>
</property>

<property>
<name>dfs.datanode.data.dir</name>
<value>/root/hdpdata/data</value>
</property>

</configuration>

远程拷贝hadoop安装目录到其他机器

scp -r /root/apps/hadoop-3.0.3 hdp-02:/root/apps/
scp -r /root/apps/hadoop-3.0.3 hdp-03:/root/apps/
scp -r /root/apps/hadoop-3.0.3 hdp-04:/root/apps/

配置环境变量

要运行hadoop的命令,需要在linux环境中配置HADOOP_HOME和PATH环境变量
vim /etc/profile

# hadoop-3.0.3
export HADOOP_HOME=/root/apps/hadoop-3.0.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

使环境变量生效:

source /etc/profile

启动HDFS

初始化namenode的元数据目录

要在hdp-01上执行hadoop的一个命令来初始化namenode的元数据存储目录
执行:hadoop namenode -format

创建一个全新的元数据存储目录
生成记录元数据的文件fsimage
生成集群的相关标识:如:集群id——clusterID

启动namenode进程(在hdp-01上)

hadoop-daemon.sh start namenode

启动完后,首先用jps查看一下namenode的进程是否存在

jps	

18964 NameNode
19028 Jps
查看进程

查看端口

netstat -nltp |grep 18964

查看端口

在浏览器访问namenode提供的web端口:9870

192.168.30.131:9870

在这里插入图片描述

报错解决

NameNode is still loading. Redirecting to the Startup Progress page.
在这里插入图片描述
更换一个浏览器进行尝试!
360安全浏览器会报以上错误!

启动众datanode们(在任意地方)

hadoop-daemon.sh start datanode

用自动批量启动脚本来启动HDFS

配置hdp-01到集群中的免密登陆

配置hdp-01到集群中所有机器(包含自己)的免密登陆

  1. 在hdp-01进行配置

  2. ssh-keygen
    输入:ssh-keygen
    一直回车
    在这里插入图片描述

  3. ssh-copy-id

     ssh-copy-id hdp-01
     ssh-copy-id hdp-02
     ssh-copy-id hdp-03
     ssh-copy-id hdp-04
    

在这里插入图片描述

配完免密后

可执行一次 ssh 0.0.0.0

添加datanode进程的节点

修改hadoop安装目录中/root/apps/hadoop-3.0.3/etc/hadoop/workers(把需要启动datanode进程的节点列入)
vim /root/apps/hadoop-3.0.3/etc/hadoop/workers

hdp-01
hdp-02
hdp-03
hdp-04

在hdp-01上用脚本来自动启动整个集群

start-dfs.sh

在hdp-01上用脚本来自动停止整个集群

stop-dfs.sh

启动脚本报错

在这里插入图片描述
解决方案:
进入:/root/apps/hadoop-3.0.3/sbin/目录下

cd /root/apps/hadoop-3.0.3/sbin/

将start-dfs.sh,stop-dfs.sh两个文件顶部添加以下参数:

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

在这里插入图片描述
start-yarn.sh,stop-yarn.sh顶部也需添加以下:

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

在这里插入图片描述

将SecondaryNameNode放至hdp-02

修改各主机:hdfs-site.xml
添加节点
vim /root/apps/hadoop-3.0.3/etc/hadoop/hdfs-site.xml

<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hdp-02:9870</value>
</property>

在这里插入图片描述

在hdp-01进行一下操作:
停止:secondarynamenode

hadoop-daemon.sh stop secondarynamenode

在这里插入图片描述

重启整个集群:stop-dfs.sh
启动整个集群:start-dfs.sh

效果展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值