打包idea代码至集群上运行

news2024/10/5 14:23:09

执行前记得在对应的节点上启动hdfs(start-dfs.sh )、yarn(start-yarn.sh)和任务历史服务(mapred --daemon start historyserver)

一、打包操作

1、在pom.xml中下载打包插件

直接将pom.xml里面的build删掉换成下面的部分

<build>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.6.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <descriptorRefs>
                        <descriptorRef>jar-with-dependencies</descriptorRef>
                    </descriptorRefs>
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
2、将代码打包成jar文件

(1)先把原来的target文件夹整个删掉,再把一些不必要没用的东西也删掉

(2)在窗口最右端点击Maven,双击红框内容

(3)打包完成后会重新生成target目录,目录下生成了这两个jar包

小的jar包没依赖,大的jar包有依赖,选择主要取决于你的运行环境有没有依赖,接下来我们用到的是有依赖的

3、将文件上传至虚拟机和hdfs指定位置

(1)拖动文件,将jar包和文件分别上传至/opt/jar和/opt/file文件夹中

(2)在hadoop中创建一个文件夹input

hadoop dfs -mkdir /input

(3)上传accounts.txt文件至hdfs上

hadoop fs -put accounts.txt /input

4、进行执行

 /opt/jar/hdfs_api.jar :jar包的具体路径

org.example.maperduce.account.AccountDriver:Driver的包路径

 hadoop jar /opt/jar/hdfs_api.jar org.example.maperduce.account.AccountDriver /input /output

5、查看结果

(1)方式一:web上查看

在Windows上打开网址http://bigdata03:9870 ,点击Utilities进入Browse Directory页面,在红框中输入/output后点击Go!

可以挨个点进去再点Head the file查看结果

(2)方式二:终端上查看

hadoop fs -ls /output
hadoop fs -cat /output/part-r-00000

如果二次执行记得删掉/output目录后再执行

执行完成后记得关闭所有服务

二、集群崩溃处理

1、问题表现

在删除/output目录后再二次执行.jar报错信息如下:

org.apache.hadoop.mapreduce.v2.app.job.impl.TaskAttemptImpl: Diagnostics report from attempt_1663122661041_0001_m_000000_0: [2022-09-14 15:03:31.933]Container [pid=3059,containerID=container_1663122661041_0001_01_000002] is running 242518528B beyond the 'VIRTUAL' memory limit. Current usage: 76.9 MB of 1 GB physical memory used; 2.3 GB of 2.1 GB virtual memory used. Killing containe

这是由于出现了内存限制的问题

2、解决方法

(1)在mapred-site.xml的<configuration>标签中添加如下内容

<!-- 是否对容器强制执行虚拟内存限制 -->
 <property>
 <name>yarn.nodemanager.vmem-check-enabled</name>
 <value>false</value>
 <description>Whether virtual memory limits will be enforced for 
containers</description>
 </property>
 <!-- 为容器设置内存限制时虚拟内存与物理内存之间的比率 -->
 <property>
 <name>yarn.nodemanager.vmem-pmem-ratio</name>
 <value>5</value>
 <description>Ratio between virtual memory to physical memory when 
setting memory limits for containers</description>
 </property>

(2)在yarn-site.xml的<configuration>标签中添加如下内容

<property>
 <name>yarn.scheduler.minimum-allocation-mb</name>
 <value>2048</value>
 <description>default value is 1024</description>
</property>

(3)找到集群中配置文件的位置

我的配置文件在/opt/softs/hadoop3.1.3/etc/hadoop目录下

(4)直接在MobaXterm中删除mapred-site.xml和yarn-site.xml

(5)直接拖动新的文件至原来的地方

我这里没有用命令行的形式去实现,也可以用vim命令实现,只要添加对应内容至两个.xml文件即可

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

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

相关文章

Python 和 Java 实现云计算的最终年项目

1、问题背景 目前&#xff0c;我正在进行我的最终年项目&#xff0c;计划用 Python 编写一个云计算系统&#xff0c;而云客户端将由我的团队成员使用 Java 来编写。这个云客户端将具有一个带有标签的界面&#xff0c;并提供文本编辑器、媒体播放器、几个基于 Java 的小游戏以及…

组件的注册和引用

在Vue中&#xff0c;开发者可以将页面中独立的、可重用的部分封装成组件&#xff0c;对组件的结构&#xff0c;样式和行为进行设置。组件是 Vue 的基本结构单元&#xff0c;组件之间可以相互引用。 一.注册组件 当在Vue项目中定义了一个新的组件后&#xff0c;要想在其他组件中…

交互式流程图组件DHTMLX Diagram v6.0 - 拥有更灵活的高度可定制功能

DHTMLX Diagram库允许用几行代码构建JavaScript流程图&#xff0c;通过自动布局和实时编辑器&#xff0c;它可以更容易地将复杂数据可视化到一个整洁的层次结构中。 DHTMLX Diagram v6.0版本发布&#xff0c;带来了众多令人兴奋的新功能和改进&#xff0c;使得这个JavaScript图…

App UI 风格,尽显魅力

精妙无比的App UI 风格

摄影店展示服务预约小程序的作用是什么

摄影店包含婚照、毕业照、写真、儿童照、工作照等多个服务项目&#xff0c;虽然如今人们手机打开便可随时拍照摄影&#xff0c;但在专业程度和场景应用方面&#xff0c;却是需要前往专业门店服务获取。 除了进店&#xff0c;也有外部预约及活动、同行合作等场景&#xff0c;重…

ROS socketcan_bridge使用说明

ROS socketcan_bridge使用说明&#xff08;以ubuntu20.04为例&#xff09; socketcan_bridge是什么 ROS针对socketcan提供了三个层次的驱动库&#xff0c;分别是ros_canopen&#xff0c;socketcan_bridge和socketcan_interface。 socketcan_interface&#xff1a; 功能&#x…

