linux安装JDK及hadoop运行环境搭建

news2025/1/25 1:39:38

1.linux中安装jdk

(1)下载JDK至opt/install目录下,opt下创建目录soft,并解压至当前目录

tar xvf ./jdk-8u321-linux-x64.tar.gz -C /opt/soft/

(2)改名

(3)配置环境变量:vim /etc/profile

#JAVA_HOME

export JAVA_HOME=/opt/soft/jdk180

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin

(4)更新资源并测试是否安装成功

source /opt/profile

java

2.hadoop运行环境搭建

2.1  安装jDK:参上

2.2  下载安装Hadoop

解压至soft目录下,改名为hadoop313

更改所属用户为root

配置环境变量:vim /etc/profilre;配置完成后source /etc/profile

# HADOOP_HOME

export HADOOP_HOME=/opt/soft/hadoop313

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/lib

export HDFS_NAMENODE_USER=root

export HDFS_DATANODE_USER=root

export HDFS_SECONDARYNAMENODE_USER=root

export HDFS_JOURNALNODE_USER=root

export HDFS_ZKFC_USER=root

export YARN_RESOURCEMANAGER_USER=root

export YARN_NODEMANAGER_USER=root

export HADOOP_MAPRED_HOME=$HADOOP_HOME

export HADOOP_COMMON_HOME=$HADOOP_HOME

export HADOOP_HDFS_HOME=$HADOOP_HOME

export HADOOP_YARN_HOME=$HADOOP_HOME

export HADOOP_INSTALL=$HADOOP_HOME

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

export HADOOP_LIBEXEC_DIR=$HADOOP_HOME/libexec

export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native

export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
 

创建数据目录data

切换至hadoop目录,查看目录下文件,准备进行配置

cd /opt/soft/hadoop313/etc/hadoop

2.3  配置单机Hadoop

(1)配置core-site.xml

<configuration>

 <!-- 指定NameNode的地址 -->

    <property>

        <name>fs.defaultFS</name>

        <value>hdfs://kb129:9000</value>

    </property>

    <!-- 指定hadoop数据的存储目录 -->

    <property>

        <name>hadoop.tmp.dir</name>

        <value>/opt/soft/hadoop313/data</value>

    </property>

    <!-- 配置HDFS网页登录使用的静态用户为root -->

    <property>

        <name>hadoop.http.staticuser.user</name>

        <value>root</value>

    </property>

    <property>

        <name>io.file.buffer.size</name>

        <value>131072</value>

    </property>

    <property>

        <name>hadoop.proxyuser.root.hosts</name>

        <value>*</value>

    </property>

    <property>

        <name>hadoop.proxyuser.root.groups</name>

        <value>*</value>

    </property>

</configuration>
 

(2)配置hdfs-site.xml

1)编辑hadoop-enc.sh

2)开始配置hdfs-site.xml

<configuration>

    <property>

        <name>dfs.replication</name>

        <value>1</value>

    </property>

    <property>

        <name>dfs.namenode.name.dir</name>

        <value>/opt/soft/hadoop313/data/dfs/name</value>

    </property>

    <property>

        <name>dfs.namenode.data.dir</name>

        <value>/opt/soft/hadoop313/data/dfs/data</value>

    </property>

    <property>

        <name>dfs.permissions.enabled</name>

        <value>false</value>

    </property>

</configuration>
 

(3)配置yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->

    <!-- 每隔20s测试连接 -->

    <property>

        <name>yarn.resourcemanager.connect.retry-interval.ms</name>

        <value>20000</value>

    </property>

    <property>

        <name>yarn.resourcemanager.scheduler.class</name>

        <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>

    </property>

    <property>

        <name>yarn.nodemanager.localizer.address</name>

        <value>kb129:8040</value>

    </property>

    <property>

        <name>yarn.nodemanager.address</name>

        <value>kb129:8050</value>

    </property>

    <property>

        <name>yarn.nodemanager.webapp.address</name>

        <value>kb129:8042</value>

    </property>

    <!-- 指定MapReduce走shuffle -->

    <property>

        <name>yarn.nodemanager.aux-services</name>

        <value>mapreduce_shuffle</value>

    </property>

    <property>

        <name>yarn.nodemanager.local-dirs</name>

        <value>/opt/soft/hadoop313/yarndata/yarn</value>

    </property>

    <property>

        <name>yarn.nodemanager.log-dirs</name>

        <value>/opt/soft/hadoop313/yarndata/log</value>

</property>

<property>

        <name>yarn.nodemanager.vmem-check-enabled</name>

        <value>false</value>

    </property>

</configuration>
 

(4)配置workers更改workers内容为kb129(主机名)

(5)配置mapred-site.xml

<configuration>

<!-- 指定MapReduce程序运行在Yarn上 -->

    <property>

        <name>mapreduce.framework.name</name>

        <value>yarn</value>

    </property>

    <property>

        <name>mapreduce.jobhistory.address</name>

        <value>kb129:10020</value>

    </property>

    <property>

        <name>mapreduce.jobhistory.webapp.address</name>

        <value>kb129:19888</value>

    </property>

    <property>

        <name>mapreduce.map.memory.mb</name>

        <value>2048</value>

    </property>

    <property>

        <name>mapreduce.reduce.memory.mb</name>

        <value>2048</value>

    </property>

    <property>

        <name>mapreduce.application.classpath</name>

