Book Image

Native Docker Clustering with Swarm

By : Fabrizio Soppelsa, Chanwit Kaewkasi
Book Image

Native Docker Clustering with Swarm

By: Fabrizio Soppelsa, Chanwit Kaewkasi

Overview of this book

Docker Swarm serves as one of the crucial components of the Docker ecosystem and offers a native solution for you to orchestrate containers. It’s turning out to be one of the preferred choices for Docker clustering thanks to its recent improvements. This book covers Swarm, Swarm Mode, and SwarmKit. It gives you a guided tour on how Swarm works and how to work with Swarm. It describes how to set up local test installations and then moves to huge distributed infrastructures. You will be shown how Swarm works internally, what’s new in Swarmkit, how to automate big Swarm deployments, and how to configure and operate a Swarm cluster on the public and private cloud. This book will teach you how to meet the challenge of deploying massive production-ready applications and a huge number of containers on Swarm. You'll also cover advanced topics that include volumes, scheduling, a Libnetwork deep dive, security, and platform scalability.
Table of Contents (18 chapters)
Native Docker Clustering with Swarm
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Dedication
Preface

Raft


Consensus is an algorithm in distributed systems that forces agents in the system to agree on consistent values and elect a leader.

Some well-known consensus algorithms are Paxos and Raft. Paxos and Raft deliver similar performances but Raft is less complex, easier to understand, and therefore becoming very popular in distributed store implementations.

As consensus algorithms, Consul and Etcd implement Raft while ZooKeeper implements Paxos. The CoreOS Etcd Go library, implementing Raft, is included into SwarmKit and Swarm Mode as a dependency (in vendor/), so in this book we'll focus more on it.

Raft is described in detail in the Ongaro, Ousterhout paper, and it is available at https://ramcloud.stanford.edu/raft.pdf. In the upcoming section we'll summarize its basic concepts.

Raft theory

Raft was designed with simplicity in mind and compared to Paxos, it truly achieves this goal (there are even academic publications demonstrating this). For our purpose, the main difference between Raft and...