从Web浏览器创建新的应用程序Marathon App

时间:2015-02-02 02:20:35

标签: mesos marathon

设置了所有Mesos Master,Slave,ZooKeeper,Marathon 我点击了绿色按钮"创建应用程序"
一旦它在Mesos-Master上运行并且完成的任务状态Fnished 我在哪里可以获得json文件?从哪个文件夹?

1 个答案:

答案 0 :(得分:2)

目前还不清楚你所指的JSON是什么,所以我会回答你想要描述应用程序本身的JSON(1)(由Marathon使用)和你想要的情况。检索应用程序的一些JSON输出(2)。

1)如果您希望获得应用程序定义JSON

您可以从Marathon REST API轻松获取描述Marathon应用程序的JSON,但仅在应用程序仍在运行时。

例如,让我创建一个长时间运行sleep命令的测试应用程序: creating a test application

一旦部署并运行,Marathon UI看起来像这样: marathon UI with running application

我们可以转到<marathon-ip> / v2 / apps端点查看正在运行的应用程序的完整列表(Marathon docs site上提供了这些端点的完整文档): apps endpoint

或者,转到<marathon-ip> / v2 / apps / <app-id>端点(在这种情况下,<app-id>是test-app)将只显示正在运行的应用程序的JSON,尽管更多深度,还有任务信息: apps/app-id endpoint

2)如果您正在寻找刚刚运行的应用程序任务的输出

任务是应用程序的单独实例化,因此如果您告诉Marathon运行应用程序的10个实例,这将显示为10个Mesos任务。

Mesos为每个正在运行的任务和一定数量的已完成任务存储stdout和stderr(我认为最多可完成1,000个已完成的任务)。您可以通过访问Mesos Web控制台并单击相关任务旁边的“Sandbox”链接来查看这些内容。使用本答案第一部分中的示例,我们在此处看到当前正在运行的任务,其旁边有一个Sandbox链接: running task

单击Sandbox链接将我们带到此页面,该页面链接到任务的stderr和stdout输出: running task sandbox

此任务创建的任何其他工作文件也将在此处显示。因此,例如,如果您的应用程序正在生成输出文件,则可以通过此界面访问它们。

单击stdout链接会显示睡眠应用程序的以下stdout输出: running task stdout

(请注意,Mesos command line interface也提供了一种非常简单且开发人员友好的方式来访问各个任务沙箱的stdout,stderr和内容。)

希望这会有所帮助:)。