Node_exporter+Prometheus+Grafana 快速实现Linux系统性能数据提取、存储和可视化展示
本文将通过Node_exporter+Prometheus+Grafana三者结合,快速提取Linux内核数据,数据包括但不限于CPU、内存、磁盘、网络IO等,并进行可视化展示,这一套对于分布式也同样适用。
Linux内核网络性能优化
本文只总结了常见的网络优化技术,并使用尽量多的图片帮助理解原理,但未深入具体去介绍原理和具体用法,目的是以后需要时可以宏观上知道该怎么去做,进而微观上深入内核来解决问题。
使用eBPF追踪Linux内核
我们可以使用eBPF对Linux内核进行跟踪,收集我们想要的内核数据,从而对Linux中的程序进行分析和调试。本文将介绍保证BPF程序安全的BPF验证器,然后以BPF程序的工具集BCC为例,分享kprobes和tracepoints类型的BPF程序的使用及程序编写示例。
使用BPF进行性能追踪
在上次的内容里,我们介绍了BPF C编程环境的搭建,使用BPF C的方式编写,编译和运行BPF程序,并通过源码分析理解BPF CALL指令调用的内核辅助函数转化为字节码的过程,使用bpftool和objdump观察BPF程序字节码。而这次分享围绕使用BPF进行性能追踪
open系统调用(二)
open系统调用(一)中说到通过调用函数path_openat以解析文件路径,path_openat中包装了两个重要的函数path_init和link_path_walk,本文就从这两个函数开始,继续打开文件的旅程。