Hadoop--MapReduce自动化运行配置(Maven Helper)

一. Hadoop–MapReduce自动化运行配置

1. idea下载Maven插件

插件名: Maven Helper
在这里插入图片描述

2. 指定main class 信息

2. 传统hadoop集群并执行hadoop_hdfs.jar包

[root@hadoop15 ~]# hadoop jar hadoop_hdfs.jar com.xizi.phonedata.PhoneCleanDataJob
  1. 默认直接通过maven插件打成jar包中没有指定main class 信息,因此在运行mapreduce的jar包时必须在指令后面明确指定main class 的信息是谁。
  2. 在执行mapreduce作业时会加大执行的难度,因此我们需要在打jar包时指定main class信息,减少执行作业时的操作,
  3. 如果需要在打包中指定main class 信息:只需要对打包插件进行配置即可:

3. 就可以直接执行jar包,不需要额外指定main class 信息

    <plugins>
        <!-- 在打包插件中指定main class 信息 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <configuration>
            		//	jar包位置
                <outputDirectory>${basedir}/target</outputDirectory>
                <archive>
                    <manifest>
                    	//运行的类全类名
                        <mainClass>com.xizi.phonedata.PhoneCleanDataJob</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>

jar包输出位置

在这里插入图片描述

3. 使用wagon插件实现自动上传至hadoop集群

  <build>
  <!--扩展maven的插件中加入ssh插件-->
	<extensions>
		<extension>
			<groupId>org.apache.maven.wagon</groupId>
			<artifactId>wagon-ssh</artifactId>
			<version>2.8</version>
		</extension>
	</extensions>
	<plugins>
		<plugin>
			<groupId>org.codehaus.mojo</groupId>
			<artifactId>wagon-maven-plugin</artifactId>
			<version>1.0</version>
			<configuration>
				<fromFile>target/test.jar 或者 ${project.build.finalName}.jar</fromFile>
				<url>scp://root:123456@127.0.0.1/root</url>
			</configuration>
		</plugin>
	</plugins>
</build>

1. 打包后直接执行wagon uplod-single即可
在这里插入图片描述
2. 执行命令操作: clean package wagon:upload-single

4. 使用wagon上传jar完成后远程执行job作业

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>wagon-maven-plugin</artifactId>
  <version>1.0</version>
  <configuration>
    <fromFile>target/${project.build.finalName}.jar</fromFile>
    <url>scp://root:123456@127.0.0.1/root</url>
    <commands>
      <!-- 通过sh 执行shell脚本文件 -->
      <command>nohup hadoop-2.9.2/bin/hadoop jar hadoop_wordcount-1.0-SNAPSHOT.jar > /root/mapreduce.out 2>&amp;1 &amp; </command>
    </commands>
    <displayCommandOutputs>true</displayCommandOutputs>
  </configuration>
</plugin>

1. 执行命令操作:clean package wagon:upload-single wagon:sshexec
在这里插入图片描述

2. 执行优化 一行代码直接优化

在这里插入图片描述
3. 执行成功

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值