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

Managing your microservice using Marathon's REST API


Marathon's web interface is definitely one of the best user interfaces. It is very intuitive and sophisticated. So far, we have been using the web interface because it was the easiest way to get you up to speed. Using the web interface might not be scalable when you are dealing with hundreds of microservices, though. Mesos and Marathon are now production ready. In fact, a lot of organizations have been using Mesos and Marathon to deploy hundreds of microservices. In this recipe, we will look at how to deploy microservices in Marathon using its REST API. This enables you to implement continuous deployments.

Continuous deployments have been picking up traction lately. Continuous deployment is a process in which you deploy your application to production as soon as it has been checked in, packaged, tested, and validated. Organizations use continuous integration (CI) tools such as Jenkins, Hudson, Bamboo, and Travis CI to automate their deployments...