大数据单机学习环境搭建(1)Hadoop本地单节点安装

2023-11-08


大数据单机学习环境搭建(1)Hadoop本地单节点安装

1.资源获取(免费下载)

apache官网下载hadoop
jdk安装包百度网盘下载 提取码:0u1v

2.Hadoop(本地模式)安装及文件配置

严格按照步骤走,不要跳,不要跳,不要跳

2.1安装java

# 2.1先安装java
cd /opt
tar -zxvf jdk-8-linux-x64.tar.gz
mv jdk1.8.0_301 jdk

# 配置环境变量/etc/profile在最后添加
#set java environment
export JAVA_HOME=/opt/jdk/
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

# 更新配置文件使其立即生效
source /etc/profile

2.2Hadoop安装与配置

# 2.2hadoop安装
tar -zxvf hadoop-3.3.2.tar.gz -C /opt
mv hadoop-3.3.2.tar.gz hadoop

# 2.2.1配置环境变量/etc/profile
vim /etc/profile
# 在最后添加
#HADOOP_HOME
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
 
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

# 更新配置文件使其立即生效
source /etc/profile

# 2.2.2编辑配置文件hadoop-env.sh
vim /opt/hadoop/etc/hadoop/hadoop-env.sh
# 将JAVA_HOME设置为Java安装根路径
export JAVA_HOME="/opt/jdk"

# 2.2.3修改配置文件mapred-env.sh
vim /opt/hadoop/etc/hadoop/mapred-env.sh
# 将JAVA_HOME设置为Java安装根路径
export JAVA_HOME="/opt/jdk"

# 2.2.4修改配置文件yarn-env.sh
vim /opt/hadoop/etc/hadoop/yarn-env.sh
# 将JAVA_HOME设置为Java安装根路径
export JAVA_HOME="/opt/jdk"

# 2.2.5修改配置文件core-site.xml
vim /opt/hadoop/etc/hadoop/core-site.xml
# 配置
<property>
        <name>fs.defaultFS</name>
        <!-- ip填自己的,端口号默认 -->
        <value>hdfs://192.168.0.107:9000</value>
</property>
<property>
        <name>hadoop.tmp.dir</name>
        <!-- tmp为namenode数据存放目录 -->
        <value>/opt/hadoop/tmp</value>
</property>

# 2.2.6修改配置文件hdfs-site.xml
vim /opt/hadoop/etc/hadoop/hdfs-site.xml
# 配置
<property>
    <name>dfs.replication</name>
    <!-- 伪分布式环境只有一个节点,所以这里设置为1 -->
    <value>1</value>
</property>
<!--设置默认端口,这段是我后来加的,如果不加上会导致启动hadoop-3.1.0后无法访问50070端口查看HDFS管理界面,hadoop-2.7.7可以不加-->
<property>
    <name>dfs.http.address</name>
    <value>192.168.0.107:9870</value>
</property>

# 2.2.7修改配置文件mapred-site.xml
vim /opt/hadoop/etc/hadoop/mapred-site.xml
# 配置
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>

# 2.2.8修改配置文件yarn-site.xml
vim /opt/hadoop/etc/hadoop/yarn-site.xml
# 配置
<!-- ResourceManager的地址-->
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>192.168.0.107</value>
</property>
<!-- 指定reducer获取数据的方式-->
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>

2.3设置ssh免密登录

# 2.3设置ssh免密登录
cd ~/.ssh/                     # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa              # 会有提示,都按回车就可以
cat ./id_rsa.pub >> ./authorized_keys  # 加入授权
cd   # 退到开始位置

2.4开启hadoop

