02安装一个最小化的Hadoop
安装一个最小化的Hadoop
为了学习HDFS和之后的MapReduce,我们需要安装一个Hadoop。
Hadoop一共有3种运行模式
- 独立模式:不启动守护进程,所有程序运行在一个JVM进程中。独立模式运行Hadoop很方便,适合学习和开发阶段
- 伪分布式:Hadoop运行在本机上,模拟一个小规模集群
- 全分布式:Hadoop运行在集群上,相当于一个生产环境
本节主要对独立模式的安装进行讨论。
由于我的主力机器是Windows,为了之后书写代码方便。所以我选择在Windows安装Hadoop,Linux安装方法也类似,主要区别为配置环境变量不太一样,所以不过多赘述。
注意:在Windows设置环境变量可能不会立即生效,可以在当前窗口使用set命令(例如set JAVA_HOME=xxxx)进行测试,然后再修改环境变量保存。
本节环境为
- Windows 11
- JDK 11.0.17
一、前期准备
Hadoop是一个Java编写的程序,所以它既可以运行在Linux系统上,也可以运行在Windows上,官方下载的程序也具有Windows的支持。所以我们需要准备一个JDK,这里建议1.8以上。
二、下载程序
- 下载符合你操作系统的JDK,版本在1.8以上均可
- 从https://hadoop.apache.org/releases.html下载Hadoop程序。这里我下载的是2.10.2
- Windows需要额外下载winutils.exe和hadoop.dll,从https://github.com/cdarlint/winutils下载对应版本的winutils.exe和hadoop.dll。如果没有对应版本的目录,则主版本号一样的相近版本的文件即可,这里我选择下载的是hadoop-2.9.2/bin
三、安装
Step1:安装JDK和设置JAVA_HOME
安装JDK,安装完成后并且配置环境变量JAVA_HOME。然后在你的终端输入
Windows:
%JAVA_HOME%/bin/java -version
Linux:
$JAVA_HOME/bin/java -version
确保能够正常输出Java版本,例如
java version "11.0.17" 2022-10-18 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.17+10-LTS-269)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.17+10-LTS-269, mixed mode)
注意:JDK安装目录最好不要有空格,如果你的JDK安装在 Program Files 文件夹下,使用 PROGRA~1 代替 Program File。例如JDK安装目录为C:\Program Files\Java\jdk-11.0.17,则环境变量应该设置为C:\PROGRA~1\Java\jdk-11.0.17
如果不方便配置JAVA_HOME,也可以修改Hadoop程序目录下的etc/hadoop/hadoop-env文件,在里面加上一行
Windows:hadoop-env.cmd文件
set JAVA_HOME=你的JDK安装目录
Linux:hadoop-env.sh文件
export JAVA_HOME=你的JDK安装目录
Step2:解压Hadoop
解压Hadoop到任意位置,打开终端进入bin目录
输入hadoop version,你会在终端看到如下字样:
Hadoop 2.10.2
Subversion Unknown -r 965fd380006fa78b2315668fbc7eb432e1d8200f
Compiled by ubuntu on 2022-05-24T22:35Z
Compiled with protoc 2.5.0
From source with checksum d3ab737f7788f05d467784f0a86573fe
This command was run using /D:/hadoop-2.10.2/share/hadoop/common/hadoop-common-2.10.2.jar
Step3:设置Hadoop环境变量
- 设置HADOOP_HOME为Hadoop解压位置
- 添加HADOOP_HOME/bin到PATH下。这样就不用每次到Hadoop解压目录下运行hadoop了
Setp4:Windows额外步骤
Hadoop在Windows上需要一些本地库才能正常工作,包括访问file://文件系统,其中Hadoop使用一些Windows API来实现类似posix的文件访问权限。
- 复制winutils.exe和hadoop.dll到HADOOP_HOME的bin目录下
至此,一个运行在独立模式下的Hadoop安装完成。
02安装一个最小化的Hadoop的更多相关文章
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(四)码农网
17. 安装 Webmin Webmin 是基于 Web 的 Linux 配置工具.它像一个中央系统,用于配置各种系统设置,比如用户.磁盘分配.服务以及 HTTP 服务器.Apache.MySQL 等 ...
- 实现iOS图片等资源文件的热更新化(四): 一个最小化的补丁更新逻辑
简介 以前写过一个补丁更新的文章,此处会做一个更精简的最小化实现,以便于集成.为了使逻辑具有通用性,将剥离对AFNetworking和ReativeCocoa的依赖.原来的文章,可以先看这里: htt ...
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(五)
25. 安装 Linux Malware Detect (LMD) Linux Malware Detect (LMD) 是 GNU GPLv2 协议下发布的开源 Linux 恶意程序扫描器,它是特别 ...
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(二)转载自码农网
7. 安装 PHP PHP 是用于 web 基础服务的服务器端脚本语言.它也经常被用作通用编程语言.在最小化安装的 CentOS 中安装 PHP: # yum install php 安装完 php ...
- Spark standalone安装(最小化集群部署)
Spark standalone安装-最小化集群部署(Spark官方建议使用Standalone模式) 集群规划: 主机 IP ...
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(一)转载自码农网
CentOS 是一个工业标准的 Linux 发行版,是红帽企业版 Linux 的衍生版本.你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级.安装新的软件包.配置特定服务和应用程 ...
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情7. 安装 PHP PHP 是用于 web 基础服务的服务器端脚本语言。它也经常被用作通用编程语言。在最小化安装的 CentOS 中安
CentOS 是一个工业标准的 Linux 发行版,是红帽企业版 Linux 的衍生版本.你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级.安装新的软件包.配置特定服务和应用程 ...
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(二)
本文导航 -7. 安装 PHP0 -8. 安装 MariaDB 数据库 -9. 安装和配置 SSH 服务器 -10. 安装 GCC (GNU 编译器集) -11. 安装 Java 7. 安装 PHP ...
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(一)
本文导航 -1. 注册并启用红帽订阅 -2. 使用静态 IP 地址配置网络 -3. 设置服务器的主机名称 -4. 更新或升级最小化安装的 CentOS -5. 安装命令行 Web 浏览器 -6. 安装 ...
- LoadRunner 12.02 安装以及汉化教程
LoadRunner 12.02 安装 一.下载 首先下载Loadrunner12安装包. 下载后有四个安装包: HP_LoadRunner_12.02_Community_Edition_Addit ...
随机推荐
- XPAND模板语言语法1.0
XPAND模板语言语法1.0 Xpand模板语言一般写在以.xpt为结尾的文本文件中 ,以"« »" 作为开头和结尾 .Xpand语言主要包括以下几个标签: «IMPORT», ...
- 基于.NetCore开发博客项目 StarBlog - (19) Markdown渲染方案探索
前言 笔者认为,一个博客网站,最核心的是阅读体验. 在开发StarBlog的过程中,最耗时的恰恰也是文章的展示部分功能. 最开始还没研究出来如何很好的使用后端渲染,所以只能先用Editor.md组件做 ...
- Typora图床上传配置:PicGo+Gitee 不完全指南
每次写Markdown都要手动传图,再复制链接到Typora里,这样比较繁琐. 设置好图床,搭配PicGo,写作时直接剪贴图片到Typora,就能实现自动上传,这样就方便很多. Gitee配置: 许多 ...
- SpringCloudAlibaba 微服务组件 Nacos 之配置中心源码深度解析
大家好,这篇文章跟大家聊下 SpringCloudAlibaba 中的微服务组件 Nacos.Nacos 既能做注册中心,又能做配置中心,这篇文章主要来聊下做配置中心时 client 端的一些设计,主 ...
- React+echarts (echarts-for-react) 画中国地图及省份切换
有足够的地图数据,可以点击到街道,示例我只出到市级 以umi为框架,版本是: "react": "^18.2.0", "umi": &quo ...
- vulnhub靶场之DEATHNOTE: 1
准备: 攻击机:虚拟机kali.本机win10. 靶机:DEATHNOTE: 1,网段地址我这里设置的桥接,所以与本机电脑在同一网段,下载地址:https://download.vulnhub.com ...
- hwlog--limiter.go
// Copyright(C) 2021. Huawei Technologies Co.,Ltd. All rights reserved.// Package limiter implement ...
- 顺序表代码总结——SqList
在C++编译器下可直接运行 #include <stdio.h> #include <stdlib.h> #include <malloc.h> //顺序表存储结构 ...
- 【Java集合框架001】为什么重写equals就要重写hashcode?
一.前言 如果面试官问:你重写过 hashcode 和 equals 么,为什么重写equals时必须重写hashCode方法? 遇到这样的问题,应该怎样回答呢?其实,equals和hashCode都 ...
- 关于C++ find
#include <bits/stdc++.h> using namespace std; int a[1005]; int main() { for(int i = 0;i < 1 ...