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会清理另外一部分缓存.
所以会出现一个大破的上升, 和两个下坡的下降.

内存使用情况

Grafana针对内存监控值的学习与使用的更多相关文章

  1. 从Container内存监控限制到CPU使用率限制方案

    转自:http://blog.csdn.net/Androidlushangderen/article/details/50282593 前言 最近在运维我们部门的hadoop集群时,发现了很多Job ...

  2. Android 分区和内存监控

    Android 分区和内存监控 Andorid之所以是分区,是因为各自有对应的功能和用途的考量,可以进行单独读写和格式化. Android 设备包含两类分区: 一类是启动分区,对启动过程至关重要. 一 ...

  3. Docker容器内存监控

    linux内存监控 要明白docker容器内存是如何计算的,首先要明白linux中内存的相关概念. 使用free命令可以查看当前内存使用情况. [root@localhost ~]$ free tot ...

  4. iOS微信内存监控

    WeTest 导读 目前iOS主流的内存监控工具是Instruments的Allocations,但只能用于开发阶段.本文介绍如何实现离线化的内存监控工具,用于App上线后发现内存问题. FOOM(F ...

  5. 性能测试 基于Python结合InfluxDB及Grafana图表实时监控Android系统和应用进程

    基于Python结合InfluxDB及Grafana图表实时监控Android系统和应用进程   By: 授客 QQ:1033553122     1. 测试环境 2. 实现功能 3. 使用前提 4. ...

  6. 搭建Jmeter + Grafana + InfluxDB性能测试监控环境

    背景 Jmeter原生的实时监控每半分钟收集一次数据,只能在Linux控制台查看日志输出,界面看起来不直观,图表报告只能等压测结束后才能生成.如下图为jmeter在Linux下运行的实时日志: 那么如 ...

  7. redis内存监控与回收

    Redis有自己的内存分配器,当key-value对象被移除时,Redis不会马上向操作系统释放其占用内存.redis之所以这样的设计有两个原因. OS可能会将释放内存交换到虚拟内存,但OS的虚拟内存 ...

  8. 10min 手写一个内存监控系统

    本文的目的在于,尽可能用简单的代码,让大家了解内存监控的原理,及思想.更容易去理解Nagios.Zabbix.Ganglia监控原理,文章最后还有视频教程链接哦,从零敲出来的全过程 思路分为下面几块: ...

  9. Linux 内存监控

    1.按照内存使用方式排序 top 之后使用 shift + m 那么top按照内存使用从大到小进行排列,使用 shift + P 表示按照CPU进行排序. bigfish 1118m 438m 30m ...

  10. 微信团队原创分享:iOS版微信的内存监控系统技术实践

    本文来自微信开发团队yangyang的技术分享. 一.前言 FOOM(Foreground Out Of Memory),是指App在前台因消耗内存过多引起系统强杀.对用户而言,表现跟crash一样. ...

随机推荐

  1. flutter BLoC框架

    BLoC(Business Logic Component)是一种在Flutter中用于管理状态和处理业务逻辑的设计模式和架构模式. BLoC 的核心思想是将应用程序的状态.业务逻辑和UI分离开来,以 ...

  2. Unity3D学习笔记5——创建子Mesh

    目录 1. 概述 2. 详论 2.1. 实现 2.2. 解析 3. 参考 1. 概述 在文章Unity3D学习笔记4--创建Mesh高级接口通过高级API的方式创建了一个Mesh,里面还提到了一个Su ...

  3. Cesium案例解析(八)——CesiumWidget简化窗体

    目录 1. 正文 2. 参考 1. 正文 Cesium Widget这个案例展示了一个Cesium的简化窗体.在之前的案例中使用的都是Cesium.Viewer这个窗体组件,包含了非常丰富的组件内容. ...

  4. 云小课|手把手教您在PyCharm中连接云端资源进行代码调试

    摘要:让我们看看如何在PyCharm中连接云端资源进行代码调试吧! 本文分享自华为云社区<[云小课]EI第54课 手把手教您在PyCharm中连接云端资源进行代码调试>,作者:Hello ...

  5. 华为云Classroom聚焦人才数字化转型,引领智慧教育改革新模式

    随着教育行业数字化转型进程加快,利用现代化云端技术手段,线上线下相结合方式建立的全新OMO产教融合一体化已成为行业趋势.华为云Classroom平台沉淀了华为多年研发实践经验和多种前沿技术,以赋能伙伴 ...

  6. 开心档之MySQL 导入数据

    MySQL 导入数据 本章节我们为大家介绍几种简单的 MySQL 导入数据命令. 1.mysql 命令导入 使用 mysql 命令导入语法格式为: mysql -u用户名 -p密码 < 要导入的 ...

  7. 使用 Kubeadm 部署 Kubernetes(K8S) 安装 -- 持久化存储(NFS网络存储)

    使用 Kubeadm 部署 Kubernetes(K8S) 安装 使用 Kubeadm 部署 Kubernetes(K8S) 安装 -- Ingress-Ngnix Volume 是 Pod 中能够被 ...

  8. 备份批处理文件 bat 生成 date 取年时,只取到周

    备份数据库文件时,发现MySQL备份生成的文件名为 [vipsoft_周三],发现是系统的日期格式问题.需调整日期格式,生成 [vipsoft_20220601.sql] mysqldump -uro ...

  9. 浅谈locust 性能压测使用

    1. 基本介绍 Locust是一个开源的负载测试工具,用于模拟大量用户并发访问一个系统或服务,以评估其性能和稳定性.编写语言为Python,可通过Python来自定义构建性能压测场景脚本.Locust ...

  10. C++11实用特性2

    1 可调用对象包装器.绑定器 1可调用对象 C++中的可调用对象分为四类: 函数指针: 任何一个函数都可以抽象成一个函数指针 int print(int a, double b) { cout < ...