开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

请教下Flink,一直有个问题,代码打包好后在客户端是怎么提交到JOBMANAGER上去的?

请教下Flink,一直有个问题,FLINK的CLIENT提交任务到JOBMANAGER上,那客户端是一台独立机器,JOBMANAGER在另外一台机器上,代码打包好后在客户端是怎么提交到JOBMANAGER上去的?

展开
收起
真的很搞笑 2023-12-18 08:06:21 60 0
4 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    客户端提交任务到JobManager上,需要先将打包好的代码上传到服务器上的某个目录中,然后在客户端提交任务到JobManager上,需要先将打包好的代码上传到服务器上的某个目录中,然后在客户端执行以下命令:

    ./bin/flink run -m <jobmanager_host>:<jobmanager_port> -c <jarfile_path> <main_class> [args]
    

    其中,<jobmanager_host><jobmanager_port>分别是JobManager所在机器的IP地址和端口号,<jarfile_path>是打包好的JAR文件在服务器上的路径,<main_class>是Flink程序的主类名,[args]是传递给主类的参数。

    例如,如果JobManager在192.168.1.100的机器上,端口号为6123,打包好的JAR文件在服务器的/home/user/flink目录下,Flink程序的主类名为com.example.MyFlinkJob,那么可以在客户端执行以下命令:

    ./bin/flink run -m 192.168.1.100:6123 -c /home/user/flink/my-flink-job.jar com.example.MyFlinkJob arg1 arg2 arg3
    

    这样就可以将任务提交到JobManager上了。

    2023-12-18 14:35:07
    赞同 展开评论 打赏
  • FLINK client 是提交任务,代码是提前上传好的 ,此回答整理自钉群“【③群】Apache Flink China社区”

    2023-12-18 11:48:17
    赞同 展开评论 打赏
  • 当你的 Flink 代码打包好后,你可以通过以下步骤将其提交到 JOBMANAGER:

    1、打包代码:首先,你需要将你的 Flink 代码打包成一个可执行的 JAR 文件。你可以使用 Maven 或 Gradle 等构建工具来完成这个步骤。
    2、配置提交参数:在提交 Flink 作业之前,你需要配置一些参数,例如作业的名称、作业的配置、数据源和目标系统的连接参数等。这些参数通常在提交作业时通过命令行参数或配置文件提供。

    3、提交作业:一旦你的代码打包完成并配置了相应的参数,你可以使用 Flink 的命令行工具或 REST API 来提交作业。例如,你可以使用以下命令行命令来提交作业:

    shell
    flink run -m : --job-name --config --source --sink
    其中, 和 是 JOBMANAGER 的主机名和端口号, 是你打包的 JAR 文件的路径, 是作业的名称, 是配置文件的路径, 和 是数据源和目标系统的连接参数。

    4、确认作业提交:提交作业后,你可以通过 Flink 的作业管理界面或使用 Flink 的命令行工具来查看作业的状态和日志,以确保作业已经成功提交并正在运行。
    请注意,具体的提交步骤可能因你的环境和配置而有所不同。确保你已经正确配置了 Flink 和 JOBMANAGER 的连接参数,并且已经安装了正确的 Flink 版本和依赖库。

    2023-12-18 10:29:14
    赞同 1 展开评论 打赏
  • 当你在Flink客户端提交一个作业到JobManager时,客户端会执行一系列的步骤来将你的作业发送到JobManager:

    1. 准备作业:客户端首先会解析你提交的命令行参数,并准备你的作业。这包括加载你的代码,解析你的配置,等等。

    2. 打包作业:然后,客户端会将你的作业打包成一个JAR文件。这个JAR文件包含了你的代码,依赖库,配置,等等。

    3. 发送作业:最后,客户端会将这个JAR文件发送到JobManager。JobManager会接收这个JAR文件,并在其上执行你的作业。

    这个过程是通过Flink的网络协议完成的。Flink的客户端和服务端之间有一个网络连接,客户端可以通过这个连接将JAR文件发送到JobManager。

    请注意,这个过程是在你的Flink安装的bin目录下的flink脚本中自动处理的。你不需要手动执行这些步骤。你只需要在你的客户端运行flink run命令,然后提交你的作业,Flink会自动处理剩下的工作。

    2023-12-18 09:09:48
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载