Book description
Viktor Farcic's latest book, The DevOps 2.1 Toolkit: Docker Swarm, shows you how to successfully integrate Docker Swarm into your DevOps toolset.
About This Book
- Expand your DevOps Toolkit with the DevOps thought leader, Viktor Farcic
- Build, test, deploy, and monitor services inside Docker Swarm clusters
- Translate your understanding to different hosting providers like AWS, Azure, and DigitalOcean
- Go beyond simple deployment to explore how to create a continuous deployment process
- Extend the deep understanding you gained from Viktor's DevOps 2.0 Toolkit book
Who This Book Is For
This book is for professionals interested in the full microservices life cycle combined with continuous deployment and containers. Target audience could be architects who want to know how to design their systems around microservices. It could be DevOps wanting to know how to apply modern configuration management practices and continuously deploy applications packed in containers. It is for developers who would like to take the process back into their hands as well as for managers who would like to gain a better understanding of the process used to deliver software from the beginning to the end. This book is for everyone wanting to know more about the software development life cycle starting from requirements and design, through the development and testing all the way until deployment and post-deployment phases. We'll create the processes taking into account the best practices developed by and for some of the biggest companies.
What You Will Learn
- Learn all aspects of Docker Swarm from building, testing, deploying, and monitoring services inside Docker Swarm clusters, available since Docker 1.12.
- Master the deeper logic of DevOps with Viktor, so that you can successfully apply that logic across any specific set of tools you're working with.
- Translate a deep understanding to different hosting providers like AWS, Azure, DigitalOcean, among others.
- You'll go beyond simple deployment: you will explore with Viktor how to create a continuous deployment process. Accomplish zero-downtime deployments, and what to do in case of a failover.
- Know how to run services at scale, how to monitor the systems, and how to make it heal itself.
In Detail
Viktor Farcic's latest book, The DevOps 2.1 Toolkit: Docker Swarm, takes you deeper into one of the major subjects of his international best seller, The DevOps 2.0 Toolkit, and shows you how to successfully integrate Docker Swarm into your DevOps toolset.
Viktor shares with you his expert knowledge in all aspects of building, testing, deploying, and monitoring services inside Docker Swarm clusters. You'll go through all the tools required for running a cluster. You'll travel through the whole process with clusters running locally on a laptop. Once you're confident with that outcome, Viktor shows you how to translate your experience to different hosting providers like AWS, Azure, and DigitalOcean.
Viktor has updated his DevOps 2.0 framework in this book to use the latest and greatest features and techniques introduced in Docker. We'll go through many practices and even more tools. 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 on the metro on your way to work. You'll have to read this book while in front of the computer and get your hands dirty.
Style and approach
We'll go through many practices and even more tools. While there will be a lot of theory, this is a hands-on book. You'll have to read this book while in front of the computer and get your hands dirty. The goal is not to master one particular set of tools, but to learn the logic behind them so that you can apply it to your job in various contexts.
Table of contents
- Preface
- Continuous Integration with Docker Containers
- Setting Up and Operating a Swarm Cluster
-
Docker Swarm Networking and Reverse Proxy
- Setting up a cluster
- Requirements of secured and fault tolerant services running with high availability
- Running a database in isolation
- Running a service through a reverse proxy
- Creating a reverse proxy service in charge of routing requests depending on their base URLs
- Load balancing requests across all instances of a service
- What now?
-
Service Discovery inside a Swarm Cluster
- What would Docker Swarm look like without?
- What does standalone Docker Swarm look like with service discovery?
- Service discovery in the Swarm cluster
- Do we need service discovery?
- Setting up Consul as service registry inside a Swarm cluster
- Problems when scaling stateful instances
- Using service registry to store the state
- Discovering addresses of all instances that form a service
- Using service registry or key value store to store service state
- What now?
- Continuous Delivery and Deployment with Docker Containers
- Automating Continuous Deployment Flow with Jenkins
- Exploring Docker Remote API
- Using Docker Stack and Compose YAML Files to Deploy Swarm Services
- Defining Logging Strategy
-
Collecting Metrics and Monitoring the Cluster
- The requirements of a cluster monitoring system
- Choosing the right database to store system metrics
- Creating the cluster
- Prometheus metrics
- Exporting system wide metrics
- Scraping, querying, and visualizing Prometheus metrics
- Using Grafana to create dashboards
- Exploring Docker Swarm and container overview dashboard in Grafana
- Adjusting services through dashboard metrics
- Monitoring best practices
- What now?
- Embracing Destruction: Pets versus Cattle
-
Creating and Managing a Docker Swarm Cluster in Amazon Web Services
- Installing AWS CLI and setting up the environment variables
- Setting up a Swarm cluster with Docker Machine and AWS CLI
- Setting up a Swarm cluster with Docker for AWS
- Automatically setting up a Swarm cluster with Docker for AWS
- Setting up a Swarm cluster with Packer and Terraform
- Choosing the right tools to create and manage Swarm clusters in AWS
- Creating and Managing a Docker Swarm Cluster in DigitalOcean
-
Creating and Managing Stateful Services in a Swarm Cluster
- Exploring the twelve-factor app methodology
- Setting up a Swarm cluster and the proxy
- Running stateful services without data persistence
- Persisting stateful services on the host
- Persisting stateful services on a Network File System
- Data volume orchestration
- Persisting stateful services with REX-Ray
- Choosing the persistence method for stateful services
- Adding REX-Ray to packer and terraform
- Persisting stateful services without replication
- Persisting stateful services with synchronization and replication
- Persisting docker flow proxy state
- Persisting MongoDB state
- Initializing MongoDB replica set through a swarm service
- What now?
- Managing Secrets in Docker Swarm Clusters
- Monitor Your GitHub Repos with Docker and Prometheus
Product information
- Title: The DevOps 2.1 Toolkit: Docker Swarm
- Author(s):
- Release date: May 2017
- Publisher(s): Packt Publishing
- ISBN: 9781787289703
You might also like
book
Native Docker Clustering with Swarm
Deploy, configure, and run clusters of Docker containers with Swarm About This Book Get to grips …
book
Extending Docker
Master the art of making Docker more extensible, composable, and modular by leveraging plugins and other …
book
Docker Orchestration
A concise, fast-paced guide to orchestrating and deploying scalable services with Docker About This Book Explore …
book
The DevOps 2.3 Toolkit
About This Book Learn from an expert on how to use Kubernetes, the most adopted container …