可观测性:监控与日志|学习笔记

简介: 快速学习可观测性:监控与日志

开发者学堂课程【Kubernetes 入门 可观测性:监控与日志】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/51/detail/1018


可观测性:监控与日志


内容介绍:

一、背景

二、监控

三、日志

四、总结

 

一、背景

监控和日志是大型分布式系统的重要基础设施,监控可以帮助开发者查看系统的运行状态,而日志可以协助问题的排查和诊断。

在 Kubernetes 中,监控和日志属于生态的一部分,并不是核心组件,因此大部分的能力依赖上层的云厂商的适配。Kubernetes 定义了接入的接口标准和规范,任何符合接口标准的组件都可以快速集成。

 

二、监控

1、监控的类型

l 资源监控

CPU、内存、网络等资源类的指怀,吊以效值、日刀比平 LL13P,n0n 方式。

l 性能监控

应用的内部监控,通常是通过 Hook 的机制在虚拟机层、字节码执行层隐式回调,或者在应用层显示注入,获取更深层次的监控指标,常用来应用诊断与调优。

l 安全监控

针对安全进行的一系列监控策略,例如越权管理、安全漏洞扫描等等

l 事件监控

Kubernetes 中一种另类的监控方式,紧密贴合 Kubernetes 的设计理念,

l 补充常规监控方案的缺欠与弊端。

2、Kubernetes 的监控接口标准

通过 APIServer Aggregated API 注册了三种不同的 metrics 接口,将监控的消费能力进行标准化和解耦,从而实现了与社区的融合。

image.png

3、Prometheus-开源社区的监控“标准”

l 简洁强大的接入标准

l 多种数据采集、离线方式

l Kubernetes 的兼容

l 丰富的插件机制与生态

l Prometheus Operator 的助力

 

三、日志

1、日志的场景

l 主机内核的日志:

主机内核日志可以协助开发者诊断例如︰网络栈异常,驱动异常,文件系统异常,影响节点(内核)稳定的异常。

l Runtime 的日志:

最常见的运行时是 Docker,可以通过 Docker 的日志排查例如删除 Pod Hang 等问题。

l 核心组件的日志:

APIServer 日志可以用来审计,Scheduler 日志可以诊断调度,etcd 日志可以查看存储状态,Ingress 日志可以分析接入层流量。

l 部署应用的日志:

可以通过应用日志分析查看业务层的状态,诊断异常

2、日志的采集

从采集位置上划分,需要支持如下三种:

1、宿主机文件

2、容器内文件

3、容器标准/错误输出

3、Fluentd 日志采集方案

l Data Collection

l Data Aggregation& Processing

l lndexing &storage

l Analysis &visualization

 

四、总结

image.png

在 Kubernetes 中,监控和日志属于生态的一部分,并不是核心组件 Kubernetes 定义了接入的接口标准和规范,任何符合接口标准的组件都可以快速集成。

与监控日志紧密相关的四个产品:

l SLS(Log):日志服务

l ARMS(APM):应用的性能监控

l AHAS(Architecture Awareness):架构感知监控

l Cloud Monitor:云监控

metrics-server 把功能做了很多裁剪,会很不方便,会跟及自己的节奏进行发布

npd 增加了很多监控和检测项

在采集层提供了优化的 node-exporter,场景化的 other-exporters

以及针对 GPU 的 GPU-exporter

阿里云容器服务日志体系

image.png

我们可以采集 pod、Kemel、etcdCore 、Components、Docker 的日志,都收集到 SLS 中,通过 数据离线,离线到 ossMax 、Compute 中,在 Opensearch、 E-MapRreduce、 Flink 中实施日志的搜索和消费,可以对接 Grafana 和 DataV 进行数据的采集和消费

l 监控

四种容器场景下常见的监控方式

Kubernetes 监控的演进与接口标准

两种常用的开源监控方案

l 日志

Kubernetes 日志的四种不同场景

