Traefik API Gateway for Microservices: With Java and Python Microservices Deployed in Kubernetes

Traefik API Gateway for Microservices: With Java and Python Microservices Deployed in Kubernetes

Traefik API Gateway for Microservices: With Java and Python Microservices Deployed in Kubernetes

Traefik API Gateway for Microservices: With Java and Python Microservices Deployed in Kubernetes

Paperback(1st ed.)

$64.99 
  • SHIP THIS ITEM
    Qualifies for Free Shipping
  • PICK UP IN STORE
    Check Availability at Nearby Stores

Related collections and offers


Overview

Use Traefik as a load balancer or a reverse proxy for microservices-based architecture. This book covers Traefik integration for microservices architecture concerns such as service discovery, telemetry, and resiliency.

The book focuses on building an in-depth understanding of Traefik. It starts with the fundamentals of Traefik, including different load balancing algorithms available, and failure handling for application resiliency. Examples are included for the failure scenarios. TLS support is explained, including scenarios of TLS termination and TLS forwarding. Traefik supports TLS termination using Let's Encrypt. Traefik deployment in prominent microservices ecosystems is discussed, including Docker and Kubernetes.

Traefik is a language-neutral component. This book presents examples of its deployment with Java-based microservices. The examples in the book show Traefik integration with Jaeger/Zipkin, Prometheus, Grafana, and FluentD. Also covered is Traefik for Python-based services and Java-based services deployed in the Kubernetes cluster. By the end of the book, you will confidently know how to deploy and integrate Traefik into prominent microservices ecosystems.



What You Will Learn



• Understand Traefik basics and its components
• Explore different load balancing scenarios and TLS termination
• Configure service discovery, circuit breakers, timeouts, and throttling
• Monitor Traefik using Prometheus and request tracing


Who This Book Is For

Developers and project managers who have developed microservices and are deploying them in cloud and on-premise environments with Kubernetes or Docker. The book is not specifically written for any particular programming language. The examples presented use Java or Python.




Product Details

ISBN-13: 9781484263754
Publisher: Apress
Publication date: 11/28/2020
Edition description: 1st ed.
Pages: 255
Product dimensions: 6.10(w) x 9.25(h) x (d)

About the Author

Rahul Sharma is a seasoned Java developer with over 15 years of industry experience. In his career he has worked with companies of various sizes from enterprises to startups. During this time he has developed and managed microservices on the cloud (AWS/GCE/DigitalOcean) using open source software. He is an open source enthusiast and shares his experience at local meetups. He co-authored Java Unit Testing with JUnit 5 (Apress) and Getting Started with Istio Service Mesh (Apress).

Akshay Mathur is a software engineer with 15 years of experience, mostly in Java and web technologies. Most of his career has been spent building B2B platforms for enterprises, dealing with concerns such as scalability, configurability, multi-tenancy, and cloud engineering. He has hands-on experience implementing and operating microservices and Kubernetes in these ecosystems. Currently, he enjoys public speaking and blogging on new cloud native technologies (especially plain Kubernetes) and effective engineering culture.


Table of Contents

Chapter 1: Introduction to Traefik

Chapter Goal: The chapter covers the need of a better load balancer using microservices components. It covers Traefik components and build the basic understanding. The reader will setup the environment which will get started with Traefik

No of pages: 20

Sub -Topics

1. Monolith to microservices architecture evolution

1. Static configuration challenges

2. Observability challenges

3. TLS as identity

2. Traefik components

1. CLI

2. Dashboard

Chapter 2: Configure Traefik

Chapter Goal: The chapter will cover routing basics. It will discuss the various components.

No of pages: 20

Sub - Topics

1. Entrypoint

2. Routers

3. Services

Chapter 3: Load Balancing and Failure Detection

Chapter Goal: The chapter will cover different load balancing options available in Traefik.

No of pages : 30

Sub - Topics:

1. Configuring HTTP service

a. Round robin

b. Weighted round robin

c. Mirroring

d. Health checks

2. Configuring TCP service

a. Round robin

b. Weighted round robin

Chapter 4: Configure TLS

Chapter Goal: TLS is an important part of load balancing. We will cover how to do TLS termination and TLS pass through using Traefik.

No of pages: 15

Sub - Topics:

1. Configure TLS termination

a. Using lets encrypt

2. Configure TLS pass-through

Chapter 5: Logs, Request Tracing and Black Listing

Chapter Goal: The chapter will cover observability features of Traefik

No of pages: 30

Sub - Topics:

1. Trafik logging

2. Access logs

3. Request tracing

4. IP blacklisting

5. Metrices

Chapter 6: Traefik as Microservices

Chapter Goal: The chapter will use Traefik for microservices traffic routing. It will load configuration and discover services from a backend. It will configure circuit breakers, throttling and retries.

No of pages: 30

Sub - Topics:

1. Routing using service discovery

2. configure circuit breakers and retries

3. configure throttling

4. Supporting canary routes

Chapter 7: Traefik as Kubernetes Ingress

Chapter Goal: The chapter will setup Traefik as Kubernetes Ingress. It will setup mutual TLS authentication for identity and role based access control. It will send metrices and tracing to prometheus and Jagger K8s components.

No of pages: 30

Sub - Topics:

1. Configure Kubernetes ingress

2. Enable mTLS authentication

a. configure RBAC

3. Configure TLS termination for user requests

4. Configure request tracing with Jaeger

5. Capture metrices in prometheus

From the B&N Reads Blog

Customer Reviews