<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>Monitoring on Shaowen Chen's Website</title><link>https://www.chenshaowen.com/en/tags/monitoring/</link><description>Recent content in Monitoring on Shaowen Chen's Website</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>&amp;copy;2016 - {year}, All Rights Reserved.</copyright><lastBuildDate>Sat, 11 Jul 2026 00:00:00 +0000</lastBuildDate><sy:updatePeriod>weekly</sy:updatePeriod><atom:link href="https://www.chenshaowen.com/en/tags/monitoring/atom.xml" rel="self" type="application/rss+xml"/><item><title>Deploying VictoriaMetrics in Containers</title><link>https://www.chenshaowen.com/en/blog/container-deploy-victoriametrics.html</link><pubDate>Sat, 11 Jul 2026 00:00:00 +0000</pubDate><atom:modified>Sat, 11 Jul 2026 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/container-deploy-victoriametrics.html</guid><description>VictoriaMetrics (VM for short) is a time-series database compatible with the Prometheus ecosystem. It uses fewer resources than Prometheus and comes in both single-node and cluster editions. The single-node edition can directly replace Prometheus storage; the cluster edition splits reads, writes, and storage across vmstorage / vminsert / vmselect, giving it stronger horizontal scaling.</description><dc:creator>微信公众号</dc:creator><category>Middleware</category><category>Containers</category><category>VictoriaMetrics</category><category>Prometheus</category><category>Monitoring</category><category>Operations</category></item><item><title>Deploying ClickHouse in Containers</title><link>https://www.chenshaowen.com/en/blog/container-deploy-clickhouse.html</link><pubDate>Wed, 11 Feb 2026 00:00:00 +0000</pubDate><atom:modified>Wed, 11 Feb 2026 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/container-deploy-clickhouse.html</guid><description>1. ClickHouse Single Node 1.1 Configure Environment Variables 1 2 3 4 5 6 7 8 export CONTAINER_CLI=nerdctl export IMAGE=clickhouse/clickhouse-server:24 export CLICKHOUSE_INSTANCE_NAME=clickhouse export CH_DATA=/data/ops/clickhouse/$CLICKHOUSE_INSTANCE_NAME export CLICKHOUSE_PORT=9000 export CLICKHOUSE_PROMETHEUS_PORT=9363 export CLICKHOUSE_USER=default export CLICKHOUSE_PASSWORD=xxxxxx 1.2 Generate the Configuration Files 1 2 3 4 5 6 7 8 9 10 11 12 13</description><dc:creator>微信公众号</dc:creator><category>Middleware</category><category>Containers</category><category>ClickHouse</category><category>Prometheus</category><category>Monitoring</category><category>Operations</category></item><item><title>NVIDIA DCGM User Guide</title><link>https://www.chenshaowen.com/en/blog/the-use-guide-of-nvidia-dcgm.html</link><pubDate>Wed, 13 Aug 2025 00:00:00 +0000</pubDate><atom:modified>Wed, 13 Aug 2025 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/the-use-guide-of-nvidia-dcgm.html</guid><description>1. What DCGM Is DCGM (Data Center GPU Manager) is a toolset NVIDIA provides for managing and monitoring GPUs in the data center. It offers the following capabilities: GPU behavior monitoring GPU configuration management GPU policy supervision GPU health and diagnostics GPU accounting and process statistics NVSwitch configuration and monitoring</description><dc:creator>微信公众号</dc:creator><category>AI</category><category>NVIDIA</category><category>DCGM</category><category>GPU</category><category>Monitoring</category><category>Operations</category><category>Troubleshooting</category></item><item><title>Why top node, free, and Grafana Numbers Don't Line Up</title><link>https://www.chenshaowen.com/en/blog/why-top-node-free-grafana-data-not-match.html</link><pubDate>Fri, 26 Jul 2024 01:00:00 +0000</pubDate><atom:modified>Fri, 26 Jul 2024 01:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/why-top-node-free-grafana-data-not-match.html</guid><description>1. top Shows Node Resource Usage Above 100% 1 2 3 4 5 6 kubectl top node NAME CPU(cores) CPU% MEMORY(bytes) MEMORY% master-1 995m 16% 13760Mi 118% master-2 827m 13% 10672Mi 92% master-3 889m 14% 10244Mi 88% This is because usage is computed against allocatable resources by default, which excludes the portion reserved by Kubelet.</description><dc:creator>微信公众号</dc:creator><category>Monitoring</category><category>Memory</category><category>Kubernetes</category><category>Grafana</category><category>Operations</category><category>Troubleshooting</category></item><item><title>Zero-Cost Service Availability Monitoring with Upptime</title><link>https://www.chenshaowen.com/en/blog/monitor-service-accessibility-with-upptime-for-free.html</link><pubDate>Sat, 12 Aug 2023 00:00:00 +0000</pubDate><atom:modified>Sat, 12 Aug 2023 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/monitor-service-accessibility-with-upptime-for-free.html</guid><description>1. What Needs Dial Testing GPT was all the rage this year, and I deployed and developed several applications and mini programs to learn from. Of course, following the principle of helping vendors test their features, right now only the GPT 3.5 API costs a little every day — the</description><dc:creator>微信公众号</dc:creator><category>GitHub</category><category>Actions</category><category>Monitoring</category><category>Dial Testing</category><category>Operations</category><category>Learning</category><category>Availability</category><category>Free</category><category>CICD</category><category>Best Practices</category></item><item><title>Observing Kubernetes Network Connections with Kindling</title><link>https://www.chenshaowen.com/en/blog/insight-kubernetes-network-by-kindling.html</link><pubDate>Sat, 10 Sep 2022 00:00:00 +0000</pubDate><atom:modified>Sat, 10 Sep 2022 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/insight-kubernetes-network-by-kindling.html</guid><description>I recently had a requirement to collect Kubernetes&amp;rsquo; external network access. So I set up and tried out some related projects. This post is mainly about how to install Kindling and configure Grafana to view Kubernetes network connection data.
1. What Is Kindling Kindling solves the problem of how to observe the network without intruding on the application; its functionality is mainly achieved by exposing kernel events for observation.</description><dc:creator>微信公众号</dc:creator><category>Kubernetes</category><category>Kindling</category><category>Network</category><category>Observability</category><category>Operations</category><category>eBPF</category><category>Monitoring</category></item><item><title>Common Prometheus Alerting Queries for Various Resources</title><link>https://www.chenshaowen.com/en/blog/some-common-promql-for-alarming.html</link><pubDate>Sun, 21 Aug 2022 11:22:55 +0000</pubDate><atom:modified>Sun, 21 Aug 2022 11:22:55 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/some-common-promql-for-alarming.html</guid><description>Hosts Host memory usage exceeds threshold 1 - node_memory_MemAvailable_bytes{mode!=&amp;quot;idle&amp;quot;} / node_memory_MemTotal_bytes
Threshold: 0.9
Host CPU usage exceeds threshold 1 - avg(irate(node_cpu_seconds_total{mode=&amp;quot;idle&amp;quot;}[5m])) by (host_name)
Threshold: 0.85
Host disk usage exceeds threshold 1 - avg without (fstype)(node_filesystem_free_bytes{fstype!='rootfs',mountpoint!~'/(run|var|snap).*'} / node_filesystem_size_bytes{fstype!='rootfs',mountpoint!~'/(run|var|snap).*'})
Threshold: 0.8
Windows Windows host memory usage exceeds threshold 1 - 1 * windows_os_physical_memory_free_bytes{job=&amp;quot;windows_exporter&amp;quot;,mode!</description><dc:creator>微信公众号</dc:creator><category>Prometheus</category><category>Alerting</category><category>Monitoring</category><category>Operations</category><category>PromQL</category></item><item><title>Deploying the Elasticsearch Stack on a Kubernetes Cluster</title><link>https://www.chenshaowen.com/en/blog/how-to-deploy-the-elasticsearch-stack-on-kubernetes.html</link><pubDate>Wed, 06 Jul 2022 00:00:00 +0000</pubDate><atom:modified>Wed, 06 Jul 2022 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/how-to-deploy-the-elasticsearch-stack-on-kubernetes.html</guid><description>If you use Logstash to centrally receive the log input from Filebeat, it easily creates a single point of bottleneck; if you use Kafka to receive the log input from Filebeat, the timeliness of the logs is not guaranteed. Here we output the logs collected by Filebeat directly to Elasticsearch.</description><dc:creator>微信公众号</dc:creator><category>Kubernetes</category><category>Elasticsearch</category><category>Logging</category><category>Operations</category><category>ELK</category><category>Monitoring</category></item><item><title>Using Blackbox Exporter to Test Network Connectivity</title><link>https://www.chenshaowen.com/en/blog/using-blackbox-exporter-to-test-network.html</link><pubDate>Sat, 25 Jun 2022 00:00:00 +0000</pubDate><atom:modified>Sat, 25 Jun 2022 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/using-blackbox-exporter-to-test-network.html</guid><description>If you need to monitor the network status between two hosts, or between a host and an external service, then the Blackbox Exporter mentioned in this article is worth a try.
1. Installing Blackbox 1.1 Deploying on a Host Download the binary package 1 2 3 4 5 wget https://github.</description><dc:creator>微信公众号</dc:creator><category>Prometheus</category><category>Monitoring</category><category>Probing</category><category>Operations</category><category>Learning</category><category>Network</category><category>Blackbox Exporter</category><category>Availability</category></item><item><title>How to Inspect Tekton Pipeline Metrics</title><link>https://www.chenshaowen.com/en/blog/how-to-insight-the-pipeline-of-tekton.html</link><pubDate>Tue, 07 Jun 2022 00:00:00 +0000</pubDate><atom:modified>Tue, 07 Jun 2022 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/how-to-insight-the-pipeline-of-tekton.html</guid><description>1. Scraping Tekton Metrics Add a ConfigMap configuration file 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 cat &amp;lt;&amp;lt;EOF | kubectl apply -f - apiVersion: v1 kind: ConfigMap metadata: name: config-observability namespace: tekton-pipelines labels: app.kubernetes.io/instance: default app.kubernetes.io/part-of: tekton-pipelines data: metrics.backend-destination: prometheus metrics.taskrun.level: &amp;#34;task&amp;#34; metrics.</description><dc:creator>微信公众号</dc:creator><category>Kubernetes</category><category>Tekton</category><category>Monitoring</category><category>Metrics</category><category>CICD</category><category>Operations</category></item><item><title>How to collect labels and annotations of Kubernetes objects</title><link>https://www.chenshaowen.com/en/blog/how-to-collect-labels-and-annotations-of-kubernetes-objects.html</link><pubDate>Thu, 02 Jun 2022 01:00:00 +0000</pubDate><atom:modified>Thu, 02 Jun 2022 01:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/how-to-collect-labels-and-annotations-of-kubernetes-objects.html</guid><description>1. Why kube-status-metrics is needed Kubernetes monitoring mainly focuses on two kinds of metrics:
Basic performance metrics CPU, memory, disk, network, and so on. These can be collected by deploying node-exporter as a DaemonSet and having Prometheus scrape the relevant metrics.
Resource object metrics The replica count of a Deployment, the running state of a Pod, and so on.</description><dc:creator>微信公众号</dc:creator><category>Kubernetes</category><category>Monitoring</category><category>Metrics</category><category>Collection</category><category>Prometheus</category><category>Operations</category><category>Learning</category><category>Observability</category><category>kube-status-metrics</category></item><item><title>Managing Data from Multiple Prometheus Instances Centrally with Thanos</title><link>https://www.chenshaowen.com/en/blog/manage-multiple-prometheus-using-thanos.html</link><pubDate>Tue, 22 Mar 2022 00:00:00 +0000</pubDate><atom:modified>Tue, 22 Mar 2022 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/manage-multiple-prometheus-using-thanos.html</guid><description>1. Layering of Monitoring As shown above, when building a monitoring system, two strategies are used: Layered monitoring. The benefit of separating IaaS, MySQL middleware, and App layer monitoring is that the systems have high availability and fault tolerance between them. When App layer monitoring stops working, IaaS layer monitoring</description><dc:creator>微信公众号</dc:creator><category>Thanos</category><category>Prometheus</category><category>Monitoring</category><category>Storage</category><category>Kubernetes</category><category>Operations</category></item><item><title>Prometheus and Grafana: Building Kubernetes Monitoring</title><link>https://www.chenshaowen.com/en/blog/the-monitor-of-kubernetes-using-prometheus-grafana.html</link><pubDate>Fri, 03 Sep 2021 00:00:00 +0000</pubDate><atom:modified>Fri, 03 Sep 2021 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/the-monitor-of-kubernetes-using-prometheus-grafana.html</guid><description>The Prometheus community moves so fast that some of the documents I wrote earlier have become outdated. I&amp;rsquo;ve recently started paying attention to observability again, filling in some of the gaps in my operations knowledge.
1. Terminology Grafana A visualization tool that provides a variety of visualization panels and supports many data sources, including Prometheus, OpenTSDB, MySQL, and others.</description><dc:creator>微信公众号</dc:creator><category>Prometheus</category><category>Grafana</category><category>Kubernetes</category><category>Monitoring</category><category>Operations</category><category>Observability</category></item><item><title>Dial Testing Services with Jenkins</title><link>https://www.chenshaowen.com/en/blog/how-to-dial-up-testing-using-jenkins.html</link><pubDate>Wed, 04 Dec 2019 00:00:00 +0000</pubDate><atom:modified>Wed, 04 Dec 2019 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/how-to-dial-up-testing-using-jenkins.html</guid><description>1. Why Dial Testing For some of the critical services in a system, we usually set up monitoring. When a failure occurs, it can be detected as quickly as possible and a notification sent to the people who care. Once a failure has occurred, the failure process can be traced</description><dc:creator>微信公众号</dc:creator><category>Jenkins</category><category>Dial Testing</category><category>Monitoring</category><category>DevOps</category><category>Operations</category></item><item><title>Enabling Kubernetes Monitoring and Stress Testing</title><link>https://www.chenshaowen.com/en/blog/open-k8s-monitoring-and-stress-testing..html</link><pubDate>Mon, 24 Sep 2018 00:00:00 +0000</pubDate><atom:modified>Mon, 24 Sep 2018 00:00:00 +0000</atom:modified><guid>https://www.chenshaowen.com/en/blog/open-k8s-monitoring-and-stress-testing..html</guid><description>1. Kubectl Basic Commands 1.1 Creating Objects 1 2 3 4 5 6 7 8 # Create resources; a remote URL also works kubectl create -f ./my.yaml # Create resources from multiple files kubectl create -f ./my1.yaml -f ./my2.yaml # Create resources using all manifest files in a directory kubectl create -f .</description><dc:creator>微信公众号</dc:creator><category>Kubernetes</category><category>Testing</category><category>Monitoring</category><category>Operations</category><category>Learning</category><category>kubectl</category><category>Stress Testing</category><category>Observability</category></item></channel></rss>