Fluentd 日志采集方案

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
10月前
|
Prometheus 监控 Cloud Native
基于docker搭建监控系统&日志收集
Prometheus 是一款由 SoundCloud 开发的开源监控报警系统及时序数据库(TSDB),支持多维数据模型和灵活查询语言,适用于大规模集群监控。它通过 HTTP 拉取数据,支持服务发现、多种图表展示(如 Grafana),并可结合 Loki 实现日志聚合。本文介绍其架构、部署及与 Docker 集成的监控方案。
874 122
基于docker搭建监控系统&日志收集
|
10月前
|
Prometheus 监控 Java
日志收集和Spring 微服务监控的最佳实践
在微服务架构中,日志记录与监控对系统稳定性、问题排查和性能优化至关重要。本文介绍了在 Spring 微服务中实现高效日志记录与监控的最佳实践,涵盖日志级别选择、结构化日志、集中记录、服务ID跟踪、上下文信息添加、日志轮转,以及使用 Spring Boot Actuator、Micrometer、Prometheus、Grafana、ELK 堆栈等工具进行监控与可视化。通过这些方法,可提升系统的可观测性与运维效率。
848 1
日志收集和Spring 微服务监控的最佳实践
|
10月前
|
存储 缓存 监控
用 C++ 红黑树给公司电脑监控软件的日志快速排序的方法
本文介绍基于C++红黑树算法实现公司监控电脑软件的日志高效管理,利用其自平衡特性提升日志排序、检索与动态更新效率,并结合实际场景提出优化方向,增强系统性能与稳定性。
246 4
|
监控 测试技术 Go
告别传统Log追踪!GOAT如何用HTTP接口重塑代码监控
本文介绍了GOAT(Golang Application Tracing)工具的使用方法,通过一个Echo问答服务实例,详细展示了代码埋点与追踪技术的应用。内容涵盖初始化配置、自动埋点、手动调整埋点、数据监控及清理埋点等核心功能。GOAT适用于灰度发布、功能验证、性能分析、Bug排查和代码重构等场景,助力Go项目质量保障与平稳发布。工具以轻量高效的特点,为开发团队提供数据支持,优化决策流程。
917 90
|
消息中间件 运维 监控
智能运维,由你定义:SAE自定义日志与监控解决方案
通过引入 Sidecar 容器的技术,SAE 为用户提供了更强大的自定义日志与监控解决方案,帮助用户轻松实现日志采集、监控指标收集等功能。未来,SAE 将会支持 istio 多租场景,帮助用户更高效地部署和管理服务网格。
738 51
|
数据采集 运维 监控
数据采集监控与告警:错误重试、日志分析与自动化运维
本文探讨了数据采集技术从“简单采集”到自动化运维的演进。传统方式因反爬策略和网络波动常导致数据丢失,而引入错误重试、日志分析与自动化告警机制可显著提升系统稳定性与时效性。正方强调健全监控体系的重要性,反方则担忧复杂化带来的成本与安全风险。未来,结合AI与大数据技术,数据采集将向智能化、全自动方向发展,实现动态调整与智能识别反爬策略,降低人工干预需求。附带的Python示例展示了如何通过代理IP、重试策略及日志记录实现高效的数据采集程序。
680 7
数据采集监控与告警:错误重试、日志分析与自动化运维
|
存储 消息中间件 缓存
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
基于阿里云SelectDB,MiniMax构建了覆盖国内及海外业务的日志可观测中台,总体数据规模超过数PB,日均新增日志写入量达数百TB。系统在P95分位查询场景下的响应时间小于3秒,峰值时刻实现了超过10GB/s的读写吞吐。通过存算分离、高压缩比算法和单副本热缓存等技术手段,MiniMax在优化性能的同时显著降低了建设成本,计算资源用量降低40%,热数据存储用量降低50%,为未来业务的高速发展和技术演进奠定了坚实基础。
718 1
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
|
存储 监控 算法
基于 PHP 语言的滑动窗口频率统计算法在公司局域网监控电脑日志分析中的应用研究
在当代企业网络架构中,公司局域网监控电脑系统需实时处理海量终端设备产生的连接日志。每台设备平均每分钟生成 3 至 5 条网络请求记录,这对监控系统的数据处理能力提出了极高要求。传统关系型数据库在应对这种高频写入场景时,性能往往难以令人满意。故而,引入特定的内存数据结构与优化算法成为必然选择。
378 3
|
消息中间件 运维 监控
智能运维,由你定义:SAE自定义日志与监控解决方案
SAE(Serverless应用引擎)是阿里云推出的全托管PaaS平台,致力于简化微服务应用开发与管理。为满足用户对可观测性和运维能力的更高需求,SAE引入Sidecar容器技术,实现日志采集、监控指标收集等功能扩展,且无需修改主应用代码。通过共享资源模式和独立资源模式,SAE平衡了资源灵活性与隔离性。同时,提供全链路运维能力,确保应用稳定性。未来,SAE将持续优化,支持更多场景,助力用户高效用云。