Use the many types of tools required to navigate and maintain a microservice ecosystem. This book examines what is normally a complex system of interconnected services and clarifies them one at a time, first examining theoretical requirements then looking at concrete tools, configuration, and workflows.
Building out these systems includes many concerns such as containerization, container orchestration, build pipelines and continuous integration solutions, automated testing, service discovery, logging and analytics. You will examine each of these tools and understand how they can be combined within an organization. You will design an automated build pipeline from Pull Request to container deployment, understand how to achieve High Availability and monitor application health with Service Discovery, and learn how to collaborate with other teams, write documentation, and describe bugs.
Covering use of Jenkins, Docker, Kubernetes, the ELK stack (Elasticsearch, Logstash, and Kibana), and StatsD and Grafana for analytics, you will build on your existing knowledge of Service-Oriented Architecture and gain an advanced, practical understanding of everything from infrastructure development to team collaboration.
What You'll Learn
- Design an API to be convenient for developers to consume.
- Deploy dynamic instances of Microservices and allow then to discover each other.
- Track the health of a Microservice and be notified in case of degraded performance.
- Write effective documentation and communicate efficiently with other teams.
Who This Book Is For
- Those who would like a better understanding of System Oriented Architecture.
- Those who would like to break a monolith into smaller Microservices.
- Those who are familiar with Microservices and would like a better understanding of peripheral technologies.
Table of Contents
Chapter 1: Introduction
Chapter 2: HTTP API Design
Chapter 3: Deployments
Chapter 4: Service Discovery
Chapter 5: Service State
Chapter 6: Consumers
Chapter 7: Monitoring
Chapter 8: Documentation
Chapter 9: Collaboration