Hadoop-HDFS安装及分布式集群搭建详解

目录

一、前言

二、 环境准备

2.1 安装JDK

2.1.1、创建文件夹,用于存放安装包和软件

2.1.2、上传并解压

2.1.3、重命名

2.1.4、配置环境变量

2.1.5、刷新配置文件并验证

2.2、配置SSH免密登录

2.2.1、首先需要在BigData01上生成公钥和私钥

2.2.2生成的公钥和私钥的位置

2.2.3、将公钥复制到所有集群节点,包括本地主机

2.2.4、验证本地主机是否可以远程登录其他节点

三、Hadoop安装

3.1、上传并解压

3.2、重命名

3.3、开始配置环境变量

3.4、刷新配置文件

3.5、验证hadoop命令是否可以识别

三、分布式搭建

3.1、伪分布模式

3.1.1、搭建前的准备工作:

3.1.2、修改配置文件

3.1.3、格式化namenode

3.1.4、启动集群

3.2、全分布模式

3.2.1、准备三台服务器

3.2.2、修改bigdata01配置文件

3.2.3、修改workers

3.2.4、分发配置文件

3.2.5、拷贝环境变量

3.2.6、格式化namenode

3.2.7、启动HDFS

3.2.8、验证HDFS是否正常运行

四、总结


一、前言

Hadoop分布式文件系统(HDFS)是Hadoop生态系统中最基础的组件,负责存储大规模数据并提供高效的数据访问。HDFS通过分布式架构将数据分片存储在不同节点上,并实现了容错和高可用性。本文将详细介绍如何在Linux环境下安装Hadoop HDFS以及如何搭建一个简单的分布式HDFS集群。

二、 环境准备

在开始HDFS安装之前,需要准备好基本的运行环境。

  • 操作系统:建议使用Linux(如CentOS或Ubuntu)
  • JDK:Hadoop依赖Java环境,需安装JDK 8或以上版本
  • SSH免密登录:配置各个节点之间的免密登录,方便Hadoop节点之间的通信

2.1 安装JDK

2.1.1、创建文件夹,用于存放安装包和软件

mkdir -p /opt/modules     --以后存放安装包
mkdir -p /opt/installs    --以后存放解压后的软件 

2.1.2、上传并解压

tar -zxvf jdk-8u321-linux-x64.tar.gz -C /opt/installs

2.1.3、重命名

-- 进入文件夹
cd /opt/installs
-- 进行重命名
mv jdk1.8.0_171 jdk

2.1.4、配置环境变量

-- 打开文件
vi /etc/profile

-- 在文件的最后追加,不要删除别人的任何配置
export JAVA_HOME=/opt/installs/jdk
export PATH=$PATH:$JAVA_HOME/bin

2.1.5、刷新配置文件并验证

source /etc/profile  -- 刷新权限
java -version  -- 验证

2.2、配置SSH免密登录

2.2.1、首先需要在BigData01上生成公钥和私钥

ssh-keygen -t rsa

2.2.2生成的公钥和私钥的位置

/root/.ssh/id_rsa

2.2.3、将公钥复制到所有集群节点,包括本地主机

ssh-copy-id user@hostname
或
ssh-copy-id 节点主机名 或 ssh-copy-id ip

2.2.4、验证本地主机是否可以远程登录其他节点

ssh 主机名/ip  --不需要输入密码即可登录
exit  --退出当前的登录

三、Hadoop安装

3.1、上传并解压

cd /opt/moudles
tar -zxvf hadoop-3.3.1.tar.gz -C /opt/installs/

3.2、重命名

cd /opt/installs/
mv hadoop-3.3.1 hadoop

3.3、开始配置环境变量

vi /etc/profile

export JAVA_HOME=/opt/installs/jdk
export HADOOP_HOME=/opt/installs/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

3.4、刷新配置文件

source /etc/profile

3.5、验证hadoop命令是否可以识别

hadoop version

三、分布式搭建

3.1、伪分布模式

3.1.1、搭建前的准备工作:

-- 环境准备⼯作: 
1、安装了jdk
2、安装了hadoop
3、关闭了防⽕墙 
4、免密登录
     ⾃⼰对⾃⼰免密
     ssh-copy-id bigdata01   选择yes 输⼊密码
     测试免密是否成功:    ssh bigdata01
5、修改linux的⼀个安全机制
    vi /etc/selinux/config
   修改⾥⾯的 SELINUX=disabled
6、设置host映射

3.1.2、修改配置文件

配置文件位置: /opt/installs/hadoop/etc/hadoop

core-site.xml

<configuration>
  <!-- 设置namenode节点 -->
  <!-- 注意: hadoop1.x时代默认端⼝9000 hadoop2.x时代默认端⼝8020 hadoop3.x时 代默认端⼝ 9820 -->
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://bigdata01:9820</value>
  </property>
  
  <!-- hdfs的基础路径,被其他属性所依赖的⼀个基础路径 -->
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/opt/installs/hadoop/tmp</value>
  </property>
</configuration>

hdfs-site.xml

<configuration>
    <property>
        <!--备份数量-->
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <!--secondarynamenode守护进程的http地址:主机名和端⼝号。参考守护进程布局 -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>bigdata01:9868</value>
    </property>
    <!-- namenode守护进程的http地址:主机名和端⼝号。参考守护进程布局 -->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>bigdata01:9870</value>
    </property>
</configuration>

hadoop-env.sh

export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

export JAVA_HOME=/opt/installs/jdk

3.1.3、格式化namenode

最后对整个集群记性namenode格式化:

hdfs namenode -format

3.1.4、启动集群

start-dfs.sh

3.2、全分布模式

全分布模式:必须至少有三台以上的Linux。

前期准备工作:

3.2.1、准备三台服务器

目前有两台,克隆第二台(因为第二台没有安装mysql), 克隆结束后,进行修复操作

1) 修改IP 2) 修改主机名 3)修改映射文件hosts

1、安装JDK
2、设置host映射
   远程拷贝:
   scp -r /etc/hosts root@主机名:/etc/
3、免密登录
4、安装Hadoop(第一台)
5、关闭防火墙
   systemctl status firewalld
6、修改linux的⼀个安全机制
   vi /etc/selinux/config
   修改⾥⾯的 SELINUX=disabled

3.2.2、修改bigdata01配置文件

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <!--secondarynamenode守护进程的http地址:主机名和端⼝号。参考守护进程布局 -->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>bigdata02:9868</value>
    </property>
    <!-- namenode守护进程的http地址:主机名和端⼝号。参考守护进程布局 -->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>bigdata01:9870</value>
    </property>
</configuration>

3.2.3、修改workers

主机名01
主机名02
主机名03

3.2.4、分发配置文件

修改配置文件(第一台),分发到另外两台(远程拷贝)

scp -r /opt/installs/hadoop/  主机名:/opt/installs/

3.2.5、拷贝环境变量

scp -r /etc/profile root@主机名:/etc/
将环境变量拷贝到另外两台
刷新环境变量 source /etc/profile

3.2.6、格式化namenode

hdfs namenode -format

3.2.7、启动HDFS

start-dfs.sh

3.2.8、验证HDFS是否正常运行

访问HDFS的Web界面,默认地址为:http://ip(主机ip地址):9870

四、总结

本文介绍了如何在Linux环境下安装Hadoop HDFS,并进行了简单的单节点和多节点分布式集群搭建。通过配置Hadoop的核心文件、格式化NameNode、启动HDFS集群,我们可以顺利搭建一个高可用、高容错的HDFS分布式文件系统。HDFS是Hadoop生态系统的基石,熟练掌握其安装及配置是大数据处理的基础。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值