更新时间:2024-11-29 GMT+08:00

提交Spark任务

操作场景

该任务指导用户在使用Oozie客户端提交Spark任务。

请下载使用最新版本的客户端。

前提条件

  • Spark和Oozie组件安装完成且运行正常,客户端安装成功。

    如果当前客户端为旧版本,需要重新下载和安装客户端。

  • 已创建或获取访问Oozie服务的人机用户账号及密码。
    • 该用户需要从属于hadoop、supergroup、hive组,同时添加Oozie的角色操作权限。若使用Hive多实例,该用户还需要从属于具体的Hive实例组,如hive3。
    • 用户同时还需要至少有manager_viewer权限的角色。
  • 获取运行状态的Oozie服务器(任意实例)URL,如“https://10.1.130.10:21003/oozie”。
  • 获取运行状态的Oozie服务器主机名,如“10-1-130-10”。
  • 获取Yarn ResourceManager主节点IP,如“10.1.130.11”。

操作步骤

  1. 以客户端安装用户登录安装Oozie客户端的节点。
  2. 执行以下命令,获取安装环境信息。其中“/opt/client”为客户端安装路径,该操作的客户端目录只是举例,请根据实际安装目录修改。

    source /opt/client/bigdata_env

  3. 判断集群认证模式。

    • 安全模式,执行kinit命令进行用户认证。

      例如,使用oozieuser用户进行认证。

      kinit oozieuser

    • 普通模式,执行4

  4. 执行以下命令,进入样例目录。

    cd /opt/client/Oozie/oozie-client-*/examples/apps/spark/

    该目录下需关注文件如表1所示。

    表1 文件说明

    文件名称

    描述

    job.properties

    工作流的参数变量定义文件。

    workflow.xml

    工作流的规则定制文件。

    lib

    工作流运行依赖的jar包目录。

  5. 执行以下命令,编辑“job.properties”文件。

    vi job.properties

    修改如下内容:

    更改“userName”的参数值为提交任务的人机用户名,例如“userName=oozieuser”

  6. 执行oozie job命令,运行工作流文件。

    oozie job -oozie https://oozie角色的主机名:21003/oozie/ -config job.properties -run

    • 命令参数解释如下:

      -oozie:实际执行任务的Oozie服务器URL。

      -config:工作流属性文件。

      -run:运行工作流。

    • 执行完工作流文件,显示“job id”表示提交成功,例如“job: 0000021-140222101051722-oozie-omm-W”。登录Oozie管理页面,查看运行情况。

      使用oozieuser用户,登录Oozie WebUI页面:https://oozie角色的ip地址:21003/oozie 。

      Oozie的WebUI界面中,可在页面表格根据“job id”查看已提交的工作流信息。