* Get to grips with Docker Swarm, one of the key components of the Docker ecosystem.
* Optimize Swarm and SwarmKit features for scaling massive applications through containers.
* Learn about Docker's scheduling tricks, high availability, security, and platform scalability.
Docker more » 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.
WHAT YOU WILL LEARN
* Create and manage Swarm Mode clusters of any size
* Get a backstage view of the biggest Swarms ever built : Swarm2k and Swarm3k, with their 2,300 and 4,700 nodes
* Discovery mechanisms and Raft
* Deploy your containerized app on Swarm
* Administer Swarm clusters on AWS, Azure, and DigitalOcean
* Integrate Flocker volumes with Swarm
* Create and manage Swarms on OpenStack Magnum
ABOUT THE AUTHOR
Fabrizio Soppelsa works as an Escalations Engineer for Mirantis Inc., the OpenStack company. Docker activist and advocate since Docker 0.3 and author of several articles on the Docker tools in three languages, he is also a concrete contributor to the projects, especially Machine. He currently lives in Moscow, Russia, where he is the Docker Meetup organizer with his spider Mosha.
I would like to thank ClusterHQ folks for their help on Flocker, especially, Ryan Wallner. the Yandex team and Denis Kutin for having given me a free OpenStack lab on which I could easily access. Mirantis for creating the (I think) best OpenStack distribution. The Docker team and the Docker community, for all the fun.
Chanwit Kaewkasi is an Assistant Professor at the School of Computer Engineering, Suranaree University of Technology, Thailand. Chanwit started contributing to the Docker Swarm project since 0.1 where he co-designed and implemented the strategy filters, the ZooKeeper discovery, and other features. He currently serves as Docker Swarm Maintainer and Docker Captain.
I'd like to thank my wife, Pitchaya, for her encouragement and best support to everything I'm working on, including this book.
Special thanks to the Docker Engineering team for their great software, Suranaree University of Technlogy for being my great workplace, and my parents for their support and lastly, Fabrizio for inviting me to co-author this great book.
TABLE OF CONTENTS
1. Welcome to Docker Swarm
2. Discover the Discovery Services
3. Meeting Docker Swarm Mode
4. Creating a Production-Grade Swarm
5. Administer a Swarm Cluster
6. Deploy Real Applications on Swarm
7. Scaling Up Your Platform
8. Exploring Additional Features of Swarm
9. Securing a Swarm Cluster and the Docker Software Supply Chain
10. Swarm and the Cloud
11. What is next? « less
Distributed Process Coordination
Building distributed applications is difficult enough without having to coordinate the actions that make them work. This practical guide shows how Apache ZooKeeper helps you manage distributed systems, so you can focus mainly on application logic. Even with ZooKeeper, implementing coordination tasks more » is not trivial, but this book provides good practices to give you a head start, and points out caveats that developers and administrators alike need to watch for along the way.
In three separate sections, ZooKeeper contributors Flavio Junqueira and Benjamin Reed introduce the principles of distributed systems, provide ZooKeeper programming techniques, and include the information you need to administer this service. « less