Book Image

Cloud Native with Kubernetes

By : Alexander Raul
Book Image

Cloud Native with Kubernetes

By: Alexander Raul

Overview of this book

Kubernetes is a modern cloud native container orchestration tool and one of the most popular open source projects worldwide. In addition to the technology being powerful and highly flexible, Kubernetes engineers are in high demand across the industry. This book is a comprehensive guide to deploying, securing, and operating modern cloud native applications on Kubernetes. From the fundamentals to Kubernetes best practices, the book covers essential aspects of configuring applications. You’ll even explore real-world techniques for running clusters in production, tips for setting up observability for cluster resources, and valuable troubleshooting techniques. Finally, you’ll learn how to extend and customize Kubernetes, as well as gaining tips for deploying service meshes, serverless tooling, and more on your cluster. By the end of this Kubernetes book, you’ll be equipped with the tools you need to confidently run and extend modern applications on Kubernetes.
Table of Contents (22 chapters)
1
Section 1: Setting Up Kubernetes
5
Section 2: Configuring and Deploying Applications on Kubernetes
11
Section 3: Running Kubernetes in Production
16
Section 4: Extending Kubernetes

Using sidecar proxies

As we mentioned earlier in this book, a sidecar is a pattern where a Pod contains another container in addition to the actual application container to be run. This additional "extra" container is the sidecar. Sidecars can be used for a number of different reasons. Some of the most popular uses for sidecars are monitoring, logging, and proxying.

For logging, a sidecar container can fetch application logs from the application container (since they can share volumes and communicate on localhost), before sending the logs to a centralized logging stack, or parsing them for the purpose of alerting. It's a similar story for monitoring, where the sidecar Pod can track and send metrics about the application Pod.

With a sidecar proxy, when requests come into the Pod, they first go to the proxy container, which then routes requests (after logging or performing other filtering) to the application container. Similarly, when requests leave the application...