您需要确保连接到集群上的正确主机。鉴于您没有收到响应,很可能无法通过 localhost 或 chronos-node 访问 chronos。
要确定 chronos 在哪里运行,请利用mesos dns。
如果您的服务安装为chronos
,请查找所有 TCP 端点的 SRV 记录,如下所示:
/# dig _chronos._tcp.marathon.mesos SRV
; <<>> DiG 9.12.1-P2 <<>> _chronos._tcp.marathon.mesos SRV
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39584
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; QUESTION SECTION:
;_chronos._tcp.marathon.mesos. IN SRV
;; ANSWER SECTION:
_chronos._tcp.marathon.mesos. 60 IN SRV 0 0 9669 chronos-jjmux-s11.marathon.mesos.
;; ADDITIONAL SECTION:
chronos-jjmux-s11.marathon.mesos. 60 IN A 10.0.2.15
;; Query time: 1 msec
;; SERVER: 198.51.100.1#53(198.51.100.1)
;; WHEN: Tue Oct 02 22:48:02 UTC 2018
;; MSG SIZE rcvd: 114
在上面的这种情况下,我通过 DC/OS Universe 安装,它通过主机网络驱动程序使用任何可用端口自动部署,但是我通过 DNS 查询看到端口 9669 上有一个 tcp 侦听器。从那里您可以通过 收到回复curl -L -X GET http://chronos.marathon.mesos:9669/scheduler/jobs
。(注意:chronos 文档声明前缀为/v1
,但在某些部署中,情况并非如此)。
最后,您可能不想每次都查找 SRV 记录。如果您通过 DC/OS Universe 安装,则通过 marathon 部署 chronos,但是 Universe 包隐藏了通过 DC/OS 界面定义 VIP 所需的所有配置选项。这可以通过手动转到原始 marathon 界面来解决,您可以在其中更改配置(或通过 marathon api)。