-
Notifications
You must be signed in to change notification settings - Fork 40
Swarm mode
wayerr edited this page May 4, 2017
·
22 revisions
Swarm mode is supported by docker engine at 1.12 version. Now support of it in our system is under development.
https://github.com/codeabovelab/haven-platform/labels/swarm-mode
- implement docker DTOs
- extends DockerService for new api methods
- make new cluster kind and do some refactoring. Swarm-mode define allow to orchestrate only through master-nodes (note that it can be more that one), but also allow to change it nodes by election. Current RealCluster does not support this.
- make new api: swarm-mode use tasks (conatainer) and services (group of containers with same run args) and not support old containers
- support for
- scaling
- rolling update
- Engine allow to create cluster with one manager node, allow add second manager node, but broken when we remove newly added node (need investigation and workaround)
- Cluster has ID, and does not allow add any custom labels - we can not store additional info
- Node id will be generated at join, and rejoined node has new ID - so cluster allow address node by name (need check behavior of adding two nodes with same host name to cluster). Also cluster allow to join multiple nodes with same name.
- Sequential join-leave from same node cause many records in
docker node ls
:
# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
158ap65jnx5ywrlyalwd84ibj rad-nb2 Down Active
5cm235g57ulwxnb2g5vy206i8 rad-nb2 Ready Active
7tyuwcf70cbv4cfq21e2vcbln * rad-nb Ready Active Leader
cxff8xwza51a3zo2wvizweezu rad-nb2 Ready Active
f3ol45mrt4p5ggfem35c6d8bs rad-nb2 Ready Active
It require manual removing of nodes. Related bug: https://github.com/docker/docker/issues/24088
- sometimes ports may be hidden: https://github.com/docker/docker/issues/30232
- no events https://github.com/docker/docker/issues/23827
- docker plans to implement api for Prometeus metric system https://github.com/docker/docker/issues/27307