我有一个mesos和chronos环境,我想使用chronos api来监视作业状态,但是。。。
curl -L http://localhost:8080/leader
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"/>
<title>Error 404 </title>
</head>
<body>
<h2>HTTP ERROR: 404</h2>
<p>Problem accessing /leader. Reason:
<pre> Not Found</pre></p>
<hr /><a href="http://eclipse.org/jetty">Powered by Jetty:// 9.3.z-SNAPSHOT</a><hr/>
</body>
</html>
它返回404给我,有人能有想法吗?其他功能工作正常。
api url是:chronos rest api doc
1条答案
按热度按时间6jjcrrmo1#
您需要确保连接到集群上的正确主机。如果您没有收到响应,可能无法通过localhost或chronos节点访问chronos。
要确定chronos的运行位置,请利用mesos dns。
如果您的服务安装为
chronos
,查找所有tcp端点的srv记录,如下所示:在上面这个例子中,我是通过dc/os universe安装的,它通过主机网络驱动程序自动部署任何可用的端口,但是我通过dns查询看到端口9669上有一个tcp侦听器。从那里你可以通过
curl -L -X GET http://chronos.marathon.mesos:9669/scheduler/jobs
. (注:,chronos文档声明前缀为/v1
但在某些部署中,情况并非如此)。最后,您可能不希望每次都执行srv记录的查找。如果您是通过dc/os universe安装的,那么chronos是通过marathon部署的,但是universe包隐藏了通过dc/os接口定义vip所需的所有配置选项。这可以通过手动转到原始的marathon接口来解决,在那里您可以更改配置(或者通过marathonapi)。