Learn More

🟒 Smarter AI 🟒

Compliant LLM Gatewaychevron-right

We use Docker Swarm as a native container orchestration tool that is integrated with the Docker Enginearrow-up-right and allows developers and IT administrators to manage a cluster of Docker hosts as a single virtual system.

This clustering capability, known as Swarm mode, provides features like high availability, fault tolerance, and automatic load balancing for containerized applications across multiple machines.

Key Concepts:

A Docker Swarm is comprised of the following key components:

  • Nodes Physical or virtual machines running the Docker application that have joined the cluster. Nodes can function as either managers or workers.

    • Manager Nodes These nodes handle cluster management, orchestrate services, maintain the desired state of the system, and dispatch tasks to worker nodes. For high availability, it is recommended to have multiple manager nodes, typically three or five.

    • Worker Nodes These nodes receive and execute tasks assigned by the manager nodes.

  • Services and Tasks A service defines the desired state of an application, such as the container image to use, the commands to run, and the number of replicas required. A task is a single instance of a container that runs on a worker node to fulfill the service definition.

  • Load Balancing Swarm mode provides built-in, automatic load balancing to distribute incoming requests evenly across the running containers of a service.

  • Overlay Networking Swarm automatically sets up an overlay network to facilitate communication between containers across different nodes in the cluster.

Why Use Docker Swarm?

Docker Swarm offers several benefits, particularly for most deployment configurations:

  • Simplicity It is built directly into the Docker CLI and API, so users already familiar with Docker can easily transition to Swarm mode without learning an entirely new set of tools or a steep learning curve like with Kubernetes.

  • High Availability The system uses a declarative model and desired state reconciliation, meaning if a node or container fails, the manager automatically creates a new one to replace it on an available, healthy node.

  • Rapid Deployment It allows for quick setup and configuration, enabling teams to go from a single container setup to a scaled, clustered environment in minutes.

  • Security Communication between nodes is secured by default using mutual Transport Layer Security (TLS) authentication and encryption.

For ease of use and rapid deployment for most of our PaaS workloads, Docker Swarm remains "the" solution for us.

Last updated