更新时间:2022-11-22 GMT+08:00
分享

未安装客户端时编译并运行程序

操作场景

HDFS应用程序支持在未安装HDFS客户端的Linux环境中运行。在程序代码完成开发后,可以上传Jar包至Linux环境中运行应用。

前提条件

  • Linux环境已安装JDK,版本号需要和IDEA导出Jar包使用的JDK版本一致。
  • 当Linux环境所在主机不是集群中的节点时,需要在Linux环境所在节点的hosts文件中设置主机名和IP地址映射。主机名和IP地址请保持一一对应。

操作步骤

  1. 进入工程本地根目录,在Windows命令提示符窗口中执行下面命令进行打包。

    mvn -s "{maven_setting_path}" clean package

    • 上述打包命令中的{maven_setting_path}为本地Maven的“settings.xml”文件路径。
    • 打包成功之后,在工程根目录的target子目录下获取打好的jar包。

  2. 将导出的Jar包拷贝上传至Linux运行环境的任意目录下,例如“/optclient”
  3. 将工程中的“lib”文件夹和“conf”文件夹上传至和Jar包相同的Linux运行环境目录下,例如“/opt/client”(其中“lib”目录汇总包含了工程中依赖的所有的Jar包,“conf”目录包含运行jar包所需的集群相关配置文件,请参考准备运行环境)。
  4. 运行此样例代码需要设置运行用户,设置运行用户有两种方式,添加环境变量HADOOP_USER_NAME或者修改代码设置运行用户。若在没有修改代码的场景下,执行以下语句添加环境变量:

    export HADOOP_USER_NAME=test

    用户可向管理员咨询运行用户。test在这里只是举例,若需运行Colocation相关操作的样例代码,则此用户需属supergroup用户组。

  5. 执行如下命令运行Jar包。

    java -cp HDFSTest-XXX.jar:conf/:lib/* com.huawei.bigdata.hdfs.examples.HdfsExample

    java -cp HDFSTest-XXX.jar:conf/:lib/* com.huawei.bigdata.hdfs.examples.ColocationExample

    在运行com.huawei.bigdata.hdfs.examples.ColocationExample:时,HDFS的配置项“fs.defaultFS”不能配置为“viewfs://ClusterX”。

分享:

    相关文档

    相关产品