Traefik API Gateway for Microservices, 1st ed. With Java and Python Microservices Deployed in Kubernetes
Auteurs : Sharma Rahul, Mathur Akshay
![Couverture de l’ouvrage Traefik API Gateway for Microservices](https://images.lavoisier.fr/couvertures/1317600420.jpg)
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.
- 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.
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 TraefikChapter 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 DetectionChapter 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 TLSChapter 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 IngressChapter 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 RBAC3. Configure TLS termination for user requests
4. Configure request tracing with Jaeger
5. Capture metrices in prometheus
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.
The first book to cover Traefik
Guides you from fundamental concepts to applications in microservices scenarios
Covers cases of microservices deployed on the Kubernetes platform
Date de parution : 11-2020
Ouvrage de 255 p.
15.5x23.5 cm