Konfigurowanie środowiska Docker / fig Mesos
Próbuję założyć klaster docker / fig Mesos. Jestem nowy w fig i Docker. Docker ma mnóstwo dokumentacji, ale trudno mi zrozumieć, jak pracować z rys.
Oto moja figa.yaml w tej chwili: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
Dzięki !
Edit:
Dzięki pomocy Marka O ' Connora stworzyłem działającą konfigurację Mezos opartą na dockerze (+ storm, chronos i wiele innych).
Enjoy, a jeśli uznasz to za przydatne-proszę contribute: https://github.com/yaronr/docker-mesos
PS. Proszę o odpowiedź + 1 Marka:)
1 answers
Nie wskazałeś błędów, które wystąpiły.
To jest dokumentacja dla używanego obrazu:
Baza mezosfery z wykorzystaniem pakietów mezosfery z https://mesosphere.io/downloads / . nie uruchamia Mezos, Proszę użyć Mezos-Mistrz i Mezos - niewolnik.
To, co naprawdę martwiło mnie tymi obrazami, to to, że były niezaufane i nie było od razu dostępne żadne źródło.
Więc odtworzyłem twój przykład używając Mesosphere github jako inspiracji:
Zaktualizowany Przykład
Przykład zaktualizowany o framework chronos
├── build.sh
├── fig.yml
├── mesos
│ └── Dockerfile
├── mesos-chronos
│ └── Dockerfile
├── mesos-master
│ └── Dockerfile
└── mesos-slave
└── Dockerfile
Zbuduj obraz bazowy (trzeba to zrobić tylko raz)
./build.sh
Uruchom figa, aby uruchomić instancję każdej usługi:
$ fig up -d
Creating mesos_zk_1...
Creating mesos_master_1...
Creating mesos_slave_1...
Creating mesos_chronos_1...
Jedna przydatna rzecz o rys. jest to, że można skalować w górę niewolników
$ fig scale slave=5
Starting mesos_slave_2...
Starting mesos_slave_3...
Starting mesos_slave_4...
Starting mesos_slave_5...
Konsola Master mesos powinna pokazywać 5 uruchomionych niewolników
http://localhost:15050/#/slaves
[12]}i chronos framework powinien być uruchomiony i gotowy do uruchamiania zadań
http://localhost:14400
Rys.yml
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"
Uwagi:
- tylko jedna instancja zookeeper potrzebna do tego przykład
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"]
Mezos-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"]
Uwagi:
- linia poleceń "chronos" jest skonfigurowana przy użyciu plików.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-11 01:56:47