当前位置: 首页 > news >正文

Ubuntu下单机安装Hadoop详细教程(附所需安装包下载)

目录

前言

一、创建Hadoop用户

二、更新apt和安装Vim编辑器

三、安装SSH和配置SSH无密码登录

四、安装Java环境

1. 安装JDK

2. 配置JDK环境

3. 检验安装 

五、安装单机Hadoop

1. 下载安装Hadoop

2. 运行示例

总结



前言

本文安装的 Hadoop 及 Java 环境基于林子雨老师的《大数据技术原理与应用(第3版)》中所要求,其中 Java 版本为1.8.0_301,Hadoop 版本为3.2.2,其他版本的安装请参考其他博客。

Hadoop 单机安装基本配置主要包括以下几个步骤:

  • 创建 Hadoop 用户
  • 更新 apt 和安装 Vim 编辑器
  • 安装 SSH 和配置 SSH 无密码登录
  • 安装 Java 环境
  • 安装单机 Hadoop

这里我的操作系统环境是 Ubuntu20.04,此安装方法同样适用于低版本。


一、创建Hadoop用户

创建用户命令如下:

 sudo useradd -m hadoop -s /bin/bash

 接着为 hadoop 用户设置密码,建议三位数,不用太长也要便于记忆:

sudo passwd hadoop

然后为 hadoop 用户增加管理员权限:

sudo adduser hadoop sudo

切换用户为hadoop登录!



二、更新apt和安装Vim编辑器

首先更新 apt:

sudo apt-get update

接着安装 Vim 编辑器:

sudo apt-get install vim 


若电脑已安装则可跳过此步骤。


三、安装SSH和配置SSH无密码登录

Ubuntu 操作系统下默认已安装了 SSH 客户端,因此这里我们只需安装 SSH 服务端:

sudo apt-get install openssh-server

安装后,可使用以下命令登录本机:

ssh localhost

输入 yes 与用户密码,就可以登录到本机,详细输出如下:

zq@fzqs-computer [11时22分50秒] [/home/hadoop/Downloads] 
-> %  
ssh localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECDSA key fingerprint is SHA256:YMFv60J4eT7***c3SA8sfuXU.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
zq@localhost's password: 
Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-36-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

0 updates can be applied immediately.

Your Hardware Enablement Stack (HWE) is supported until April 2025.

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

接着我们退出 SSH 登录,

exit

配置无密码登录:

cd ~/.ssh/
ssh-keygen -t rsa

注意这里第二步要你输入文件名时不用输入,直接一路 Enter 选择默认值就好了!

cat ./id_rsa.pub >> ./authorized_keys

此时再用 ssh localhost 命令无需密码即可登录了。


四、安装Java环境

1. 安装JDK

对于 Hadoop3.1.3 及以上版本而言,需要使用 JDK1.8 或者更新的版本,这里我们使用的 JDK 版本为1.8.0_301,安装包可以从 Oracle 官网下载:Java Downloads | Oracle,Java官网安装麻烦

也可从我的百度网盘下载:jdk-8u301-linux-x64.tar.gz

提取码:2g4c

接着在 /usr/lib 目录下创建 jvm 文件夹来保存 JDK 文件:

cd /usr/lib
sudo mkdir jvm

解压缩之前的 JDK 文件到上述目录中:

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

2. 配置JDK环境

使用 gedit 编辑器编辑环境变量:

sudo gedit ~/.bashrc

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

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

保存并退出,接着使我们刚加入的环境变量生效:

source ~/.bashrc

3. 检验安装 

输入以下命令:

java -version

若出现如下输出则说明安装成功:

hadoop@fzqs-computer:~$ java -version

java version "1.8.0_301"
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)


五、安装单机Hadoop

1. 下载安装Hadoop

下载地址:Apache Hadoop,这里官网下载较快,但注意不要下载 src 源码包!

这里我安装的 Hadoop 版本为3.2.2,下载好后,执行以下命令安装:

sudo tar -zxf ~/Downloads/hadoop-3.2.2.tar.gz -C /usr/local

修改目录名称:

cd /usr/local
sudo mv  ./hadoop-3.2.2/ ./hadoop

赋予可执行权限:

sudo chown -R hadoop ./hadoop

  进入 hadoop 文件夹,查看安装的 Hadoop 版本信息:

