The DevOps 2.1 Toolkit: Docker Swarm
图书信息
| 作者 | Viktor Farcic |
| 出版社 | Packt Publishing |
| ISBN | 9781787280601 |
| 出版时间 | 2017-05-10 |
| 字数 | 57.0万 |
| 分类 | 进口书,外文原版书,电脑,网络 |
读书简介
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.
目录
Title Page
Copyright
Credits
About the Author
www.PacktPub.com
Why subscribe?
Customer Feedback
Preface
Overview
Audience
Continuous Integration with Docker Containers
Defining a fully Dockerized manual Continuous Integration flow
Running unit tests and building service binary
Building service images
Running staging tests
Pushing images to the registry
Setting Up and Operating a Swarm Cluster
Scalability
Axis scaling
X-axis scaling
Y-axis scaling
Z-axis scaling
Clustering
Docker Swarm Mode
Setting up a Swarm cluster
Deploying services to the Swarm cluster
Scaling services
Failover
What now?
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
Defining the Continuous Delivery environment
Setting up Continuous Delivery clusters
Using node labels to constrain services
Creating services
Walking through Continuous Delivery steps
Walking the extra mile from Continuous Delivery to Continuous Deployment
What now?
Automating Continuous Deployment Flow with Jenkins
Jenkins architecture
Production environment setup
Jenkins service
Jenkins failover
Jenkins agent
Creating services in production and production-like environments
Automating Continuous Deployment flow with Jenkins
Creating Jenkins Pipeline jobs
Defining Pipeline nodes
Defining Pipeline stages
Defining Pipeline steps
What now?
Exploring Docker Remote API
Setting up the environment
Operating Docker Swarm through the Docker Remote API
Using Docker Remote API to automate proxy configuration
Combining the Swarm listener with the proxy
Automatically reconfiguring the proxy
Removing a service from the proxy
What now?
Using Docker Stack and Compose YAML Files to Deploy Swarm Services
Swarm cluster setup
Creating Swarm services through Docker stack commands
Deploying more stacks
To stack or not to stack
Cleanup
Defining Logging Strategy
The need for centralized logging
Setting up ElasticSearch as the logging database
Setting up LogStash as the logs parser and forwarder
Forwarding logs from all containers running anywhere inside a Swarm cluster
Exploring logs
Discussing other logging solutions
What now?
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
What now?
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
Using Packer to create Amazon Machine Images
Using Terraform to create a Swarm cluster in AWS
Choosing the right tools to create and manage Swarm clusters in AWS
To Docker Machine or not to Docker Machine?
To Docker for AWS or not to Docker for AWS?
To Terraform or not to Terraform?
The final verdict
Creating and Managing a Docker Swarm Cluster in DigitalOcean
Setting up the environment variables
Setting up a Swarm cluster with Docker Machine and DigitalOcean API
Setting up a Swarm cluster with Packer and Terraform
Using Packer to create DigitalOcean snapshots
Using Terraform to create a Swarm cluster in DigitalOcean
Choosing the right tools to create and manage Swarm clusters in DigitalOcean
To Docker Machine or not to Docker Machine?
To Terraform or not to Terraform?
The final verdict
To DigitalOcean or not to 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
Creating secrets
Consuming secrets
A real-world example of using secrets
Using secrets with Docker Compose
Common ways to use secrets
What now?
Monitor Your GitHub Repos with Docker and Prometheus
Docker, Prometheus, and Grafana
Getting started
Configuration
Post configuration
Install dashboard
Conclusion
About the author
- 特征工程入门与实践((土)锡南·厄兹代米尔)
- “新时代万有文库”公羊传(刘跃进)
- 不要在草台班子里拼命努力(HCJ)
- 2020年江西省军转干部安置考试《法律基础知识》考点手册(圣才电子书)
- 软装设计师手册(简明敏)
- 间苗(何金银)
- 一本书看懂电影之《公民凯恩》(张帆)
- Wasps - Evil events from evil causes spring(Aristophanes .)
