Overview
This book explores the practices and tools required to run a Swarm cluster. We'll go beyond a simple deployment. We'll explore how to create a Continuous Deployment process. We'll set up multiple clusters. One will be dedicated to testing and the other for production. We'll see how to accomplish zero-downtime deployments, what to do in case of a failover, how to run services at scale, how to monitor the systems, and how to make it heal itself. We'll explore the processes that will allow us to run the clusters on a laptop (for demo purposes) as well as on different providers. I'll try to cover as many different hosting solutions as possible. However, time and space are limited, and the one you use (be it public or on-premise) might not be one of them. Fear not! The processes, the tools, and the practices can be easily applied to almost any. As always, this book is very hands-on oriented, but the goal is not to master a particular set of tools but to learn the logic behind them so that you can apply it to your job no matter whether your choice ends up being different.
This book does not make The DevOps 2.0 Toolkit (https://www.amazon.com/dp/B01BJ4V66M)obsolete. I think that the logic behind it will continue being valid for a while longer. The DevOps 2.1 Toolkit builds on top of it. It goes deeper into some of the subjects explored before and explains others that could not fit in 2.0. While I did my best to write this book in a way that prior knowledge is not required, I strongly recommend starting with The DevOps 2.0 Toolkit (https://www.amazon.com/dp/B01BJ4V66M). The first book in the series sets the stage for this one as well as those that will come afterward. Please consider this book as the second episode in The DevOps Toolkit Series. The first few chapters might, on the first look, seem repetitive to the readers of The DevOps 2.0 Toolkit. Never the less, they are important because they unravel some of the problems we'll face when working inside a cluster. They set the stage for the chapters that follow. While you might be tempted to skip them, my recommendation is to read everything. As in any good story, the start sets the stage, the middle develops the story, and the end reveals an unexpected outcome. Some of the theory will be the same as described in The DevOps 2.0 Toolkit. In such cases, I will clearly indicate it and let you choose whether to skip it or read it as a way to refresh your memory.
While there will be a lot of theory, this is a hands-on book. You won't be able to complete it by reading it in a metro on the way to work. You'll have to read this book while in front of a computer getting your hands dirty. Eventually, you might get stuck and in need of help. Or you might want to write a review or comment on the book's content. Please post your thoughts on The DevOps 2.1 Toolkit channel in Disqus (https://disqus.com/home/channel/thedevops21toolkit/). If you prefer a more direct communication, please join the DevOps2.0 (http://slack.devops20toolkit.com/) Slack channel. All the books I wrote are very dear to me, and I want you to have a good experience reading them. Part of that experience is the option to reach out to me. Don't be shy.
Please note that this, just as the previous book, is self-published. I believe that having no intermediaries between the writer and the reader is the best way to go. It allows me to write faster, update the book more frequently, and have a more direct communication with you. Your feedback is part of the process. No matter whether you purchased the book while only a few or all chapters were written, the idea is that it will never be truly finished. As time passes, it will require updates so that it is aligned with the change in technology or processes. When possible, I will try to keep it up to date and release updates whenever that makes sense. Eventually, things might change so much that updates are not a good option anymore, and that will be a sign that a whole new book is required. As long as I continue getting your support, I will keep writing.