cd ./hadoop
./bin/hadoop version

hadoop@fzqs-computer:/usr/local/hadoop$ ./bin/hadoop version

Hadoop 3.2.2
Source code repository https://github.com/apache/hadoop.git -r a3b9c37a397ad4188041dd80621bdeefc46885f2
Compiled by ubuntu on 2021-06-15T05:13Z
Compiled with protoc 3.7.1
From source with checksum 88a4ddb2299aca054416d6b7f81ca55
This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-3.2.2.jar

若出现如上输出,则说明 Hadoop 安装成功。

2. 运行示例

首先在 Hadoop 安装目录下新建 input 子目录:

cd /usr/local/hadoop
sudo mkdir input

 复制 “/usr/local/hadoop/etc/hadoop” 中的配置文件到 input 目录下:

sudo cp ./etc/hadoop/*.xml ./input

切换 root 用户 :

su

 执行以下代码运行 Grep 示例:

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

执行完后,输入以下命令查看输出结果:

cat ./output/*

hadoop@fzqs-computer:/usr/local/hadoop$ cat ./output/*
1    dfsadmin


总结

相关文章:

Ubuntu下单机安装Hadoop详细教程(附所需安装包下载)

目录 前言 一、创建Hadoop用户 二、更新apt和安装Vim编辑器 三、安装SSH和配置SSH无密码登录 四、安装Java环境 1. 安装JDK 2. 配置JDK环境 3. 检验安装 五、安装单机Hadoop 1. 下载安装Hadoop 2. 运行示例 总结 前言 本文安装的 Hadoop 及 Java 环境基于林子雨老…...

【嵌入式烧录/刷写文件】-2.1-详解Intel Hex格式文件

目录 1 什么是Intel Hex 2 Intel Hex的格式 2.1 Intel Hex的Record结构 2.1.1 “Record type记录类型”的说明 2.1.2 “Record length记录长度”的说明 2.1.3 如何计算“Checksum校验和” 2.2 Record order记录顺序 2.3 Text line terminators文本行终止符 3 Hex文件的…...

【云原生】初识 Kubernetes — pod 的前世今生

目录标题前言🐳 Kubernetes到底是什么?🐬 K8s 的由来🐬K8s 的工作方式🐬 K8s 主要组件🐋Master 组件🐋Node 组件🐳 pod 是什么?🐬pod 的概念🐬控制…...

【基础篇】Java类加载器详解

类加载过程详解 类的生命周期 类从被加载到虚拟机内存到开始卸载出内存为止,生命周期可以简单概括为7个阶段:加载(Loading)、验证(Verification)、准备(Preparation)、解析&#xff…...

Pytorch动手实现Transformer机器翻译

Pytorch动手实现Transformer机器翻译前言一、环境配置1. torchtextMethod1:Method2:2. Spacy以en包下载为例:手动安装语言包到spacy3. NLTKMethod1:Method2:二、运行结果1. 模型训练(train)2. 翻…...

宝塔面板部署node+vue项目注意事项

宝塔面板部署nodevue项目注意事项 宝塔连接云服务器 如果服务器上没有安装宝塔面板,需要先安装,安装流程如下: 从宝塔官网主页进去,点击下载安装,然后点击在线安装 输入服务器IP和密码在服务器上安装宝塔面板 等待一…...

【LeetCode】剑指 Offer 39. 数组中出现次数超过一半的数字 p205 -- Java Version

题目链接:https://leetcode.cn/problems/shu-zu-zhong-chu-xian-ci-shu-chao-guo-yi-ban-de-shu-zi-lcof/ 1. 题目介绍(39. 数组中出现次数超过一半的数字) 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 你可…...

fisco bcos用caliper0.2.0进行压力测试的安装配置

一、前期环境 1. 硬件 需要外网权限 2. 操作系统 版本要求:Ubuntu > 16.04, CentOS > 7, MacOS > 10.14 3. 基础软件 python 2.7,make,g,gcc,git sudo apt install python2.7 make g gcc git curl git confi…...

正在进行 | 用友企业数智化财务峰会落地广州 高能不断

3月28日,以「智能会计 价值财务」为主题的“2023企业数智化财务创新峰会”登陆广州。 此次用友企业数智化财务创新峰会,邀请了知名院校的专家学者、央国企等大型企业财务数智化领路人以及羊城权威媒体,近千人相约广州越秀国际会议中心,深度聚焦大型企业财务数智化创新应用…...

uniapp - APP云打包、蒲公英平台发布APP的步骤

一、uniapp 云打包 1、注册 dcloud 开发者 首先需要注册一个 dcloud 开发者的账号 dcloud开发者中心:登录 (dcloud.net.cn) 根据流程注册即可。 2、云打包(已安卓为例) 项目创建完成后,查看 dcloud 开发者中心,看是否…...

reposync命令详解--reposync同步aliyunyum库到本地

参考: reposync - 命令 - -桃枝夭夭- - 博客园 0. 简介 reposync 命令简单来说就是可以把指定外网源(repo id)的包同步到本地文件中 1. 安装 reposync 命令 [rootV10SP1-1 ~]# yum install -y dnf-plugins-core2. 常用选项以及参数 选项含义-c [fil…...

OCR之论文笔记TrOCR

文章目录TrOCR: Transformer-based Optical Character Recognition with Pre-trained Models一. 简介二. TrOCR2.1. Encoder2.2 Decoder2.3 Model Initialiaztion2.4 Task Pipeline2.5 Pre-training2.6 Fine-tuning2.7 Data Augmentation三. 实验3.1 Data3.2 Settings3.2 Resul…...

雷电4模拟器安装xposed框架(2022年)

别问我都2202年了为什么还在用雷电4安卓7。我特么哪知道Xposed的相关资料这么难找啊,只能搜到一些老旧的资料,尝试在老旧的平台上实现了。 最初的Xposed框架现在已经停止更新了,只支持到安卓8。如果要在更高版本的安卓系统上使用Xposed得看看…...

微信小程序支付完整流程(前端)

微信小程序中,常见付款给商家的场景,下面列出企业小程序中,从0起步完整微信支付流程。 一,注册微信支付商户号(由上级或法人注册) 接入微信支付 - 微信商户平台 此商户号,需要由主管及更上级领导…...

设置鼠标右键打开方式,添加IDEA的打开方式

一、问题描述 已下载IDEA,但是右键打开之前保存的项目文件,无法显示以IDEA方式打开。 二、解决步骤 1. 打开注册表 winR键输入regedit 2、查找路径为计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell (我找了半天没看到Class…...

LAMP架构之zabbix监控(2):zabbix基础操作

目录 一、zabbix监控节点添加和删除 (1)手动添加 (2)自动添加 (3)按照条件批量添加 (4)使用api工具进行管理 二、针对应用的zabbix监控 一、zabbix监控节点添加和删除 实验说明&a…...

ShareSDK常见问题

QQ-分享报错901111,9001010等 由于QQ现在需要审核后才可以分享(之前分享不需要审核),所以此错误解决方法只需通过腾讯开放平台的审核即可,另外要检查注册好的应用的基本信息,包名、md5签名和Bundle id是不…...

[Spring]一文明白IOC容器和思想

✅作者简介:大家好,我是Philosophy7?让我们一起共同进步吧!🏆 📃个人主页:Philosophy7的csdn博客 🔥系列专栏: 数据结构与算法 👑哲学语录: 承认自己的无知,乃…...

程序人生 | 与足球共舞的火柴人(致敬格拉利什,赋予足球更深的意义)

个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,也会涉及到服务端 📃个人状态: 在校大学生一枚,已拿多个前端 offer(秋招) 🚀未…...

MATLAB | R2023a更新了哪些好玩的东西

R2023a来啦!!废话不多说看看新版本有啥有趣的玩意和好玩的特性叭!!把绘图放最前面叭,有图的内容看的人多。。 1 区域填充 可以使用xregion及yregion进行区域填充啦!! x -10:0.25:10; y x.^…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

生成 Git SSH 证书

🔑 1. ​​生成 SSH 密钥对​​ 在终端(Windows 使用 Git Bash,Mac/Linux 使用 Terminal)执行命令: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​: -t rsa&#x…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...

Chrome 浏览器前端与客户端双向通信实战

Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...

CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!

本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...

Python网页自动化Selenium中文文档

1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API,让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API,你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...