mesos rxjava—终止任务和关闭调度程序

wkyowqbh  于 2021-06-26  发布在  Mesos
关注(0)|答案(1)|浏览(446)

我正在寻找一种方法来终止mesos任务或关闭mesos rxjava库中的框架。似乎在subscribe()之后,向mesos发送调用的唯一机会是响应mesos的事件。我已经能够将fenzo集成到一个单独的调度循环中,方法是用一个promise中的observable来响应offer租约,并将该promise存储到fenzo循环中,因此有可能对“task started”update事件执行同样的操作,并保持承诺以终止该任务,但是你不能取消一个还没有开始的任务,也不能解决关闭框架的问题。或者有一种方法可以使用库的身份验证以非响应方式简单地发送http请求?有没有一个更干净的解决方案我错过了?

cgvd09ve

cgvd09ve1#

我认为您在这里寻找的是teardown调用[1],当这个调用从调度器发送到mesos时,它将启动整个集群的框架的完全关闭。
通过将主题编织到可观察对象中(您可以在下面的链接2中看到一个将可观察对象编织在一起的示例),您可以向mesos rxjava客户机提供一个句柄,以便能够发送对事件没有直接React的调用。下面的链接3是一个github问题的链接,对这一点有更多的解释。
[1] https://github.com/apache/mesos/blob/master/docs/scheduler-http-api.md#teardown
[2] https://github.com/mesosphere/mesos-rxjava/blob/master/mesos-rxjava-example/mesos-rxjava-example-framework/src/main/java/com/mesosphere/mesos/rx/java/example/framework/sleepy/sleepy.java#l140
[3] https://github.com/mesosphere/mesos-rxjava/pull/63#issuecomment-235043568

相关问题