Share E-Book
Scan to open this page

Scan with your phone to open this page

AuthorMainak Chakraborty, Ajit Pratap Kundan

Introduce yourself to the nuances of modern monitoring for cloud-native applications running on Kubernetes clusters. This book will help you get started with the concepts of monitoring, introduce you to popular open-source monitoring tools, and help with finding the correct set of use cases for their implementation. It covers the in-depth technical details of open-source software used in modern monitoring systems that are tailor made for environments running microservices. Monitoring Cloud-Native Applications is divided into two parts. Part 1 starts with an introduction to cloud-native applications and the foundational concepts of monitoring. It then walks you through the various aspects of monitoring containerized workloads using Kubernetes as the de-facto orchestration platform. You will dive deep into the architecture of a modern monitoring system and look at its individual components in detail. Part 2 introduces you to popular open-source tools which are used by enterprises and startups alike and are well established as the tools of choice for industry stalwarts. First off, you will look at Prometheus and understand its architecture and usage. You will also learn about InfluxDB, formerly called TICK Stack (Telegraf, InfluxDB, Chronograf, and Kapacitor). You will explore the technical details of its architecture and the use cases which it solves. In the next chapter, you will be introduced to Grafana, a multi-platform open source analytics and interactive visualization tool that can help you with visualization of data and dashboards. What You Will Learn - Monitor and observe of metrics, events, logs, and traces - Carry out infrastructure and application monitoring for microservices architecture - Analyze and visualize collected data - Use alerting, reporting, and automated actions for problem resolution

AI Reading Assistant

Whole-book reading guide from stratified index samples; jump to passages in the text

