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

从零使用JobGateway

JobGateway是模拟大数据(Flink、Hive、HBase等)客户端用于大数据业务提交功能的网关,是一个具备HTTP/HTTPS的REST系统服务。它具备高性能、易使用、高可用、高扩展性等特点,并具有监控、告警、配置分离等特性,能够大大缩短作业提交链路,简化大数据作业提交流程。

背景信息

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

以Hive作业提交为例(其余作业相关参考JobGateway接口文档),示例如下:

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"
}

Hive作业提交参数含义

参数名称

参数含义

备注

host

nginx所在的服务器ip

-

port

nginx监控端口

https默认为29970,http默认为29971

user.name

提交作业的用户名称

-

JobServerAuthorization

授权认证信息

参考JobGateway接口文档

job_name

作业名称

-

job_type

作业类型

HiveSql代表是执行HiveSql作业类型

arguments

HiveSql作业内容

-

若在服务端修改了其他组件如ZooKeeper、KMS等配置,同时,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.