Docker:技术架构演进

文章目录 基本概念架构演进单机架构应用数据分离架构应用服务集群架构读写分离/主从分离架构冷热分离架构垂直分库微服务容器编排架构 本篇开始进行对于Docker的学习&#xff0c;Docker是一个陌生的词汇&#xff0c;那么本篇开始就先从技术架构的角度出发&#xff0c;先对于技术…

python词云生成库-wordcloud

内容目录 一、模块介绍二、WordCloud常用的方法1. generate(self, text)2. generate_from_frequencies(frequencies)3. fit_words(frequencies)4. generate_from_text(text) 三、进阶技巧1. 设置蒙版2. 设置过滤词 WordCloud 是一个用于生成词云的 Python 库&#xff0c;它可以…

6-Maven的使用

6-Maven的使用 常用maven命令 //常用maven命令 mvn -v //查看版本 mvn archetype:create //创建 Maven 项目 mvn compile //编译源代码 mvn test-compile //编译测试代码 mvn test //运行应用程序中的单元测试 mvn site //生成项目相关信息的网站 mvn package //依据项目生成 …

问题:卫生事业的发展受多种因素的影响和制约,以下属于卫生事业发展影响因素的有(? ?)。 #微信#其他

问题&#xff1a;卫生事业的发展受多种因素的影响和制约&#xff0c;以下属于卫生事业发展影响因素的有&#xff08;? ?&#xff09;。 A、经济水平 B、管理水平 C、人口素质 D、科技发展 参考答案如图所示

全面解析:渗压计数据如何预测地下水趋势

随着人们对水资源日益增长的需求和对环境保护意识的提升&#xff0c;地下水位的监测和预测成为了水利工程和环境科学领域的重要研究内容。渗压计作为一种能够测量土壤或岩石中孔隙水压力的仪器&#xff0c;在地下水位的监测中发挥着关键作用。本文将从渗压计的工作原理、安装方…

Ubuntu系统安装docker以及安装yg系统所能使用到的插件

Ubuntu系统安装docker以及安装yg系统所能使用到的插件 前言&#xff1a;建议大家使用ubuntu系统的时候&#xff0c;直接永久关闭防火墙目前我们处于学习状态&#xff0c;这样有利于提高开发效率。 项目地址&#xff1a;https://github.com/xzhHas/yg 文章目录 Ubuntu系统安装do…

Windows搭建apache网站

1、官网下载安装包&#xff0c;注意下载服务器对应操作系统的安装包&#xff08;此案例为64位操作系统&#xff09; Apache VS17 binaries and modules downloadFor (business) webmasters, developers and home-users who want running always up to date Windows VS17 binar…

RK3568笔记三十:PP-ORCv3自训练部署

若该文为原创文章&#xff0c;转载请注明原文出处。 一、介绍 PP-OCR 是百度公布并开源的OCR领域算法&#xff0c;一个轻量级的OCR系统&#xff0c;在实现前沿算法的基础上&#xff0c;考虑精度与速度的平衡&#xff0c; 进行模型瘦身和深度优化&#xff0c;使其尽可能满足产业…

Django request.POST获取提交的表单数据

在Django中&#xff0c;request.POST 是一个特殊的属性&#xff0c;它是一个类似于字典的对象&#xff0c;用于访问通过POST方法提交的表单数据。如果你在视图中使用 print(request.POST.get(username))&#xff0c;这通常意味着你正在尝试从一个HTML表单中获取一个名为 userna…

映宇宙:多基础设施下,如何进行数据库选型升级|OceanBase 《DB大咖说》(五)

随着多基础设施成为行业发展的主流趋势&#xff0c;数据库选型时需要考虑哪些关键因素&#xff1f;对于云数据库的升级策略&#xff0c;又该如何制定&#xff1f;OceanBase《DB 大咖说》第五期特别邀请了映宇宙&#xff08;原映客&#xff09;的数据库负责人赵智博先生&#xf…

DENet:融合全局与局部,多模块策略,超越传统分割方法,提升青光眼筛查精度

DENet&#xff1a;融合全局与局部&#xff0c;多模块策略&#xff0c;超越传统分割方法&#xff0c;提升青光眼筛查精度 提出背景精细拆解A. 全局视网膜图像层面B. 视盘区域层面 提出背景 论文&#xff1a;https://arxiv.org/pdf/1805.07549 代码&#xff1a;https://github.…

使用mysqldump迁移MySQL数据

将Windows系统中MySQL数据导出到其他系统中MySQL数据库中 1.导出数据 进入MySQL安装目录的bin目录下&#xff0c;打开dos窗口执行以下命令 --single-transaction 参数表示不锁表 1.1 指定部分表导出 mysqldump -u用户名 -p密码 数据库名 表1 表2 表3 --single-transact…

Nvidia/算能 +FPGA+AI大算力边缘计算盒子:测控巡检智能机器人

是集研发、生产、制造、销售为一体的高新技术企业&#xff0c;是国内"皮带机智能巡检"领域的技术引领者。公司先后获得国家级高新技术企业、太原市市级企业技术中心、太原市技术创新示范企业、山西省民营科技企业、山西省专精特新中小企业、山西省四新中小企业、太原…

【经验分享】搭建电商项目过程中关于淘宝APP商品数据采集的要点

淘宝APP商品采集的注意事项和应用可以归纳为以下几点&#xff1a; 注意事项&#xff1a; 遵守平台规则&#xff1a; 在进行淘宝商品采集时&#xff0c;务必遵守淘宝平台的相关规则&#xff0c;不得采集敏感信息&#xff0c;如用户隐私、商家敏感数据等。尊重商家权益&#xf…