跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Javajava

Hadoop 安装与使用指南:Ubuntu Kylin 环境下的单机及伪分布式部署

综述由AI生成Hadoop 安装配置涉及 Linux 环境准备、用户权限设置、SSH 免密登录、JDK 环境变量配置以及 Hadoop 核心组件的部署。本文以 Ubuntu Kylin 16.04 LTS 为例,详细演示了从虚拟机搭建到单机模式测试,再到伪分布式集群初始化的全过程。重点包括配置文件修改、NameNode 格式化、HDFS 启动验证及 MapReduce 示例运行,确保读者能独立完成 Hadoop 环境的构建与基础功能验证。

晚风叙旧发布于 2026/2/27更新于 2026/5/2921 浏览
Hadoop 安装与使用指南:Ubuntu Kylin 环境下的单机及伪分布式部署

Hadoop 安装与使用指南

一、Linux 虚拟机准备

本文基于 Ubuntu Kylin 16.04 LTS 进行演示。相比新版,该版本对虚拟机资源消耗更低,运行更流畅,适合实验环境。推荐使用 VMware 作为虚拟化软件,其易用性优于 VirtualBox。

二、创建 Hadoop 用户

如果安装 Ubuntu 时未使用 hadoop 用户,建议新建一个专门用于大数据开发的用户。

首先创建新用户并指定 Shell:

sudo useradd -m hadoop -s /bin/bash

设置密码(可简单设为 hadoop):

sudo passwd hadoop

为便于后续部署,将用户加入 sudo 组赋予管理员权限:

sudo adduser hadoop sudo

三、系统更新与工具安装

切换到 hadoop 用户登录后,先更新软件源,确保能顺利安装依赖:

sudo apt-get update

安装 Vim 编辑器以便修改配置文件:

sudo apt-get install vim

安装过程中若提示确认,输入 y 即可。

四、SSH 无密码登录配置

SSH 简介与作用

SSH(Secure Shell)是建立在应用层和传输层基础上的安全协议,用于远程登录和其他网络服务。在 Hadoop 集群中,NameNode 需要通过 SSH 启动所有节点的守护进程,而 Hadoop 本身不支持交互式密码输入,因此必须配置免密登录。

安装与配置步骤

Ubuntu 默认已安装 SSH 客户端,只需安装服务端:

sudo apt-get install openssh-server

测试连接本机:

ssh localhost

首次连接会提示确认指纹,输入 yes 后需输入密码。为了后续自动化管理,我们需要生成密钥并配置免密:

exit
cd ~/.ssh
ssh-keygen -t rsa
cat ./id_rsa.pub >> ./authorized_keys

再次执行 ssh localhost 即可无需密码直接登录。

五、Java 环境搭建

Hadoop 基于 Java 开发,运行需要 JDK 支持。Hadoop 3.3.5 要求 JDK 1.8 或更高版本。

假设下载的文件为 jdk-8u371-linux-x64.tar.gz 并位于 /home/hadoop/Downloads/。

创建目录并解压:

 /usr/lib
  jvm
 ~
 Downloads
 tar -zxvf ./jdk-8u371-linux-x64.tar.gz -C /usr/lib/jvm
cd
sudo
mkdir
cd
cd
sudo

配置环境变量,编辑 ~/.bashrc 文件:

vim ~/.bashrc

在文件末尾添加以下内容:

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_371
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

保存退出后生效配置:

source ~/.bashrc

验证安装:

java -version

若显示 1.8.0_371 则说明成功。

六、单机模式安装

单机模式下,Hadoop 仅在一台机器运行,使用本地文件系统而非 HDFS。

下载 hadoop-3.3.5.tar.gz 并解压至 /usr/local:

sudo tar -zxf ~/Downloads/hadoop-3.3.5.tar.gz -C /usr/local
cd /usr/local/
sudo mv ./hadoop-3.3.5/ ./hadoop
sudo chown -R hadoop ./hadoop

查看版本信息:

