Book Image

Microservices Deployment Cookbook

By : Vikram Murugesan
Book Image

Microservices Deployment Cookbook

By: Vikram Murugesan

Overview of this book

This book will help any team or organization understand, deploy, and manage microservices at scale. It is driven by a sample application, helping you gradually build a complete microservice-based ecosystem. Rather than just focusing on writing a microservice, this book addresses various other microservice-related solutions: deployments, clustering, load balancing, logging, streaming, and monitoring. The initial chapters offer insights into how web and enterprise apps can be migrated to scalable microservices. Moving on, you’ll see how to Dockerize your application so that it is ready to be shipped and deployed. We will look at how to deploy microservices on Mesos and Marathon and will also deploy microservices on Kubernetes. Next, you will implement service discovery and load balancing for your microservices. We’ll also show you how to build asynchronous streaming systems using Kafka Streams and Apache Spark. Finally, we wind up by aggregating your logs in Kafka, creating your own metrics, and monitoring the metrics for the microservice.
Table of Contents (15 chapters)
Microservices Deployment Cookbook
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Installing and setting up Docker


Before we look at the recipe, let's quickly talk about why we will need Docker installed. Docker has been one of the most popular container frameworks and has picked up traction in the past few years. In fact, there are a lot many organizations that completely depend on Docker for shipping and deploying their applications. Gone are the days when Developers, Build Meisters, Infrastructure Engineers, and Deployment Coordinators would deploy any new code and infrastructure every release in the middle of the night, making sure the deployment of the new code or infrastructure does not affect existing users. With frameworks such as Docker, Mesos, and Kubernetes, deployments have become so much easier than how they were a few years back.

Let's say you would like to deploy a web application to Tomcat. There are definitely some prerequisites; for instance, you will need at least a four-core machine with 16 GB memory and 100 GB disk space. And after that, you have to...