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

Provisioning the infrastructure with belt


First, we created a cluster template named swarm2k for DigitalOcean with the following command:

$ belt cluster new --driver digitalocean swarm2k

The preceding command creates a configuration template file in the current directory called .belt/swarm2k/config.yml. This was our starting point to define other attributes.

We checked if our cluster was defined by running the following command:

$ belt cluster ls
CLUSTER       ACTIVE    LEADER    MASTERS    #NODES
swarm2k       -         -         -          0 / 0

With the use command, we can switch and used the available swarm2k clusters, as follows:

$ belt use swarm2k
swarm2k

At this point, we refined the swarm2k template's attributes.

By setting  the DigitalOcean's instance region to be sgp1 by issuing the following command:

$ belt cluster update region=sgp1

Belt required to define all necessary values with this command. Here's a list of the required template keys for the DigitalOcean driver that we specified...