./bin/hadoop version

运行 Grep 示例测试:

cd /usr/local/hadoop
mkdir input
cp ./etc/hadoop/*.xml ./input
./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.5.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/*

输出结果应包含统计信息,如 1 dfsadmin 等。

七、伪分布式模式安装

伪分布式模式模拟集群环境,但所有进程运行在同一台机器上。

1. 修改配置文件

编辑 core-site.xml:

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>A base 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/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>
</configuration>

2. 初始化与启动

格式化 NameNode(注意:仅限首次):

cd /usr/local/hadoop
./bin/hdfs namenode -format

成功后会看到 successfully formatted 提示。

启动 HDFS:

./sbin/start-dfs.sh

通过 jps 检查进程,应包含 NameNode, SecondaryNameNode, DataNode。

访问 Web UI (http://localhost:9870) 可查看集群状态。

3. 文件操作与测试

创建用户目录并上传数据:

./bin/hdfs dfs -mkdir -p /user/hadoop
./bin/hdfs dfs -mkdir input
./bin/hdfs dfs -put ./etc/hadoop/*.xml input

运行 MapReduce 任务:

./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.5.jar grep input output 'dfs[a-z.]+'

查看结果:

./bin/hdfs dfs -cat output/*

注意: 重新运行程序前需删除旧的 output 目录:

./bin/hdfs dfs -rm -r output

停止服务命令:

./sbin/stop-dfs.sh

小结

本文详述了 Ubuntu Kylin 16.04 LTS 下 Hadoop 的安装配置流程。从 Linux 环境准备、用户权限设置、SSH 免密登录到 Java 环境搭建,再到单机与伪分布式模式的部署与测试。重点涵盖了配置文件修改、NameNode 格式化、HDFS 启动验证及 MapReduce 示例运行,帮助读者独立完成 Hadoop 环境的构建与基础功能验证。

目录

  1. Hadoop 安装与使用指南
  2. 一、Linux 虚拟机准备
  3. 二、创建 Hadoop 用户
  4. 三、系统更新与工具安装
  5. 四、SSH 无密码登录配置
  6. SSH 简介与作用
  7. 安装与配置步骤
  8. 五、Java 环境搭建
  9. 六、单机模式安装
  10. 七、伪分布式模式安装
  11. 1. 修改配置文件
  12. 2. 初始化与启动
  13. 3. 文件操作与测试
  14. 小结
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • B/S 架构核心原理与实战指南
  • Claude Code Viewer: Web 端会话管理工具
  • HarmonyOS 应用开发:相对与栅格布局详解
  • 算法实战:Z 字形变换与外观数列详解
  • 二叉树深度优先搜索(DFS)算法详解与实战
  • C++ 二叉搜索树简单实现:增删查改全攻略
  • Python调用AI翻译API:requests封装最佳实践
  • Spring AI Alibaba Graph 初探
  • LightRAG 本地部署与 WebUI 应用实战
  • 基于 Obsidian 看板与 Copilot 的项目管理及每日总结工作流
  • STL 文件预览工具 stl-thumb 安装与使用指南
  • OpenClaw 对接飞书机器人高频踩坑与解决方案
  • AI 辅助钱包开发:智能生成 imToken 生态合约交互与监控脚本
  • Docker 安装部署全流程使用指南(Linux 通用版)
  • Python IDE 选型指南:主流工具对比与场景适配
  • CRC-8 算法详细解析
  • 清华大学开源 Kronos 模型:AI 解读 K 线规律与实战部署
  • AI 大模型技术原理、训练优化及行业应用全景解析
  • Spring AI 自定义 Tool 调用返回值:实现 TodoList 提醒注入
  • 无需 Mac:在 Windows 电脑完成 uni-app 开发并发布 iOS 应用

相关免费在线工具

  • Keycode 信息

    查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online

  • Escape 与 Native 编解码

    JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online

  • JavaScript / HTML 格式化

    使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online

  • JavaScript 压缩与混淆

    Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online