1

我正在使用 spring-boot 和 spring-boot-yarn 将纱线应用程序提交到集群。

我的用例接近本教程https://github.com/spring-guides/gs-yarn-basic中描述的用例。

唯一的区别是我的“客户端”应该是一个 Web 应用程序,并在发出 Web 请求时提交纱线作业。

我遇到的问题是对“客户端”网络应用程序的网络请求提供了我需要传递给纱线作业的参数。

在上述教程中,参数作为命令行参数传递给 application.yml 中指定的 appmaster / 容器。在我的情况下,这种方法不起作用,因为每个纱线作业都有一组不同的参数。

有没有办法将动态参数传递给纱线作业,而无需在 application.yml 中硬编码它们?

4

1 回答 1

1

最初的想法是防止“流氓”用户或应用程序传递属性,然后这些属性会自动出现在命令行选项中,这可能会对 hadoop 集群造成伤害。

如果这是您想要的,值得在Spring Boot Yarn - Passing Command line arguments中查看我的答案。

话虽如此,您并不是第一个提出这个问题或“抱怨”它太难或不清楚如何去做的人。我们将在未来的版本中让这变得更容易,主要是因为这似乎是用户想要做的事情。

于 2015-04-24T08:44:26.617 回答