AI guide
# Monitoring Cloud-Native Applications: Lead Agile Operations Confidently Using Open Source Software ## 【One-Line Pitch】 A practical guide for DevOps engineers, SREs, and platform teams who need to design and implement modern monitoring systems for Kubernetes-based microservices using open-source tools like Prometheus, InfluxDB, and Grafana. If you're moving from traditional infrastructure monitoring to cloud-native observability, this book gives you the architectural foundation and tool-specific knowledge to do it confidently. ## 【Book Arc】 - **Opening (~0%–10%)**: Introduces the shift from monolithic to microservices architecture and why traditional monitoring approaches break down in containerized, dynamically orchestrated environments. Establishes core monitoring concepts, terminology, and the evolving roles of DevOps teams. - **Early (~10%–25%)**: Covers the fundamentals of monitoring systems—importance, features, reactive vs. proactive approaches, and the critical distinction between push-based and pull-based monitoring. Introduces AIOps as an emerging complement to traditional monitoring. - **Early-Middle (~25%–40%)**: Dives into observability as a discipline, explaining the three pillars (metrics, logs, traces) with deep focus on metrics—time series, granularity/resolution trade-offs, and the observer effect. Explores metric types including gauges, counters, histograms, and summaries. - **Middle (~40%–50%)**: Bridges theory to practice by examining where metrics come from in Kubernetes clusters—cAdvisor, API Server, Metrics Server, kube-state-metrics, and Node Exporter—and what each source reveals about system health. - **Middle (~48%–60%)**: Presents the architecture of a modern monitoring system, breaking it down into four core components: data collection, data storage, data analysis/query engine, and data visualization. This completes Part 1's conceptual foundation. - **Late (~60%–100%)**: Part 2 shifts to hands-on tool exploration—Prometheus architecture and usage, InfluxDB (formerly TICK Stack: Telegraf, InfluxDB, Chronograf, Kapacitor), and Grafana for visualization and dashboards, with emphasis on matching tools to specific use cases. ## 【Key Takeaways】 - **Microservices demand a new monitoring paradigm** (Early): Monolithic applications with six-month release cycles are replaced by independently deployable services, making traditional monitoring insufficient. Understanding this shift is the prerequisite for everything else in the book. - **Monitoring is a complete process, not a tool** (Early): It spans collecting, processing, aggregating, and displaying real-time quantitative data—plus notifying administrators when behavior drifts from expectations. The goal is both identifying anomalies and preventing recurrence. - **Pull vs. push monitoring is a fundamental design choice** (Early): Pull-based systems emphasize availability alerts (e.g., "Apache server down") but can miss systemic quality issues; push-based systems better capture performance context like throughput and latency, enabling quality-of-service measurement rather than just asset availability. - **Granularity is a trade-off you must manage deliberately** (Early): Too-fine granularity (1-second polling) risks the observer effect and storage bloat; too-coarse granularity hides short-lived spikes that drive tail latency. The solution is different granularity levels for different components—disk I/O needs seconds, while other metrics may tolerate minutes. - **Metrics come in distinct types with distinct purposes** (Middle): Gauges capture point-in-time values (CPU, memory), counters track cumulative totals, histograms measure distributions with configurable buckets (start with SLOs), and summaries expose quantiles plus sum/count. Choosing the right type determines what questions you can answer later. - **Kubernetes provides rich metric sources out of the box** (Middle): cAdvisor and Metrics Server handle system-level metrics, while kube-state-metrics and Node Exporter cover application-level insights—all in Prometheus format, making them consumable by multiple monitoring engines. - **A modern monitoring system has four architectural pillars** (Middle): Data collection, storage, analysis/query engine, and visualization. Designing with these components in mind—rather than bolting tools together ad hoc—enables identifying the smallest problems and alerting in the shortest time. ## 【Reading Tips】 - **Skim Chapter 1 if you're already cloud-native fluent**: The microservices history and container orchestration basics are well-trodden ground for practitioners. Focus instead on the push vs. pull monitoring discussion and AIOps section, which have practical design implications. - **Deep-read the metrics taxonomy sections**: The distinctions between gauges, counters, histograms, and summaries—plus the granularity discussion—are the most technically dense and practically valuable parts of Part 1. These concepts directly inform how you'll configure Prometheus later. - **Use the Kubernetes metrics source chapter as a reference**: Rather than memorizing which component produces which metric, bookmark this section and return to it when you need to know where a specific data point comes from in your cluster. - **Part 2 is tool-specific—jump to what you need**: If you're already using Prometheus, the Grafana and InfluxDB chapters can be read independently. The book's structure supports targeted reading based on your stack. - **Pay attention to use-case matching**: The authors emphasize finding the "correct set of use cases" for each tool. Don't just learn syntax—understand why Prometheus fits certain scenarios while InfluxDB suits others. ## 【Coverage Limits】 This guide covers the conceptual foundation and architectural framework presented in Part 1 of the book. The excerpts do not cover the detailed tool-specific chapters on Prometheus, InfluxDB/TICK Stack, and Grafana in Part 2, nor do they include hands-on configuration examples, deployment steps, or alerting/automation workflows. ##
Excerpt 1
vices architecture - Analyze and visualize collected data - Use alerting, reporting, and automated actions for problem resolution Monitoring Cloud-Native App...
View in text
Page 18
provides incredible insight into the workings of a system. It is also useful to preemptively discover anomalous behavior before they develop into pesky probl...
View in text
Excerpt 3
monitoring systems. We will discuss time series and time- series databases in more detail in chapter 3. G ranularity/Resolution Metrics are generally collect...
View in text
Excerpt 4
lable at https://kubernetes.io/docs/tasks/tools/. Once the Kubernetes cluster is up and running and kubectl has been installed successfully, the first thing...
View in text
Excerpt 5
n contrast, their read performance is poor. LSM-Tree–based TSDBs are suited only for scenarios that are highly skewed towards writes rather than reads. Most...
View in text
Excerpt 6
is shown in Figure 3-26: Figure 3-26. Log data from counter Best Practices for Logging We have seen the challenges with microservices-based logging and we ha...
View in text
Excerpt 7
lhost:9100 (the Node Exporter). You can see that the green line corresponding to Node Exporter went straight from 0 to 1, when the node came up and started r...
View in text
Excerpt 8
ion with CLI 147 Chapter 5 tICK StaCK Updating a Username You can update the username of an existing user by running the influx user update command4: $ influ...
View in text
Tags
AI categories
Cloud NativeDevOpsobservability
ISBN: 1484268881
Publish Year: 2021
Language: English
Pages: 253
File Format: PDF
File Size: 12.5 MB
Text Preview (First 20 pages)
Registered users can read the full content for free

Register as a Gaohf Library member to read the complete e-book online for free and enjoy a better reading experience.

Generating text preview…