我已经建立了Mesos Cluster,包括Marathon& Chronos使用Docker镜像为每个服务。
我正在使用的Docker镜像如下;
ZooKeeper在2181端口运行,Mesos Master在5050上运行,Mesos Slave在5051上运行,马拉松在8088上运行,Chronos在8080上运行。
我想做的是;在Marathon&上运行Docker容器的Chronos。
Marathon成功运行Docker容器作为其应用程序。
但 Chronos不会运行任何作业。即使作业不在Docker中。
Chronos Job的配置我尝试启动的是;
{
"schedule": "R/2015-05-28T10:16:30Z/PT2M",
"name": "simplejob",
"cpus": "0.5",
"mem": "512",
"command": "while sleep 10; do date -u %T; done"
}
作业在Chronos上注册但从未发布过。
我运行Chronos容器的命令如下:
docker run -p 8080:8080 -e LIBPROCESS_PORT=5050 tomaskral/chronos:2.3.0-mesos0.21.0 --http_port 8080 --master zk://<master-hostname>:2181/mesos --zk_hosts zk://<master-hostname>:2181/mesos
答案 0 :(得分:4)
将Chronos命令行中的--zk_hosts zk://<master-hostname>:2181/mesos
更改为--zk_hosts <master-hostname>:2181
,因为这应该是zk node:port对的列表,以便Chronos可以将自己的状态存储在{{1}中znode(与/chronos
znode相对,Mesos存储其主要主信息。)