<value>/opt/soft/hadoop313/etc/hadoop:/opt/soft/hadoop313/share/hadoop/common/lib/*:/opt/soft/hadoop313/share/hadoop/common/*:/opt/soft/hadoop313/share/hadoop/hdfs/*:/opt/soft/hadoop313/share/hadoop/hdfs/lib/*:/opt/soft/hadoop313/share/hadoop/mapreduce/*:/opt/soft/hadoop313/share/hadoop/mapreduce/lib/*:/opt/soft/hadoop313/share/hadoop/yarn/*:/opt/soft/hadoop313/share/hadoop/yarn/lib/*</value>

    </property>

</configuration>
 

2.4  启动测试hadoop

(1)bin目录下初始化集群hadoop namenode -format

(2)设置免密登录

回到根目录下配置kb129免密登录:ssh-keygen -t rsa -P ""

将本地主机的公钥文件(~/.ssh/id_rsa.pub)拷贝到远程主机 kb128 的 root 用户的 .ssh/authorized_keys 文件中,通过 SSH 连接到远程主机时可以使用公钥进行身份验证:cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

将本地主机的公钥添加到远程主机的授权密钥列表中,以便实现通过 SSH 公钥身份验证来连接远程主机:ssh-copy-id -i ~/.ssh/id_rsa.pub -p22 root@kb128

(3)启动/关闭、查看

[root@kb129 hadoop]# start-all.sh

[root@kb129 hadoop]# stop-all.sh

[root@kb129 hadoop]# jps

15089 NodeManager

16241 Jps

14616 DataNode

13801 ResourceManager

14476 NameNode

16110 SecondaryNameNode

(4)网页测试:浏览器中输入网址:http://192.168.142.129:9870/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/924383.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Java架构-包管理工具】-Maven进阶(二)

本文摘要 Maven作为Java后端使用频率非常高的一款依赖管理工具&#xff0c;在此咱们由浅入深&#xff0c;分三篇文章&#xff08;Maven基础、Maven进阶、私服搭建&#xff09;来深入学习Maven&#xff0c;此篇为开篇主要介绍Maven进阶知识&#xff0c;包含坐标、依赖、仓库、生…

pgadmin4中的备份与恢复

一&#xff0c;postgresql 数据的备份与恢复 &#xff08;一&#xff09;数据库备份与恢复 1&#xff0c;备份 windows环境 1> dump 逻辑备份 1&#xff0c;用管理员身份打开power shell 2&#xff0c;切换到本机 postgresql 安装目录下的 bin 目录&#xff1a; PS C…

目标检测笔记(十一):如何在特定区域进行人脸检测实操

文章目录 背景代码 背景 由于我们在做项目的时候可能会涉及到某个指定区域进行目标检测或者人脸识别等任务&#xff0c;所以这篇博客是为了探究如何在传统目标检测的基础上来结合特定区域进行检测&#xff0c;以Opencv自带的包为例。 代码 import cv2face_cascade cv2.Casc…

云服务器 宝塔(每次更新)

su root 输入密码 使用 root 权限 /etc/init.d/bt default 获取宝塔登录 位置和账号密码。进入宝塔 删除数据库 删除php前端站点 删除PM2后端项目 前端更改完配置打包dist文件 后端更改完配置项目打包 数据库结构导出 导入数据库 配置 PM2 后端 安装依赖

在百度地图中添加自定义全屏控件

百度地图中添加全屏控件 前置知识&#xff1a; 进入整个页面的全屏模式 &#xff1a;document.documentElement.requestFullscreen() 进入特定元素的全屏模式 &#xff1a; document.getElementById("ID").requestFullscreen() 退出全屏&#xff1a;document.exitFu…

HTML番外篇(四)-HTML5新增元素-CSS常见函数-理解浏览器前缀-BFC

一、HTML5新增元素 1.HTML5语义化元素 在HMTL5之前&#xff0c;我们的网站分布层级通常包括哪些部分呢&#xff1f; header、nav、main、footer ◼ 但是这样做有一个弊端&#xff1a; 我们往往过多的使用div, 通过id或class来区分元素&#xff1b;对于浏览器来说这些元素不…

django自动创建model数据

目前使用的环境&#xff1a;django4.2.3&#xff0c;python3.10 django通过一些第三方库&#xff0c;可以轻易的自动生成一系列的后台数据。 首先先创建一个数据库&#xff1a; 然后&#xff0c;在setting.py中就可以指定我们新创建的数据库了。 DATABASES {default: {ENGI…

基于Pytorch的神经网络部分自定义设计

一、基础概念&#xff08;学习笔记&#xff09; &#xff08;1&#xff09;训练误差和泛化误差[1] 本质上&#xff0c;优化和深度学习的目标是根本不同的。前者主要关注的是最小化目标&#xff0c;后者则关注在给定有限数据量的情况下寻找合适的模型。训练误差和泛化误差通常不…

【前端】深入解析CSS:选择器、显示模式、背景属性和特征剖析

目录 一、前言二、CSS的复合选择器1、后代选择器①、语法②、注意事项 2、子选择器①、语法②、注意事项 3、并集选择器①、语法②、注意事项 4、链接伪类选择器①、语法②、注意事项 三、CSS元素显示模式转换1、转换为块元素display:block2、转换为行内元素display:inline3、转…

AIGC ChatGPT 制作地图可视化分析

地图可视化分析是一种将数据通过地图的形式进行展示的方法&#xff0c;可以让人们更加直观、快速、准确的理解和分析数据。以下是地图可视化分析的一些主要好处&#xff1a; 加强数据理解&#xff1a;地图可视化可以将抽象的数字转化为直观的图形&#xff0c;帮助我们更好地理解…

LLMs对单个任务进行微调Fine-tuning on a single task

虽然LLM因其在单一模型内执行多种不同语言任务的能力而变得出名&#xff0c;但您的应用程序可能只需要执行单一任务。在这种情况下&#xff0c;您可以微调一个预训练的模型&#xff0c;以仅提高您感兴趣的任务的性能。例如&#xff0c;使用该任务的示例数据集进行摘要。有趣的是…

Linux —— keepalived

简介 Keepalived 是一个用 C 语言编写的路由软件。这个项目的主要目标是为 Linux 系统和基于 Linux 的基础设施提供简单而强大的负载均衡和高可用性功能。 Keepalived 开源并且免费的软件。 Keepalived 的2大核心功能 1. loadbalance 负载均衡 LB&#xff1a;ipvs--》lvs软件…

第三届计算机、物联网与控制工程国际学术会议(CITCE 2023)

第三届计算机、物联网与控制工程国际学术会议&#xff08;CITCE 2023) The 3rd International Conference on Computer, Internet of Things and Control Engineering&#xff08;CITCE 2023) 第三届计算机、物联网与控制工程国际学术会议&#xff08;CITCE 2023&#xff09;…

运用亚马逊云科技Amazon Kendra,快速部署企业智能搜索应用

亚马逊云科技Amazon Kendra是一项由机器学习&#xff08;ML&#xff09;提供支持的企业搜索服务。Kendra内置数据源连接器&#xff0c;支持快速访问Amazon S3、AmazonRDS、AmazonFSX以及其他外部数据源&#xff0c;帮助用户自动提取文档并建立索引。Kendra支持超过30多种多国语…

线性代数的学习和整理7:各种特殊效果矩阵汇总

目录 1 矩阵 1.1 1维的矩阵 1.2 2维的矩阵 1.3 没有3维的矩阵---3维的是3阶张量 1.4 下面本文总结的都是各种特殊效果矩阵特例 2 方阵: 正方形矩阵 3 单位矩阵 3.1 单位矩阵的定义 3.2 单位矩阵的特性 3.3 为什么单位矩阵I是 [1,0;0,1] 而不是[0,1;1,0] 或[1,1;1,1]…

Flink流批一体计算(16):PyFlink DataStream API

目录 概述 Pipeline Dataflow 代码示例WorldCount.py 执行脚本WorldCount.py 概述 Apache Flink 提供了 DataStream API&#xff0c;用于构建健壮的、有状态的流式应用程序。它提供了对状态和时间细粒度控制&#xff0c;从而允许实现高级事件驱动系统。 用户实现的Flink程…

React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗?

背景 突然发现 antd 的 getFieldsValue()是可以传一个 true 参数的&#xff0c;如题,React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗&#xff1f; 验证 确实不一样 结论 getFieldsValue 提供了多种重载方法&#xff1a; getFieldsValue(name…

Leetcode每日一题:1267. 统计参与通信的服务器(2023.8.24 C++)

目录 1267. 统计参与通信的服务器 题目描述&#xff1a; 实现代码与解析&#xff1a; 写法一&#xff1a;两次遍历 hash 原理思路&#xff1a; 写法二&#xff1a;三次遍历 原理思路&#xff1a; 1267. 统计参与通信的服务器 题目描述&#xff1a; 这里有一幅服务器分…

SpringIoC三层架构实战

目录 一、需求分析 二、创建相关数据库 三、导入相关依赖 四、实体类准备 五、相关技术讲解&#xff08;Druid、JDBCTemplate&#xff09; 六、三层架构实现案例 一、需求分析 搭建一个三层架构案例&#xff0c;模拟查询全部学生&#xff08;学生表&#xff09;信息&#x…

美团发布2023年Q2财报:营收680亿元,同比增长33.4%

8月24日&#xff0c;美团(股票代码:3690.HK)发布2023年第二季度及半年业绩报告。今年二季度&#xff0c;美团实现营收680亿元(人民币&#xff0c;下同)&#xff0c;同比增长33.4%。 财报显示&#xff0c;二季度&#xff0c;美团继续深入推进“零售科技”战略&#xff0c;持续加…