Grafana针对内存监控值的学习与使用
背景
因为学习内存相关的知识, 可以通过pgcacher/sar -r 等命令监控系统信息.
但是现在发现. 不太直观, 所以想着使用别的方式来进行处理.
然后想到了使用Grafana的方式进行监控. 下午突击学习了下Panel的简单创建与编辑
感谢帮助过我的同事. 学习永无止境.
第一步复制一下Panel
打开Grafana->选中想要复制的一个panel 点击右上角的 功能按钮
->点击More ->选择duplicate 复制对应的面板
编辑新面板
复制一个对应的查询行信息
注意可以在新增查询信息的第三行 选择 Code 的方式
如果是prometheus的 datasource
可以输入 对应的PromSQL数据进行查询与展示.
然后可以 点开当前行信息的 Options 信息
修改名字等信息.
就可以单独展示不同的内容.
设置百分比
在编辑面板的右侧, 打开修改界面.
选择 overrides 的界面
可以删除掉一个使用名称匹配的展示信息
增加为:
Fields With name matching regex
比如我使用使用率最后后缀 就可以写上:
/.*使用率/
然后可以增加 Add override property
Standard options -> Unit
选择上 Percent (0-100)
就可以百分比显示.
但是颜色可能比较单一, 需要完善一下.
也可以增加一个 override 使用名字匹配.
然后 选择 Standard options ->Color scheme _.Single color 就可以
公式
1. 包含Cache的内存使用率
(1 - (node_memory_MemFree_bytes{instance=~"$instance"} / (node_memory_MemTotal_bytes{instance=~"$instance"})))* 100
2. 不包含Cache的内存使用率
(1 - ((node_memory_MemFree_bytes{instance=~"$instance"} + node_memory_Cached_bytes{instance=~"$instance"}) / (node_memory_MemTotal_bytes{instance=~"$instance"})))* 100
注意思路为:
通过Prometheus的端口, 查看所有的监控指标.
然后将对应的数值添加到公式中来.
需要注意 这两个公式不区分CentOS6和CentOS7 都是一样的.
内存增量验证
增加缓存的使用 使用命令为
scp -l 1000000 /root/all.dump /tmp/
可以适当限制一下速度, 避免过快的上升.
文件复制完,或者是内存空间满之后会进入平台期. 然后删除tmp 目录下的文件
rm -rf /tmp/all.dump
稍等一会儿 执行清理缓存的命令
echo 3 >/proc/sys/vm/drop_caches
然后就可以看到内存的使用情况.
内存使用情况总结:
开机之后 缓存数量较小, 包含缓存的使用率, 仅仅比不是用的缓存的内存高一点.
随着复制到tmp 目录下
会有两部分pagecache的占用
1部分是 tmp 目录下不会被 drop_cahes清理的部分.
还有一部分是scp 复制文件时将原始文件读入内存时的page cache.
删除 /tmp 目录会清理一部分 缓存
drop_cache会清理另外一部分缓存.
所以会出现一个大破的上升, 和两个下坡的下降.
内存使用情况