在没有docker的mesos上运行java应用程序

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

我只是搞清楚Mesos并在一个流浪节点上测试。在检查mesos的过程中,我的工作遇到了jvm内存泄漏的docker问题,发布在这里->https://github.com/docker/docker/issues/15020
我想知道是否有一些技巧或例子,我们可以测试在mesos上的集装箱化,看看内存问题是否是特定于docker集装箱船。到目前为止,大多数的例子是马拉松赛跑的 Docker ,但没有太多其他非 Docker 。
我是否需要编写自己的mesos-jvm集装箱船隔离器?
containerizer是否只解析作业细节并执行脚本?
我能把一个.war和job包传递给mesos集装箱船并让它运行我的java应用程序吗?
大型github项目中有没有简单的示例或特定的代码来说明这一点?
我的工作是决定是否应该在不使用容器化的情况下部署java应用程序,或者更改容器化解决方案是否有助于解决问题。
关于如何在mesos集装箱船上安装tomcatjvm应用程序,有什么提示或文档链接吗?我仍在学习如何mesos的工作,所以任何帮助!

yduiuuwa

yduiuuwa1#

所以让我退一步:你不在mesos上运行java应用程序,而是在它的一个框架上运行它,比如marathon(用于长时间运行的任务,比如webserver)或chronos(用于计划的批处理作业)。把mesos想象成分布式操作系统的linux内核,可能会有所帮助。
回到您的问题,除非您计划编写自己的框架(例如tobilg/mesos js framework),否则下面假设您使用marathon来启动tomcat(因为它是一个长时间运行的任务)。
与大多数框架一样,marathon并没有完成繁重的工作,它利用mesos的核心特性(比如fetcher)将执行应用程序所需的资源拉到mesos代理的沙盒中。通过 uris 您可以指定marathon(通过mesos fetcher)下载的url列表,根据文件扩展名,还可以在marathon启动通过 cmd .

相关问题