Hadoop伪分布式集群搭建(Ubuntu系统)

发布于:2025-07-14 ⋅ 阅读:(17) ⋅ 点赞:(0)

环境准备

  1. 系统要求:Ubuntu 20.04/22.04 LTS

  2. 软件版本

    • Hadoop 3.3.5

    • JDK 8

  3. 硬件要求:至少4GB内存,20GB磁盘空间


详细步骤

1.安装Vim编辑器

后续需要更改一些配置文件,我比较喜欢用的是 vim(vi增强版,基本用法相同),建议安装下。

sudo apt install vim

2.安装SSH、配置SSH无密码登陆

集群、单节点模式都需要用到 SSH 登陆(类似于远程登陆,你可以使用FinalShell登录某台 Linux 主机,并且在上面运行命令),Ubuntu 默认已安装了 SSH client,此外还需要安装 SSH server:

sudo apt install openssh-server

再利用 ssh-keygen 生成密钥,并将密钥加入到授权中:

cd ~/.ssh/                     # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa              # 会有提示,都按回车就可以
cat ./id_rsa.pub >> ./authorized_keys  # 将密钥文件内容加入到授权文件

相关命令的含义: 在 Linux 系统中,~ 代表的是用户的主文件夹,即 "/home/用户名" 这个目录,如你的用户名为 hadoop,则 ~ 就代表 "/home/hadoop/"。 >>会在目标原有内容后追加内容。当文件存在时直接在文件末尾进行内容追加,不会删除原文件;否则直接创建。命令中的 # 后面的文字是注释,只需要输入前面命令即可。

此时再用 ssh localhost 命令,无需输入密码就可以直接登陆了。exit命令可以退出ssh登录。

3.安装JDK8并配置环境变量

使用FinalShell将JDK安装包上传至虚拟机目录:/home/hadoop/下载

进入“/home/hadoop/下载”目录,使用tar命令解压jdk安装包至/usr/local目录下

配置JDK的环境变量

vim ~/.bashrc     #打开配置文件

 在文件首部添加如下2行代码,保存并退出。

 继续执行如下命令让.bashrc文件的配置立即生效:

source ~/.bashrc     #使配置文件生效
java -version        #查看java安装的版本号验证环境变量配置是否成功

4.安装 Hadoop3.3.5并配置环境变量

使用FinalShell将Hadoop3.3.5安装包上传至虚拟机目录:/home/hadoop/下载

进入“/home/hadoop/下载”目录下,使用tar命令解压Hadoop3.3.5安装包至/usr/local目录下

sudo tar -zxvf hadoop-3.3.5.tar.gz -C /usr/local   # 解压到/usr/local中
cd /usr/local/                #进入hadoop安装目录

 使用chown命令提高hadoop用户对hadoop-3.3.5文件夹的权限

sudo chown -R hadoop /usr/local/hadoop-3.3.5        #修改文件权限

打开 ~/.bashrc 文件,添加如下代码,配置Hadoop的环境变量

 保存并退出.bashrc 文件,继续执行如下命令让.bashrc文件的配置立即生效:

source ~/.bashrc     #使配置文件生效

 打开/usr/local/hadoop-3.3.5/etc/hadoop/hadoop-env.sh文件,添加JDK的环境变量

vim /usr/local/hadoop-3.3.5/etc/hadoop/hadoop-env.sh

然后输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:

 cd /usr/local/hadoop-3.3.5/bin              #进入hadoop安装目录的bin目录
./hadoop version                             #查看安装的hadoop版本信息

5.修改Hadoop伪分布式配置文件

Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。

Hadoop 的配置文件位于/usr/local/hadoop-3.3.5/etc/hadoop中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现,使用cd命令进入配置文件所在目录:

cd /usr/local/hadoop-3.3.5/etc/hadoop

①修改配置文件 core-site.xml

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop-3.3.5/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

②修改配置文件 hdfs-site.xml

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop-3.3.5/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop-3.3.5/tmp/dfs/data</value>
    </property>
</configuration>

6.格式化HDFS

配置完成后,执行 NameNode 的格式化:

cd /usr/local/hadoop-3.3.5/bin/       #进入bin目录
./hdfs namenode -format                #格式化

成功的话,会看到 "successfully formatted" 的提示,具体返回信息类似如下:

7.启动Hadoop集群

启动集群的程序在/usr/local/hadoop-3.3.5/sbin/目录下,由于我们配置了HDDOOP环境变量,所以可以在任意目录下输入start-dfs.sh命令启动hadoop集群,jps查看启动进程。

8.访问Web UI验证集群状态

访问Web UI:http://192.168.101.32:9870/

9.关闭Hadoop集群

 输入stop-dfs.sh命令关闭hadoop集群,jps查看启动进程。


网站公告

今日签到

点亮在社区的每一天
去签到