性能分析与调优: Linux 实现 缺页剖析与火焰图

目录

 一、实验

1.环境

2.缺页(RSS增长)剖析与火焰图


 一、实验

1.环境

(1)主机

表1-1 主机

主机 架构 组件 IP 备注
prometheus

监测

系统

prometheus、node_exporter  192.168.204.18
grafana 监测GUI grafana 192.168.204.19
agent 

监测

主机

node_exporter 192.168.204.20

2.缺页(RSS增长)剖析与火焰图

(1)开源软件构建

① 克隆或直接下载ZIP

git clone https://github.com/brendangregg/FlameGraph; cd FlameGraph

②查看目录

[root@agent opt]# ls

FlameGraph-master.zip为上传的开源软件包

③ 解压

[root@agent opt]# unzip FlameGraph-master.zip 


④再次查看目录

[root@agent opt]# ls

⑤切换目录查询

[root@agent opt]# cd FlameGraph-master/
[root@agent FlameGraph-master]# ls

flamegraph.pl为不同的语言提供了自定义的调色板

性能分析与调优: Linux 实现 缺页剖析与火焰图_第1张图片

 (2)缺页剖析

① 命令

使用perf命令在所有CPU(-a)以上对栈踪迹(-g)采样60秒,采样整个系统的缺页(RSS增长)机器栈踪迹,列出样本

[root@agent ~]#  perf record -e page-faults -a -g -- sleep 60

性能分析与调优: Linux 实现 缺页剖析与火焰图_第2张图片

②然后导出到指定文件

[root@agent ~]# perf script --header > /opt/FlameGraph-master/out.stacks

 ③切换目录并查看

[root@agent ~]# cd /opt/FlameGraph-master/
[root@agent ~]# ls

性能分析与调优: Linux 实现 缺页剖析与火焰图_第3张图片

(3)缺页故障火焰图(内存火焰图)

① 命令

背景颜色设置为绿色,指定标题

[root@agent FlameGraph-master]# ./stackcollapse-perf.pl < /opt/FlameGraph-master/out.stacks | ./flamegraph.pl --hash \> --bgcolor=green --count=pages --title="Page Fault Flame Graph" > out.svg

[root@prometheus FlameGraph-master]# ls

生成的out.svg文件可以在网络浏览器中加载

性能分析与调优: Linux 实现 缺页剖析与火焰图_第4张图片

(4)网页浏览

①  Linux可视化界面查看目录

性能分析与调优: Linux 实现 缺页剖析与火焰图_第5张图片

② 选择浏览器打开

性能分析与调优: Linux 实现 缺页剖析与火焰图_第6张图片

③查看out.svg

性能分析与调优: Linux 实现 缺页剖析与火焰图_第7张图片

 ④另外查看自带的perf样例

性能分析与调优: Linux 实现 缺页剖析与火焰图_第8张图片

⑤另外查看自带的dtrace样例

性能分析与调优: Linux 实现 缺页剖析与火焰图_第9张图片
 

你可能感兴趣的:(性能分析与调优,linux,运维,服务器,性能优化,云计算)