The DevOps 2.0 Toolkit
The DevOps 2.0 Toolkit
Free!
Minimum
$0.00
Suggested
The DevOps 2.0 Toolkit

This book is 100% complete

Completed on 2018-07-19

About the Book

This book is based on very old technology and the code behind it is not maintained anymore.

This book is about different techniques that help us architect software in a better and more efficient way with microservices packed as immutable containers, tested and deployed continuously to servers that are automatically provisioned with configuration management tools. It's about fast, reliable and continuous deployments with zero-downtime and ability to roll-back. It's about scaling to any number of servers, design of self-healing systems capable of recuperation from both hardware and software failures and about centralized logging and monitoring of the cluster.In other words, this book envelops the whole microservices development and deployment lifecycle using some of the latest and greatest practices and tools. We'll use Docker, Kubernetes, Ansible, Ubuntu, Docker Swarm and Docker Compose, Consul, etcd, Registrator, confd, and so on. We'll go through many practices and even more tools. Finally, 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 a way to work. You'll have to read this book while in front of the computer and get your hands dirty.

Table of Contents

  • I Am Very Old!
  • Preface
  • Overview
  • Audience
  • About the Author
  • The DevOps Ideal
    • Continuous Integration, Delivery, and Deployment
    • The Light at the End of the Deployment Pipeline
  • The Implementation Breakthrough: Continuous Deployment, Microservices, and Containers
    • Continuous Integration
    • Continuous Delivery and Deployment
    • Microservices
    • Containers
    • The Three Musketeers: Synergy of Continuous Deployment, Microservices, and Containers
  • System Architecture
    • Monolithic Applications
    • Services Split Horizontally
    • Microservices
    • Monolithic Applications and Microservices Compared
    • Deployment Strategies
    • Microservices Best Practices
    • Final Thoughts
  • Setting Up the Development Environment With Vagrant and Docker
    • Combining Microservice Architecture and Container Technology
    • Vagrant and Docker
    • Development Environment Setup
  • Implementation of the Deployment Pipeline: Initial Stages
    • Spinning Up the Continuous Deployment Virtual Machine
    • Deployment Pipeline Steps
    • The Checklist
  • Configuration Management in the Docker World
    • CFEngine
    • Puppet
    • Chef
    • Ansible
    • Final Thoughts
    • Configuring the Production Environment
    • Setting Up the Ansible Playbook
  • Implementation of the Deployment Pipeline: Intermediate Stages
    • Deploying Containers to the Production Server
    • Docker UI
    • The Checklist
  • Service Discovery: The Key to Distributed Services
    • Service Registry
    • Service Registration
    • Service Discovery
    • Service Discovery Tools
    • Manual Configuration
    • Zookeeper
    • etcd
    • Consul
    • Service Discovery Tools Compared
  • Proxy Services
    • Reverse Proxy Service
    • How Can Proxy Service Help Our Project?
    • nginx
    • HAProxy
    • Proxy Tools Compared
  • Implementation of the Deployment Pipeline: The Late Stages
    • Starting the Containers
    • Integrating the Service
    • Running Post-Deployment Tests
    • Pushing the Tests Container to the Registry
    • The Checklist
  • Automating Implementation of the Deployment Pipeline
    • Deployment Pipeline Steps
    • The Playbook and the Role
    • Pre-Deployment Tasks
    • Deployment Tasks
    • Post-Deployment Tasks
    • Running the Automated Deployment Pipeline
  • Continuous Integration (CI), Delivery and Deployment (CD) Tools
    • CI/CD Tools Compared
    • The Short History of CI/CD Tools
    • Jenkins
    • Final Thoughts
  • Blue-Green Deployment
    • The Blue-Green Deployment Process
    • Manually Running the Blue-Green Deployment
    • Automating the Blue-Green Deployment with Jenkins Workflow
  • Clustering And Scaling Services
    • Scalability
    • Axis Scaling
    • Clustering
    • Docker Clustering Tools Compared: Kubernetes vs Docker Swarm vs Mesos
    • Docker Swarm Walkthrough
    • Deploying with Docker Swarm Without Links
    • Scaling Services with Docker Swarm
    • Scheduling Containers Depending on Reserved CPUs and Memory
    • Automating Deployment With Docker Swarm and Ansible
  • Self-Healing Systems
    • Self-Healing Levels and Types
    • Self-Healing Architecture
    • Self-Healing with Docker, Consul Watches, and Jenkins
    • Combining On-Premise with Cloud Nodes
    • Self-Healing Summary (So Far)
  • Centralized Logging and Monitoring
    • The Need for Centralized Logging
    • Sending Log Entries to ElasticSearch
    • Parsing Log Entries
    • Sending Log Entries to a Central LogStash Instance
    • Sending Docker Log Entries to a Central LogStash Instance
    • Self-Healing Based on Software Data
    • Logging Hardware Status
    • Self-Healing Based on Hardware Data
    • Final Thoughts
  • Farewell

About the Author

Viktor Farcic
Viktor Farcic

Viktor Farcic is a Senior Consultant at CloudBees and a member of the Docker Captains group.

He coded using a plethora of languages starting with Pascal (yes, he is old), Basic (before it got Visual prefix), ASP (before it got .Net suffix), C, C++, Perl, Python, ASP.Net, Visual Basic, C#, JavaScript, Java, Scala, etc. He never worked with Fortran. His current favourite is Go.

His big passions are Microservices, Continuous Deployment and Test-Driven Development (TDD).

He often speaks at community gatherings and conferences.

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms...

Write and Publish on Leanpub

Authors and publishers use Leanpub to publish amazing in-progress and completed ebooks, just like this one. You can use Leanpub to write, publish and sell your book as well! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub