欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

HDFS的简单分布式集群集群搭建

程序员文章站 2022-05-07 18:56:27
...

HDFS的简单分布式集群集群搭建

前言

本文介绍简单的HDFS完全分布式集群搭建操作,之所以说是简单的分布式集群,因为它并不是高可用的HDFS。下篇文章将介绍如何搭建HA的HDFS分布式集群。

一、集群搭建规划

共需准备4台机器。
一台机器作为NomeNode节点,4台机器作为DataNode节点,其中一个DataNode节点和NameNode节点公用一台机器。
hadoop3(192.168.23.133):NameNode & DataNode
hadoop4(192.168.23.134):DataNode
hadoop5(192.168.23.135):DataNode
hadoop6(192.168.23.136):DataNode

二、HDFS分布式集群搭建

1、克隆4台虚拟机

克隆的这4台机器都安装了JDK并配置环境变量,如何安装JDK并配置环境变量?
HDFS的简单分布式集群集群搭建

2、分别设置4台机器的ip地址,hostname以及ip和hostname的映射文件

2.1 分别修改4台机器的ip地址
vim /etc/sysconfig/network-scripts/ifcfg-ens33

HDFS的简单分布式集群集群搭建

2.2 分别修改4台机器的hostname
vim /etc/hostname

HDFS的简单分布式集群集群搭建

2.3 分别修改4台机器的hostname与ip的映射文件hosts
vim /etc/hosts

每台机器上都要配置规划4台机器的ip地址映射
HDFS的简单分布式集群集群搭建

2.4 分别重启4台机器
reboot

3、配置SSH免密登录

3.1、在NameNode节点上生成ssh私**
ssh-******
3.2、将公钥拷贝到其他3他机器
ssh-copy-id hadoop4
ssh-copy-id hadoop5
ssh-copy-id hadoop6

4、在NameNode节点上解压hadoop压缩包并进行相关配置

4.1 解压hadoop压缩包
tar -zxvf /root/hadoop/hadoop-2.9.2.tar.gz
4.2 配置hadoop环境变量
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0

export JRE_HOME=$JAVA_HOME/jre

export HADOOP_HOME=/root/hadoop/hadoop-2.9.2

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

重新加载配置文件

source /etc/profile
4.3、配置hadoop-evn.sh
vim /root/hadoop/hadoop-2.9.2/etc/hadoop/hadoop-env.sh

将JAVA的路径配置到hadoop的环境文件中

# The java implementation to use.
export JAVA_HOME=/usr/lib/jvm/java-1.8.0
4.4、配置core-sit.xml
vim /root/hadoop/hadoop-2.9.2/etc/hadoop/core-site.xml

1、配置哪台机器为namenode

 <property>
  <name>fs.defaultFS</name>
  <value>hdfs://hadoop3:9000</value>
 </property>

2、默认hadoop的配置将数据放在系统临时目录中:/tmp/hadoop-${user.name},系统临时目录可能会导致集群数据的不安全,因此修改配置,将数据存放在指定的目录,本文将数据存放在解压后的hadoop-2.9.2的下的data文件夹下

 <property>
  <name>hadoop.tmp.dir</name>
  <value>/root/hadoop/hadoop-2.9.2/data</value>
 </property>

4.5、配置hdfs-site.xml

修改root的权限,这样可以让非root用户也可以操作hdfs

<property>
  <name>dfs.permissions.enabled</name>
  <value>false</value>
</property>

4.6、配置slaves文件
vim /root/hadoop/hadoop-2.9.2/etc/hadoop/slaves

将hadoop3,hadoop4,hadoop5,hadoop6作为DataNode节点机器

hadoop3
hadoop4
hadoop5
hadoop6

HDFS的简单分布式集群集群搭建

5、在NameNode节点上将配置好的hadoop-2.9.2目录同步到其他集群节点

scp –r /etc/hadoop/Hadoop-2.9.2 aaa@qq.com:/root/hadoop
scp –r /etc/hadoop/Hadoop-2.9.2 aaa@qq.com:/root/hadoop
scp –r /etc/hadoop/Hadoop-2.9.2 aaa@qq.com:/root/hadoop

6、在NameNode节点上将格式化NameNode

hdfs namenode -format

7、分别关闭4台机器的防火墙

systemctl stop firewalld 

最好将其他3台机器的profile文件重新编译

source /etc/profile

8、启动集群

start-dfs.sh

9、访问HDFS集群浏览器界面

NameNode节点的机器IP,才能访问

http://192.168.23.133:50070/