我正在尝试设置一个docker / fig Mesos集群。
我是无花果和Docker的新手。 Docker有很多文档,但是我发现自己在努力了解如何使用无花果。
这是我目前的fig.yaml:
zookeeper:
image: jplock/zookeeper
ports:
- "49181:2181"
mesosMaster:
image: mesosphere/mesos:0.19.1
ports:
- "15050:5050"
links:
- zookeeper:zk
command: mesos-master --zk=zk --work_dir=/var/log --quorum=1
mesosSlave:
image: mesosphere/mesos:0.19.1
links:
- zookeeper:zk
command: mesos-slave --master=zk
谢谢 !
编辑:
多亏了Mark O`Connor的帮助,我已经创建了一个基于docker的mesos实用设置(+ Storm,Chronos等)。
尽情享受,如果您觉得这有用-请贡献:
https://github.com/yaronr/docker-mesos
PS。请+1马克的答案:)
最佳答案
您尚未指出遇到的错误。
这是您使用的图像的文档:
我真正担心这些图像的是它们是不受信任的,并且没有即时可用的资源。
因此,我以中间层github为灵感重新创建了您的示例:
更新示例
更新示例以包括chronos框架
├── build.sh
├── fig.yml
├── mesos
│ └── Dockerfile
├── mesos-chronos
│ └── Dockerfile
├── mesos-master
│ └── Dockerfile
└── mesos-slave
└── Dockerfile
构建基础镜像(只需执行一次)
./build.sh
运行fig启动每个服务的实例:
$ fig up -d
Creating mesos_zk_1...
Creating mesos_master_1...
Creating mesos_slave_1...
Creating mesos_chronos_1...
关于无花果的一件事是您可以扩大奴隶规模
$ fig scale slave=5
Starting mesos_slave_2...
Starting mesos_slave_3...
Starting mesos_slave_4...
Starting mesos_slave_5...
mesos主控制台应显示5个从属服务器正在运行
http://localhost:15050/#/slaves
chronos框架应该正在运行并准备启动任务
http://localhost:14400
图
zk:
image: mesos
command: /usr/share/zookeeper/bin/zkServer.sh start-foreground
master:
build: mesos-master
ports:
- "15050:5050"
links:
- "zk:zookeeper"
slave:
build: mesos-slave
links:
- "zk:zookeeper"
chronos:
build: mesos-chronos
ports:
- "14400:4400"
links:
- "zk:zookeeper"
笔记:
build.sh
docker build --rm=true --tag=mesos mesos
mesos / Dockerfile
FROM ubuntu:14.04
MAINTAINER Mark O'Connor <[email protected]>
RUN echo "deb http://repos.mesosphere.io/ubuntu/ trusty main" > /etc/apt/sources.list.d/mesosphere.list
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv E56151BF
RUN apt-get -y update
RUN apt-get -y install mesos marathon chronos
mesos-master / Dockerfile
FROM mesos
MAINTAINER Mark O'Connor <[email protected]>
EXPOSE 5050
CMD ["--zk=zk://zookeeper:2181/mesos", "--work_dir=/var/lib/mesos", "--quorum=1"]
ENTRYPOINT ["mesos-master"]
mesos-slave / Dockerfile
FROM mesos
MAINTAINER Mark O'Connor <[email protected]>
CMD ["--master=zk://zookeeper:2181/mesos"]
ENTRYPOINT ["mesos-slave"]
mesos-chronos / Dockerfile
FROM mesos
MAINTAINER Mark O'Connor <[email protected]>
RUN echo "zk://zookeeper:2181/mesos" > /etc/mesos/zk
EXPOSE 4400
CMD ["chronos"]
笔记: