• MapReduce-自动化运行配置


    1.打包时指定main  Class信息

    注意:默认直接通过maven插件打成jar包中没有指定main class信息,因此在运行mapreduce的jar包时必须在指令后明确main class信息  需要在插件进行配置

     1 <build>
     2     <plugins>
     3       <plugin>
     4         <groupId>org.apache.maven.plugins</groupId>
     5         <artifactId>maven-jar-plugin</artifactId>
     6         <configuration>
     7           <outputDirectory>${basedir}/target</outputDirectory>
     8           <archive>
     9             <manifest>
    10               <!-- 在打包插件中指定main class 信息 -->
    11               <mainClass>com.yt.wordcount.WordCountJob</mainClass>
    12             </manifest>
    13           </archive>
    14         </configuration>
    15       </plugin>
    16     </plugins>
    17 </build>         

      执行命令:clean   package

      

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

     1 <build>
     2   <!--扩展maven的插件中加入ssh插件-->
     3     <extensions>
     4         <extension>
     5             <groupId>org.apache.maven.wagon</groupId>
     6             <artifactId>wagon-ssh</artifactId>
     7             <version>2.8</version>
     8         </extension>
     9     </extensions>
    10     <plugins>
    11         <plugin>
    12             <groupId>org.codehaus.mojo</groupId>
    13             <artifactId>wagon-maven-plugin</artifactId>
    14             <version>1.0</version>
    15             <configuration>
    16                 <fromFile>target/test.jar 或者 ${project.build.finalName}.jar</fromFile>
    17                                  <!--user是用户名  password是密码 -->
    18                 <url>scp://user:password@192.168.20.128/root</url>
    19             </configuration>
    20         </plugin>
    21     </plugins>
    22 </build>

      执行命令:打包后直接执行   wagon   upload-single

      

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

      wagon配置加入commands命令

     1 <plugin>
     2   <groupId>org.codehaus.mojo</groupId>
     3   <artifactId>wagon-maven-plugin</artifactId>
     4   <version>1.0</version>
     5   <configuration>
     6     <fromFile>target/${project.build.finalName}.jar</fromFile>
     7     <url>scp://root:1@10.15.0.5/root</url>
     8     <commands>
     9       <!-- 通过sh 执行shell脚本文件 -->
    10       <command>nohup hadoop-2.9.2/bin/hadoop jar hadoop_wordcount-1.0-SNAPSHOT.jar > /root/mapreduce.out 2>&amp;1 &amp; </command>
    11     </commands>
    12     <displayCommandOutputs>true</displayCommandOutputs>
    13   </configuration>
    14 </plugin>

      执行命令:clean  package  wagon:upload-single   wagon:sshexec

           

    4.idea简化指令插件下载

      1.每次执行太繁琐,在idea有一个插件可以简化

            

    2.在执行的代码右键

    3.添加指令  每个指令以空格分割   点击ok

           

       4.到这一步基本就完成了   有了这个插件为我们省去了很多步骤  

       右键就可以运行了

           

       

  • 相关阅读:
    c#与科学计算之一:发掘 C# 特性赋予科学计算项目以威力(转贴)
    我使用使用vs2005的理由
    MapXtrem2004经典代码:asp.net鹰眼
    LaheyFujitsu Fortran v7.1初感受
    .NET平台上的编译器不完全列表(转别)
    iNET:Microsoft.NET的Java实现
    MapXtreme2004 & vs2005的官方回答
    告别一段时间
    MapXtreme2004 连接oracle spatial的问题(已解决)
    手工卸载.Net写的win服务
  • 原文地址:https://www.cnblogs.com/xiaoh1/p/12151758.html
Copyright © 2020-2023  润新知