更新时间:2024-05-15 GMT+08:00
分享

从零开始使用JobGateway

JobGateway是模拟大数据(Mapreduce、Spark、Flink、Hive等)客户端用于大数据业务提交功能的网关,是一个具备HTTPS的REST系统服务,支持提交Mapreduce、Spark、Flink、Hive等类型的大数据作业, 同时具有管理作业的能力,用户可以查询、终止已提交的作业。它具备高性能、易使用、高可用、高扩展性等特点,并具有监控、告警、配置分离等特性,能够大幅缩短作业提交链路,简化大数据作业提交流程。

JobGateway服务由JobBalancer和JobServer两个角色组成,其中,JobBalancer是作业REST请求转发的网关,将作业请求转发到不同的jobserver实例,提供负载均衡的能力;JobServer是大数据作业提交的主要执行者,能根据不同的作业类型,构造提交上下文,将作业提交到YARN上

背景信息

例如某用户作业提交较多,流程耗时、繁琐、复杂,使用组件客户端完成作业提交效率低下。不想使用大数据组件客户端提交大数据作业,可以安装JobGateway组件,使用JobGateway服务完成作业的提交;只需要构建基于rest风格的http/https的url即可完成作业提交。

以Hive作业提交为例,示例如下:

curl --location --request POST 'https://{host}:{port}/mrsjob/submit?user.name={username}'
--header 'JobServerAuthorization: {AuthorizationInfo}'
--header 'Content-Type: application/json'
--data-raw '{
"job_name":"{job-name}",
"job_type":"HiveSql",
"arguments":["SHOW TABLES"]
}'

返回值:

{
    "id": null,
    "state": "COMPLETE",
    "errorCode": 0,
    "errorCodeDescription": null,
    "errorDescription": null,
    "failedNodeList": null,
    "totalProgress": "0",
    "job_id": "466710d2-b1ff-4a98-805b-4675292e5cc8"
}

参数名称

参数含义

备注

host

JobBalancer所在的服务器IP

-

port

JobBalancer https端口

https默认为29974

user.name

提交作业的用户名称

-

JobServerAuthorization

授权认证信息

参考JobGateway接口文档

job_name

作业名称

-

job_type

作业类型

HiveSql代表是执行HiveSql作业类型

arguments

HiveSql作业内容

-

如果在服务端修改了其他组件如ZooKeeper配置,同时,JobGateway配置也过期时,则需要重启JobGateway组件,并且刷新JobServer角色所在节点的客户端配置。刷新JobServer所在节点的客户端配置步骤如下:

  1. root用户登录客户端安装节点,执行以下命令切换至omm用户。

    su - omm

  2. 进入客户端安装的目录,例如“/opt/Bigdata/client”,执行以下命令更新配置文件:

    cd /opt/Bigdata/client

    sh autoRefreshConfig.sh

  3. 按照提示输入FusionInsight Manager管理员用户名,密码以及FusionInsight Manager界面浮动IP。
  4. 输入需要更新配置的组件名,组件名之间使用“,”分隔。如需更新所有组件配置,可直接单击回车键。
    界面显示以下信息表示配置更新成功:
    Succeed to refresh components client config.
分享:

    相关文档

    相关产品