# 2.4开启hadoop
# 2.4.1格式化namenode,格式化之前清空 tmp 和 logs文件
rm -rf tmp/*
rm -rf logs/*
hdfs namenode -format
# 验证
ls /opt/hadoop/tmp/dfs/name/current
# fsimage是NameNode元数据在内存满了后,持久化保存到的文件。
# fsimage*.md5 是校验文件,用于校验fsimage的完整性。
# seen_txid 是hadoop的版本
# vession文件里保存:
# namespaceID:NameNode的唯一ID。
# clusterID:集群ID,NameNode和DataNode的集群ID应该一致,表明是一个集群。

# 2.4.2使用start-all开启所有进程
start-all.sh

# 2.5.3用jps验证,6个进程都有就ok了,前面是进程号
104224 Jps
44242 ResourceManager
44535 NodeManager
43256 DataNode
43739 SecondaryNameNode
42924 NameNode

2.6访问应用

# 2.6访问应用
# 2.6.1关闭防火墙
# 防火墙会阻止非本机对服务发起的请求,所以,如果要让外界访问到hadoop服务一定要配置防火墙,如果是在虚拟机上,就可以直接关闭了。
systemctl stop firewalld # 临时关闭
systemctl disable firewalld # 永久关闭

# 网页访问2.6.2访问
http://192.168.0.107:9870

能访问到下图界面即安装和配置已成功
在这里插入图片描述
下方图片所示位置即HDFS文件所在位置,例如Hive、Spark访问时即要访问这里。
在这里插入图片描述


声明:本文所载信息不保证准确性和完整性。文中所述内容和意见仅供参考,不构成实际商业建议,如有雷同纯属巧合。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

大数据单机学习环境搭建(1)Hadoop本地单节点安装 的相关文章

  • Hadoop 安全模式恢复 - 花费太长时间!

    我有一个包含 18 个数据节点的 Hadoop 集群 我在两个多小时前重新启动了名称节点 并且名称节点仍处于安全模式 我一直在寻找为什么这可能花费太长时间 但找不到好的答案 发帖在这里 Hadoop 安全模式恢复 花费大量时间 https
  • 无法从 JAR 文件加载主类

    我有一个 Spark scala 应用程序 我尝试显示一条简单的消息 Hello my App 当我编译它时sbt compile并运行它sbt run没关系 我成功显示了我的消息 但他显示了错误 像这样 Hello my applicat
  • 使用 UDF 添加文件读取添加到 Hive 资源的文件

    我想知道如何读取使用添加的 Hive 资源ADD FILE来自乌德夫 例如 Hive gt add file users temp key jks Java中的UDF可以读取这个文件吗 在 Udf 中获取此文件的路径是什么 谢谢 大卫 一旦
  • 为什么组合器输入记录的数量比映射的输出数量多?

    Combiner 在 Mapper 之后 Reducer 之前运行 它将接收给定节点上的 Mapper 实例发出的所有数据作为输入 然后它将输出发送到Reducers 因此组合器输入的记录应小于映射输出的记录 12 08 29 13 38
  • AWS Athena 扁平化来自嵌套 JSON 源的数据

    我想从 Athena 中的嵌套 JSON 创建一个表 描述的解决方案here http docs aws amazon com athena latest ug json html使用 hive Openx JsonSerDe 等工具尝试在
  • Couchbase/hadoop 连接器:sqoop 作业失败“找到接口 org.apache.hadoop.mapreduce.TaskAttemptContext,但需要类”

    我的配置 CouchBase服务器2 0 Sqoop 1 4 2 针对hadoop版本2 0 0编译 堆栈Hadoop CDH4 1 2 我想使用 CouchBase Hadoop 连接器 http www couchbase com de
  • Sqoop mysql错误-通信链路故障

    尝试运行以下命令 sqoop import connect jdbc mysql 3306 home credit risk table bureau target dir home sqoop username root password
  • hadoop2.2.0追加文件发生AlreadyBeingCreatedException

    我遇到了一个关于hadoop2 2 0追加操作的问题 我通过 HDFS java API 将一些字节附加到 hdfs 文件 首先 如果在附加操作之前文件不存在 我将创建目标文件 代码如下 String fileUri hdfs hadoop
  • 是否值得购买 Mahout in Action 以跟上 Mahout 的速度,或者还有其他更好的来源吗?

    我目前是一个非常随意的用户阿帕奇马胡特 http mahout apache org 我正在考虑购买这本书象夫在行动 http www manning com owen 不幸的是 我很难理解这本书的价值 并且认为它是一本曼宁早期访问计划 h
  • Namenode高可用客户端请求

    谁能告诉我 如果我使用java应用程序请求一些文件上传 下载操作到带有Namenode HA设置的HDFS 这个请求首先去哪里 我的意思是客户端如何知道哪个名称节点处于活动状态 如果您提供一些工作流程类型图或详细解释请求步骤 从开始到结束
  • 获取行 HBase 的特定列族中的列

    我正在编写一个应用程序 通过 JSP 显示 HBase 中特定表中的数据 我想获取一行的特定列族中的所有列 有什么办法可以做到这一点吗 public String getColumnsInColumnFamily Result r Stri
  • 在 Amazon EMR 上使用 java 中的 hbase 时遇到问题

    因此 我尝试使用作为 MapReduce 步骤启动的自定义 jar 来查询 Amazon ec2 上的 hbase 集群 我的 jar 在地图函数内 我这样调用 Hbase public void map Text key BytesWri
  • 如何通过sparkSession向worker提交多个jar?

    我使用的是火花2 2 0 下面是我在 Spark 上使用的 java 代码片段 SparkSession spark SparkSession builder appName MySQL Connection master spark ip
  • Hive“添加分区”并发

    我们有一个外部 Hive 表 用于处理原始日志文件数据 这些文件每小时一次 并按日期和源主机名分区 目前 我们正在使用简单的 python 脚本导入文件 这些脚本每小时触发几次 该脚本根据需要在 HDFS 上创建子文件夹 从临时本地存储复制
  • 使用 Hiveql 循环

    我正在尝试合并 2 个数据集 例如 A 和 B 数据集 A 有一个变量 Flag 它有 2 个值 我并没有只是将两个数据合并在一起 而是尝试根据 标志 变量合并两个数据集 合并代码如下 create table new data as se
  • 在映射器的单个输出上运行多个减速器

    我正在使用地图缩减实现左连接功能 左侧有大约 6 亿条记录 右侧有大约 2300 万条记录 在映射器中 我使用左连接条件中使用的列来创建键 并将键值输出从映射器传递到减速器 我遇到性能问题 因为两个表中的值数量都很高的映射器键很少 例如分别
  • 非 hdfs 文件系统上的 hadoop/yarn 和任务并行化

    我已经实例化了 Hadoop 2 4 1 集群 并且发现运行 MapReduce 应用程序的并行化方式会有所不同 具体取决于输入数据所在的文件系统类型 使用 HDFS MapReduce 作业将生成足够的容器 以最大限度地利用所有可用内存
  • 如何将SQL数据加载到Hortonworks中?

    我已在我的电脑中安装了 Hortonworks SandBox 还尝试使用 CSV 文件 并以表结构的方式获取它 这是可以的 Hive Hadoop nw 我想将当前的 SQL 数据库迁移到沙箱 MS SQL 2008 r2 中 我将如何做
  • 运行时异常:java.lang.NoSuchMethodException:tfidf$Reduce.()

    如何解决这个问题 tfidf是我的主类 为什么运行jar文件后会出现这个错误 java lang RuntimeException java lang NoSuchMethodException tfidf Reduce
  • 适用于 Hadoop 的 DynamoDB 输入格式

    我必须使用 Hadoop mapreduce 处理保留在 Amazon Dynamodb 中的一些数据 我在互联网上搜索 Dynamo DB 的 Hadoop InputFormat 但找不到它 我对 Dynamo DB 不熟悉 所以我猜测

随机推荐

  • Netty介绍(一)————为什么使用Netty

    Netty的简单介绍 Netty 是一个 NIO client server 客户端服务器 框架 使用 Netty 可以快速开发网络应用 例如服务器和客户 端协议 Netty 提供了一种新的方式来使开发网络应用程序 这种新的方式使得它很容易
  • 记一次arm交叉编译的cmake写法

    1 背景 用cmake交叉编译高通4G模组Linux应用代码 2 问题 之前都是参考网上各种所谓的cmake交叉编译写法 例如某乎上config cmake是这样写的 set CMAKE SYSTEM NAME Linux set TOOL
  • vue2的文档

    三 Vue 2 1 Vue 基础 1 环境准备 安装脚手架 npm install g vue cli g 参数表示全局安装 这样在任意目录都可以使用 vue 脚本创建项目 创建项目 vue ui 使用图形向导来创建 vue 项目 如下图
  • C 修改文件或文件夹的权限,为指定用户 用户组添加完全控制权限

    分享一下我老师大神的人工智能教程 零基础 通俗易懂 http blog csdn net jiangjunshow 也欢迎大家转载本篇文章 分享知识 造福人民 实现我们中华民族伟大复兴 C 修改文件或文件夹的权限 为指定用户 用户组添加完全
  • 阿里一道Java并发面试题 (详细分析篇)

    说明 前天分享了一篇关于阿里的 Java常见疑惑和陷阱 的文章 有人说这个很早就有了 可能我才注意到 看完之后发现内容非常不错 有几个我也是需要停顿下想想 题目 我个人一直认为 网络 并发相关的知识 相对其他一些编程知识点更难一些 主要是不
  • Dingo + Laravel + JWT + Entrust + memcache 实现API设计

    Dingo Laravel JWT Entrust memcache 实现API设计 Dingo Api 是一个为laravel设计的用于API开发的开源包 规范和简化了Api的设计 JWT 即 Json Web Token 是一种新的用于
  • 将类模板做为参数(类模板中使用)

    将类模板做为参数 类模板中使用 这种方式只在类模板中使用 函数模板不能使用这种方法 将模板名做为一种特殊的数据类型 实例化对象的时候 使用模板名做为参数 传递给模板 下面例子中 数组和链表都是线性表 数组和链表自身为了适用不同的数据类型参数
  • 代理IP与Socks5代理:跨界电商智能爬虫与出海之道

    跨界电商正成为全球市场的关键驱动力 而代理IP和Socks5代理则为其提供了技术支持 本文将深入研究这两种代理技术在跨界电商 爬虫和出海战略中的重要作用 引言 介绍跨界电商的崛起和全球化趋势 引出代理IP和Socks5代理的重要性以及本文的
  • 魔兽争霸3宽屏显示器适配

    魔兽争霸只提供 4 3 的分辨率选择 800 600 1024 768 等等 如果显示器是 16 9 或 16 10 的话就有点儿蛋疼了 两边都会留出黑边来 可以在 windows 下面双击执行如下的文件来解决这个问题 wide scree
  • Atcoder Beginner Contest 291

    A camel Case AC代码 include
  • 屏蔽预训练模型的权重。 只训练最后一层的全连接的权重。_Soft-Masked BERT 一种新的中文纠错模型...

    今年 字节AI Lab与复旦大学合作提出了一种中文文本纠错模型 Soft Masked BERT 1 这项工作发表在了ACL 2020上 由于论文并没有开源代码 所以我将对这篇论文进行解读与复现 问题提出 中文文本纠错是一项挑战性的任务 因
  • Python pandas 排序出现'DataFrame' object has no attribute 'sort'错误

    目标 对dataframe一列时间字符串做升序排列 时间字符串格式 2020 03 23 06 20 00 00 00 df sort MTS ascending True 运行提示 AttributeError DataFrame obj
  • CNN训练细节:卷积核分解

    背景 最近看到一些分解卷积层的方法 比如三个3 3的卷积层替代一个7 7的卷积层 或者两个3乘3的卷积层替代一个5 5的卷积层 本文主要是个人粗浅的分析下原因 一 两个3乘3的卷积层替代一个5 5的卷积层 经典原理网图 如图所示 对于两层3
  • 蓝桥杯校内模拟赛题解

    蓝桥杯校内模拟赛题解 引言 本题解非官方满分题解 因此 可能存在下列问题 题意理解错误 导致答案错误 代码中存在一些问题 导致答案错误 算法复杂度的分析有误 导致不能在规定时间内得出结果 由于水平受限 本篇题解全部由 C 语言完成 题解中的
  • 自我管理的重要模型

    文章目录 前言 一 精力管理 自我管理的新旧理念 二 人类精力金字塔 精力管理四个层次 体能 情绪 思维 精神 三 运动 人类为什么喜欢躺平 每天怎么简单高效的完成20分钟的运动量 四 钟摆运动 钟摆运动对工作最大的指导意义 刻意休息 在这
  • Java 到 Go 过渡:基于 Go 开发分布式配置中心的实践

    目录 一 简介 二 Java 实现 三 Go 实现 四 从 Java 过渡到 Go 五 总结 在今天的技术世界中 从一种编程语言转向另一种是很常见的 特别是对于在企业级应用中具有广泛应用的语言如 Java 转向轻量级 效率更高的 Go 语言
  • 【因果学习】贝叶斯网络结构学习方法

    随机对照试验是发现因果关系的黄金准则 然而现实世界中很多问题往往由于道德伦理的原因不允许我们设置干预进行试验 这就引发了在观测数据上学习因果关系的需求 贝叶斯网络是概率论与图论相结合的产物 它用图论的方式直观地表达各变量之间的因果关系 为多
  • 面向对象编程(OOP):理解类、封装性的关键概念

    文章目录 对象 Object 什么是对象 面向对象 OOP 面向过程的编程语言 面向对象的编程语言 类 class 使用类创建对象的流程 类的定义 代码演示 初始化方法和实例属性 类属性和类方法 继承和多态 魔术方法 小结 类的封装性 属性
  • JSR303使用说明文档

    1 引言 参数校验是我们程序开发中必不可少的过程 用户在前端页面上填写表单时 前端js程序会校验参数的合法性 当数据到了后端 为了防止恶意操作 保持程序的健壮性 后端同样需要对数据进行校验 后端参数校验最简单的做法是直接在业务方法里面进行判
  • 大数据单机学习环境搭建(1)Hadoop本地单节点安装

    专题 大数据单机学习环境搭建和使用 1 资源获取 免费下载 2 Hadoop 本地模式 安装及文件配置 2 1安装java 2 2Hadoop安装与配置 2 3设置ssh免密登录 2 4开启hadoop 2 6访问应用 大数据单机学习环境搭