尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Hadoop 3.1.3 伪分布式环境搭建:Ubuntu 18.04 下 5 步完成配置与验证
Hadoop 3.1.3 伪分布式环境搭建Ubuntu 18.04 实战指南1. 环境准备与基础配置在开始Hadoop伪分布式环境搭建前需要确保系统环境满足基本要求。Ubuntu 18.04 LTS作为长期支持版本提供了稳定的基础运行环境。以下是详细的准备工作系统要求Ubuntu 18.04 LTS 64位系统至少4GB内存推荐8GB20GB可用磁盘空间稳定的网络连接首先更新系统软件包并安装必要工具sudo apt-get update sudo apt-get upgrade -y sudo apt-get install -y ssh pdsh vim git curl wgetJava环境配置 Hadoop 3.1.3需要Java 8运行环境执行以下命令安装OpenJDKsudo apt-get install -y openjdk-8-jdk验证Java安装是否成功java -version提示如果系统已安装其他Java版本可通过update-alternatives --config java切换默认版本创建专用Hadoop用户能提高系统安全性sudo adduser hadoop sudo usermod -aG sudo hadoop su - hadoop2. SSH免密登录配置Hadoop集群管理需要SSH免密登录支持即使单节点伪分布式环境也需要此配置。生成SSH密钥对ssh-keygen -t rsa -P -f ~/.ssh/id_rsa cat ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys chmod 0600 ~/.ssh/authorized_keys测试SSH连接ssh localhost若仍需输入密码检查权限设置chmod 0700 ~/.ssh chmod 0600 ~/.ssh/*3. Hadoop安装与核心配置从Apache官网下载Hadoop 3.1.3二进制包wget https://archive.apache.org/dist/hadoop/core/hadoop-3.1.3/hadoop-3.1.3.tar.gz tar -xzvf hadoop-3.1.3.tar.gz sudo mv hadoop-3.1.3 /usr/local/hadoop设置环境变量添加到~/.bashrc末尾export HADOOP_HOME/usr/local/hadoop export PATH$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin export HADOOP_CONF_DIR$HADOOP_HOME/etc/hadoop export JAVA_HOME/usr/lib/jvm/java-8-openjdk-amd64使配置立即生效source ~/.bashrc核心配置文件修改hadoop-env.shecho export JAVA_HOME/usr/lib/jvm/java-8-openjdk-amd64 $HADOOP_HOME/etc/hadoop/hadoop-env.shcore-site.xmlconfiguration property namefs.defaultFS/name valuehdfs://localhost:9000/value /property property namehadoop.tmp.dir/name value/tmp/hadoop-tmp/value /property /configurationhdfs-site.xmlconfiguration property namedfs.replication/name value1/value /property property namedfs.namenode.name.dir/name value/tmp/hadoop/dfs/name/value /property property namedfs.datanode.data.dir/name value/tmp/hadoop/dfs/data/value /property /configurationmapred-site.xmlconfiguration property namemapreduce.framework.name/name valueyarn/value /property /configurationyarn-site.xmlconfiguration property nameyarn.nodemanager.aux-services/name valuemapreduce_shuffle/value /property property nameyarn.nodemanager.env-whitelist/name valueJAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME/value /property /configuration4. HDFS初始化与集群启动格式化HDFS文件系统仅首次需要hdfs namenode -format启动HDFS和YARN服务start-dfs.sh start-yarn.sh验证服务是否正常启动jps正常应看到以下进程NameNodeDataNodeResourceManagerNodeManagerSecondaryNameNodeWeb管理界面访问NameNode: http://localhost:9870ResourceManager: http://localhost:80885. 运行WordCount验证环境创建测试目录并上传文件hdfs dfs -mkdir -p /user/hadoop/input hdfs dfs -put $HADOOP_HOME/etc/hadoop/*.xml /user/hadoop/input运行WordCount示例hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /user/hadoop/input /user/hadoop/output查看结果hdfs dfs -cat /user/hadoop/output/*常见问题排查问题现象可能原因解决方案无法访问Web界面防火墙阻止sudo ufw disable临时关闭防火墙DataNode未启动多次格式化导致UUID不一致删除/tmp/hadoop*目录后重新格式化内存不足默认配置过高修改yarn-site.xml中的内存参数6. 日常管理与维护服务启停命令# 启动所有服务 start-all.sh # 停止所有服务 stop-all.sh # 单独启停组件 hadoop-daemon.sh start|stop namenode hadoop-daemon.sh start|stop datanode yarn-daemon.sh start|stop resourcemanager日志文件位置NameNode日志: $HADOOP_HOME/logs/hadoop-hadoop-namenode-*.logDataNode日志: $HADOOP_HOME/logs/hadoop-hadoop-datanode-*.logYARN日志: $HADOOP_HOME/logs/yarn-hadoop-*.log性能优化建议调整JVM堆内存大小hadoop-env.sh合理设置HDFS块大小dfs.blocksize配置MapReduce任务内存参数mapred-site.xml启用压缩减少IO开销7. 进阶配置与扩展启用历史服务器 在mapred-site.xml中添加property namemapreduce.jobhistory.address/name valuelocalhost:10020/value /property property namemapreduce.jobhistory.webapp.address/name valuelocalhost:19888/value /property启动历史服务器mr-jobhistory-daemon.sh start historyserverHDFS快照功能hdfs dfsadmin -allowSnapshot /user hdfs dfs -createSnapshot /user my_snapshot安全模式操作# 进入安全模式 hdfs dfsadmin -safemode enter # 离开安全模式 hdfs dfsadmin -safemode leave # 检查状态 hdfs dfsadmin -safemode get在实际项目中伪分布式环境适合开发测试阶段使用。当需要处理更大规模数据时可以考虑迁移到完全分布式集群环境。
RELATED

相关推荐

GAM模型与MILP求解:航班调度优化中15万变量与2阶段启发式算法实战

GAM模型与MILP求解:航班调度优化中15万变量与2阶段启发式算法实战

GAM模型与MILP求解:航班调度优化中15万变量与2阶段启发式算法实战航空公司的航班调度优化一直是运筹学领域最具挑战性的问题之一。当我们将乘客选择行为纳入考量时,问题的复杂性会呈指数级增长。传统方法往往将乘客选择视为外生变量,而最新研…

📅 2026/10/28 6:35:16
如何快速提取Godot游戏资源:终极解包指南

如何快速提取Godot游戏资源:终极解包指南

如何快速提取Godot游戏资源:终极解包指南 【免费下载链接】godot-unpacker godot .pck unpacker 项目地址: https://gitcode.com/gh_mirrors/go/godot-unpacker 你是否遇到过这样的情况:下载了一个用Godot引擎开发的游戏,想要研究它的…

📅 2026/8/30 1:54:21
2026办公提效六件套:离线可用、中文友好、隐私安全的实用工具链

2026办公提效六件套:离线可用、中文友好、隐私安全的实用工具链

1. 这不是“又一个工具合集”,而是一套可嵌入日常工作的效率操作系统“2026.04.24实用教程工具分享”这个标题乍看平平无奇,像极了你邮箱里第37封被标记为“稍后处理”的资讯简报,或是知识星球里那个更新频率飘忽不定的“每周精选”。但如果你…

📅 2026/9/12 1:46:16
MORE NEWS

更多资讯

📰

Altium许可证闲置预警机制设计与实现

1. 为什么需要Altium许可证闲置预警机制在PCB设计领域,Altium Designer作为行业主流工具,其许可证管理一直是企业IT部门和设计团队关注的焦点问题。我们公司曾经历过一次典型的许可证危机:某个周一早晨,三位工程师同时无法启动Alt…

📰

Java到C++语义保真翻译器:AST驱动的跨语言转换方案

简介:这是一份面向高校计算机专业高年级学生与编译原理初学者的课程设计级Java到C源码翻译工具,聚焦面向对象特性(如动态绑定、继承、重载)在底层C结构(vtable、智能指针)中的模拟实现。资源包共64个文件&a…

📰

t3code 深度解析:代码结构、生成方案与落地避坑指南

1. 从“t3code”这个关键词说起:它到底指什么第一次看到“t3code”这个词,很多人会一头雾水。它不像“Python教程”“Docker入门”那样一眼就能看出领域归属,也不像某个知名框架或库那样有明确的官方文档入口。我在几个技术社区和代码托管平台…

📰

Claude-mem:不存在的工具与AI工程中的信息验证原则

我注意到您提供的输入内容中,项目标题为“claude-mem”,但后续的【项目正文】、【关键词】、【摘要描述】等字段全部为空,且网络搜索内容部分为纯空行()。这意味着:没有原始描述支撑项目背景、功能或实现逻…

📰

Android system.img底层解析:img2simg/make_ext4fs/simg2img/mkuserimg四件套实战指南

简介:本资源是一套开箱即用的Android系统镜像处理工具集,专为ROM开发者、系统定制工程师及嵌入式调试人员设计,解决日常解包、打包、稀疏镜像转换与ext4文件系统构建等核心需求。压缩包共含4个已编译可执行文件:img2simg&#xff…

📰

基于Java技术栈的河南美食分享系统开发实践

1. 项目背景与核心价值河南作为中原文化的发源地,拥有着丰富多样的地方特色美食文化。从烩面到胡辣汤,从道口烧鸡到开封灌汤包,这些美食不仅承载着地方饮食文化的精髓,更是当地人民生活智慧的结晶。然而,在数字化浪潮下…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