Hadoop3.1.3单机(伪分布式配置)
参考:林子雨老师网站博客
Hadoop安装搭建伪分布式教程(全面)吐血整理
环境
Vmare12
Ubuntu16.04
创建Hadoop用户
若安装Ubuntu不是用的“hadoop”用户,则需要增加一个名为"hadoop"的用户
- 直接快捷键ctrl+alt+t或者点击小箭头,以打开终端窗口,输入该命令创建新用户
$ sudo useradd -m hadoop -s /bin/bash
该条命令创建了可以登录的hadoop用户,且使用/bin/bash作为shell
- sudo命令:Ubuntu中一种权限管理机制。管理员可以授权给一些普通用户去执行一些需要root权限执行的操作。
当使用sudo命令时,需要输入当前用户密码 - 密码:在linux的终端中输入密码,终端不显示任何你当前输入的密码,也不会提示已输入了多少字符密码(在windows系统中,输入密码往往会是*)
- 输入法中英文切换:ubuntu中终端输入的命令一般是用英文输入。
- Ubuntu终端复制快捷键:ctrl+v+shift
- 设置密码
以密码hadoop为例
$ sudo passwd hadoop
可以给hadoop用户增加管理员权限,方便部署
$ sudo adduser hadoop sudo
- 注销当前用户
点击屏幕右上角的齿轮,选择注销,返回登陆界面。在登陆界面选择刚创建的hadoop用户进行登录。
更新apt
- (1)为后续一些apt软件安装,更新apt
$ sudo apt-get update
(2)系统设置(左边的小齿轮)→软件和更新(系统)→from中选择other→列表中选[mirrors.aliyun.com]→choose server(右下角)→关闭→重新载入
(3)再次执行sudo apt-get update
2. 为后续方便更改配置文件,安装vim
sudo apt-get install vim
安装时照例有确认,输入y即可
vim常用模式:命令模式,插入模式,可视模式,正常模式
(1)正常模式
主要用来浏览文本内容。
一开始打开vim是正常模式,且在任何模式下按esc键可以返回正常模式
(2)插入编辑模式
用来向文本添加内容。
在正常模式下,输入i键进入插入编辑模式
(3)推出vim
利用vim修改任何文本时,都别忘了保存。
esc键退回到正常模式中,输入:wq可保存并退出vim
安装SSH、配置SSH无密码登录
SSH登录(类似于远程登录,可以登录某台Linux主机,且在上面运行命令)在集群、单节点模式都需用到。
Ubuntu默认已安装了SSH client,此外还需要安装SSH server
sudo apt-get install openssh-server
安装后,登录本机
ssh localhost
SSH首次登录提示,输入yes再按提示输入密码,以登录本机(但该种登录方式需要密码)
- 配置SSH无密码登录
推出刚才的ssh,回到原先的终端窗口,利用ssh-keygen生成密钥,并把密钥加入到授权中
exit # 退出刚才的ssh localhostcd ~/.ssh/ # 若没有该目录,先执行一次ssh localhostssh-keygen -t rsa # 会有提示,按回车即可(当前面又是$再输入下条命令)cat ./id_rsa.pub >> ./authorized_keys #加入授权
~ :在Linux系统中,~代表的是用户的主文件夹,即"/home/用户名"。如你的用户名是hadoop,则 ~ 代表"/home/hadoop/"
#: 其后的内容为注释
此时再用ssh localhost命令,无需输入密码就可以直接登录
安装Java环境
版本匹配:Hadoop3.1.3需要JDK版本在1.8及以上。
- 本机文件传输到虚拟机
借助FileZilla
- 在Linux命令行界面中,执行如下Shell命令(当前登录用户名是hadoop)
cd /usr/lib
sudo mkdir jvm #创建/usr/lib/jvm目录来存放JDK文件
cd ~ # 进入hadoop用户的主目录
cd Downloads # 注意区分大小写字母&刚才通过FTP软件把JDK安装包jdk.8u162-linux-x64.tar.gz上传到该目录下
sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm # 把JDK文件解压到/usr/lib/jvm目录下
(复制加shift)
- 确认是否添加成功
cd /usr/lib/jvm
ls
看到/usr/lib/jvm目录下有jd1.8.0目录
- 设置环境变量
cd ~
vim ~/.bashrc
使用vim编辑器,输入i进入编辑状态,
在文件开头添加
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
按esc键退出编辑状态,输入:wq保存并退出
- 让.bashrc文件的配置立即生效
source ~/.bashrc
- 查看是否安装成功
java -version
返回版本号啥的说明🆗
安装hadoop3.1.3
hadoop3.1.3
链接:https://pan.baidu.com/s/1BnF9IaBMH8QazFe7BurxOw
提取码:j756
同上用FileZilla传到Ubuntu中,以保存在Downloads为例
sudo tar -zxf ~/Downloads/hadoop-3.1.3.tar.gz -C /usr/local # 解压到/usr/local中
cd /usr/local
sudo mv ./hadoop-3.1.3/ ./hadoop #将文件夹改为hadoop
sudo chown -R hadoop ./hadoop # 修改文件权限
hadoop解压后即可使用。
输入命令检查Hadoop是否可用,显示Hadoop版本信息即为欧克
cd /usr/local/hadoop
./bin/hadoop version
./ 相对路径,以/usr/local/hadoop为当前目录
配置方式(单机&伪单机)
Hadoop单机配置(非分布式)
Hadoop默认模式就是非分布式模式(本地模式),无需进行其他配置即可运行。
非分布式即单Java进程,方便进行调试。
运行./bin/hadoop jar ./share/hadoop/marreduce/hadoop-mapreduce-examples-3.1.3.jar可以看到所有例子。Hadoop附带了丰富的例子,例如wordcount,terasort,join,grep
- 例如运行grep例子,把input文件夹中的所有文件作为输入,筛选当中符合正则表达式dfs[a-z.]+的单词并统计出现的次数,最后输出结果到output文件夹中
cd /usr/localhadoop
mkdir ./input
cp ./etc/hadoop/*.xml ./input #把配置文件作为输入文件
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/* #查看运行结果(符合正则规矩的单词出现了一次)
Hadoop默认不会覆盖结果文件,则再次运行上面实例的话会提示出错,需要先把./output
删除
rm -r ./output
Hadoop伪分布式配置
- 配置
Hadoop的配置文件位于/usr/local/hadoop/etc/hadoop/中
cd /usr/local/hadoop
cd etc
cd hadoop
伪分布式需要修改两个配置文件:core-site.xml和hdfs-site.xml.
vim core-site.xml
把其中的
<configuration>
</configuration>
改为(退出的时候记得保存)
<configuration><property><name>hadoop.tmp.dir</name><value>file:/usr/local/hadoop/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/tmp/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/hadoop/tmp/dfs/data</value></property>
</configuration>
Hadoop的运行方式是由配置文件决定的(运行Hadoop时会读取配置文件)。
若需要从伪分布式模式切换为非分布式模式,需要删除core-site.xml中的配置项。
- 格式化
cd /usr/local/hadoop
./bin/hdfs namenode -format
返回的一大堆信息中,后半部分有“successfully formatted”即为成功
- 启动Namenode和DataNode守护进程
cd /usr/local/hadoop # 已进入该目录则无需重复
./sbin/start-dfs.sh # start-dfs.sh是个完整的可执行文件,中间没有空格
- 检查是否启动成功
jps
若出现了以下三个进程(除jps的三个)(缺一不可),说明🆗

简单运行Hadoop伪分布式实例
创建多级目录并检查


相关文章:
Hadoop3.1.3单机(伪分布式配置)
参考:林子雨老师网站博客 Hadoop安装搭建伪分布式教程(全面)吐血整理 环境 Vmare12 Ubuntu16.04 创建Hadoop用户 若安装Ubuntu不是用的“hadoop”用户,则需要增加一个名为"hadoop"的用户 直接快捷键ctrlaltt或者点…...
HBase---浅谈HBase原理
浅谈HBase原理 文章目录浅谈HBase原理HBase定义HBase逻辑结构HBase物理存储结构TimeStampType数据模型NaneSpaceRegionRowColumnTineStampCellHBase架构MasterMaster 架构Meta 表格介绍Region ServerRegionServer 架构MemStoreWALBlockCacheZookeeperHDFSHBase写数据流程HBase读…...
学习笔记四:dockerfile
Dockerfile概述dockerfile语法详解FROMMAINTAINERRUN:指定在当前镜像构建过程中要运行的命令EXPOSE指令CMDENTERYPOINTCOPYADDVOLUMEWORKDIRENVUSERONBUILDLABELHEALTHCHECKARG概述 Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜…...
微服务里的小问题
1.微服务为什么设置不同的namespace 为了实现三种服务三种情况下的隔离。 2.为什么要用nginx为naocos集群结点做负载均衡? 2.1 正向代理 就像我们访问外网需要一个代理。 2.2 反向代理 我们不需要访问真实的ip,只需要访问 这个服务的代理服务器即可&a…...
数据库之基本功:Where 中常用运算符
1. 运算符及优先级 ( )优先级最高 SQL> show user; USER is "SCOTT" SQL> select ename, job, sal, comm from emp where jobSALESMAN OR jobPRESIDENT and sal> 1500;ENAME JOB SAL COMM …...
浅谈 Nodejs原型链污染
一直在做php的题目,对其它语言做的很少。刚好在西湖论剑2022复现时,遇到了一道原型链污染的题目,借此机会开始简单学习一下 Nodejs的洞 p🐂讲解的十分清楚,因此下面举例子就直接用p🐂的例子进行解释了 目…...
Linux系统安装Docker
目录 Linux系统安装Docker 1、如果之前安装过旧版本的Docker,可以使用下面命令卸载 2、安装docker 3、启动docker 4、配置镜像加速 Linux系统安装Docker 前提:Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10࿰…...
MCP2515国产替代DP2515带有SPI 接口的独立CAN 控制器
DP2515是一款独立控制器局域网络(Controller AreaNetwork, CAN)协议控制器,完全支持CAN V2.0B 技术规范。该器件能发送和接收标准和扩展数据帧以及远程帧。DP2515自带的两个验收屏蔽寄存器和六个验收滤波寄存器可以过滤掉不想要的…...
【Kubernetes】第二十篇 - k8s 污点和容忍度
一,前言 上一篇,介绍了 k8s ConfigMap 管理服务环境变量; 本篇,介绍 k8s 污点和容忍度; 二,污点与容忍度介绍 通过污点和容忍度配置可以干预 Pod 部署到特定的节点; 比如: 不想让…...
60% 程序员大呼:我要远程办公!
近几年数字化的普及,白领们从挤地铁、打卡、开会、写日报转变成“早上9点视频会议”,企业的办公场所也从写字楼、会议室、工位变成了手机、电脑中的线上会议室,远程办公已经成为一种流行的办公形式。《财富》杂志发现,75%的员工表…...
jmeter+ant+jenkins接口自动化测试框架
大致思路:Jmeter可以做接口测试,也能做压力测试,而且是开源软件;Ant是基与java的构建工具,完成脚本执行并收集结果生成报告,可以跨平台,Jenkins是持续集成工具。将这三者结合起来可以搭建一套We…...
【protoc自定义插件】「go语言」实现rpc的服务映射成http的服务,protoc生成gin的插件,(详解实现原理及过程)
文章目录前言一、工程实践中如何更好的使用proto文件?二、protoc命令如何查询依赖的proto文件以及执行原理1. protoc命令如何查询依赖的proto文件2. protoc执行的插件加载原理是什么?3. proto文件中的package和go_package的作用三、protoc插件开发原理体…...
【C语言】3天速刷C语言(语句、函数)
语句分支语句if语句if语句语法结构语法结构: if(表达式)语句; if(表达式)语句1; else语句2; //多分支 if(表达式1)语句1; else if(表达式2)语句2; else语句3;表达式如果成立,则执行,不成立则弹出。switch语句语法结构:switch(…...
Linux系统中指针的详细分析与操作
文章目录 一、指针 二、指针的初始化 三、指针的运算 四、指针与数组 五、指针与字符串 六、函数指针 七、NULL 指针 八、对复杂指针的解释 C 语言指针真正精髓的地方在于指针可以进行加减法,这一点极大的提升了程序的对指针使用的灵活性,同时也…...
工程(十一)——NUC11+D435i+VINS-FUSION+ESDF建图(github代码)
博主的合并代码gitgithub.com:huashu996/VINS-FUSION-ESDFmap.git一、D435i深度相机配置1.1 SDKROS参考我之前的博客,步骤和所遇见的问题已经写的很详细了https://blog.csdn.net/HUASHUDEYANJING/article/details/129323834?spm1001.2014.3001.55011.2 相机标定参数…...
第十四届蓝桥杯三月真题刷题训练——第 4 天
目录 题目 1 :九数算式_dfs回溯(全排列) 题目描述 运行限制 代码: 题目2:完全平方数 问题描述 输入格式 输出格式 样例输入 1 样例输出 1 样例输入 2 样例输出 2 评测用例规模与约定 运行限制 代码: 题目 1 &am…...
Hadoop 运行环境搭建(开发重点)
文章目录Hadoop 运行环境搭建(开发重点)一、安装JDK二、安装配置 Hadoop1、安装 hadoop2、hadoop 目录结构3、设置免密登录4、完全分布式模式(开发重点)1)分发jdk2)集群配置(1) 集群部署规划(2) 配置文件说…...
在社交媒体上行之有效的个人IP趋势
如果您认为无论是获得一份工作、建立一家企业还是推动个人职业发展,社交媒体都是帮助您实现目标的可靠工具,那么个人IP就是推动这一工具前进的燃料。个人IP反映了您是谁,您在所处领域的专业程度,以及您与他人的区别。社交媒体将有…...
Java网络编程
网络编程 什么是网络编程? 可以让设备中的程序与网络上其他设备中的程序进行数据交互(实现网络通信) Java.net. 包下提供了网络编程的解决方案* 基本的通信架构 基本的通信架构有两种方式:CS架构(Client客户端/Se…...
PTA:L1-001 Hello World、L1-002 打印沙漏、L1-003 个位数统计(C++)
目录 L1-001 Hello World 问题描述: 实现代码: L1-002 打印沙漏 问题描述: 实现代码: 原理思路: L1-003 个位数统计 题目描述: 实现代码: 原理思路: 过于简单的就不再写题…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
android13 app的触摸问题定位分析流程
一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...
Python网页自动化Selenium中文文档
1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API,让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API,你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...
【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)
旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据!该数据集源自2025年4月发表于《地理学报》的论文成果…...
【若依】框架项目部署笔记
参考【SpringBoot】【Vue】项目部署_no main manifest attribute, in springboot-0.0.1-sn-CSDN博客 多一个redis安装 准备工作: 压缩包下载:http://download.redis.io/releases 1. 上传压缩包,并进入压缩包所在目录,解压到目标…...
