Skip to content

Docker Swarm Introduction

Tanveer Alam edited this page Jan 22, 2019 · 4 revisions

Docker Swarm

swarm topology

Docker Swarm enables to take multiple nodes and collect there resources into one cluster or swarm.

They work in a Manager-Worker Architecture fashion.

  • Cluster management integrated with Docker Engine - Docker CLI allows you to create a swarm of Docker Engines where you can deploy your application. No additional software needed.

  • Decentralized design - Docker Engine handles specialization at runtime, allowing you to deploy an entire swarm from a single disk image.

  • Declarative service model - Allows you to define the desired state of the various services in your application stack.

  • Scaling - You can scale up or down and the swarm manager automatically adapts by adding or removing tasks to maintain the desired state.

  • Desired state reconciliation - The swarm manager constantly monitors the cluster state. It will recognize any difference between the actual state and the desired state and act to reconcile the two.

  • Multi-host networking - Swarm manager will automatically assign addresses to containers on an overlay network when the container is initialized or updated.

  • Service Discovery - Each service in the swarm is assigned a unique DNS name.

  • Load Balancing - Ports for services can be exposed to an external load balancer and internally the swarm lets you configure how to distribute service containers between your worker nodes.

  • Secure by default - Each worker node in the swarm enforces TLS mutual authentication and encryption between itself and the nodes.(Both option self signed certificates or custom certificates)

  • Rolling Updates - Swarm lets you control the delay between service deployments to different sets of nodes. If something goes wrong, you can roll back to a previous state.

Container's World



Clone this wiki locally