Samza YARN工作
当您在您的工作配置中定义 job.factory.class = org.apache.samza.job.yarn.YarnJobFactory 时,Samza 将使用 YARN 来执行您的工作。YarnJobFactory 将使用HADOOP_YARN_HOMErun-job.sh 执行的机器上的环境变量来获取适当的 YARN 配置,这将定义 YARN 资源管理器的位置。YarnJob 将与资源管理器一起工作,使您的工作在 YARN 群集上启动。
如果您想使用 YARN 来运行 Samza 工作,您还需要定义 Samza 工作包的位置。
例如,你可能会说:
yarn.package.path=http://my.http.server/jobs/ingraphs-package-0.0.55.tgz
此 .tgz 文件遵循 Packaging 页面上概述的约定(它具有 bin / run-am.sh 和 bin / run-container.sh)。YARN NodeManagers 将负责将该 .tgz 文件下载到相应的计算机上,并将其解压缩。从那里,YARN 将为 Samza 应用主程序和 SamzaContainer 分别执行 run -am.sh 或 run-container.sh。
如果要在特定 YARN 队列中运行 Samza 作业,而不是默认队列,则可以在作业的配置中设置 yarn.queue 的属性。
例如,使用以下属性设置:
yarn.queue=root.adhoc
Samza 作业将在 root.adhoc 队列中运行。
更多建议: