Prometheus Node_exporter 之 Memory Detail Meminfo /proc/meminfo

Posted qianyuliang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Prometheus Node_exporter 之 Memory Detail Meminfo /proc/meminfo相关的知识,希望对你有一定的参考价值。

1. Memory Active / Inactive



type: Graph
Unit: bytes
Label: Bytes
Inactive - 最近使用较少的内存, 优先被回收利用 /proc/meminfo Inactive

metrics:

node_memory_Inactive_bytes{instance=~"$node:$port",job=~"$job"}


Active - 最近被频繁使用的内存,除非绝对必要,否则通常不会回收 /proc/meminfo Active

metrics:

node_memory_Active_bytes{instance=~"$node:$port",job=~"$job"}


2. Memory Commited



type: Graph
Unit: bytes
Label: Bytes
Committed_AS - 当前系统已经分配的内存量,包括已分配但尚未使用的内存大小 /proc/meminfo Committed_AS

metrics:

node_memory_Committed_AS_bytes{instance=~"$node:$port",job=~"$job"}


CommitLimit - 当前系统可分配的内存量 /proc/meminfo CommitLimit

metrics:

node_memory_CommitLimit_bytes{instance=~"$node:$port",job=~"$job"}


3. Memory Active / Inactive Detail



type: Graph
Unit: bytes
Label: Bytes
Inactive_file - LRU list 上长时间未被访问过的与文件对应的内存页 /proc/meminfo LRU_INACTIVE_FILE

metrics:

node_memory_Inactive_file_bytes{instance=~"$node:$port",job=~"$job"}


Inactive_anon - 上长时间未被访问过的匿名页和交换区缓存(包括 tmpfs) /proc/meminfo LRU_INACTIVE_ANON

metrics:

node_memory_Inactive_anon_bytes{instance=~"$node:$port",job=~"$job"}


Active_file - LRU list 最近被访问过的与文件对应的内存页 /proc/meminfo LRU_ACTIVE_FILE

metrics:

node_memory_Active_file_bytes{instance=~"$node:$port",job=~"$job"}


Active_anon - 最近被访问过的匿名页和交换区缓存(包括 tmpfs) /proc/meminfo LRU_ACTIVE_ANON

metrics:

node_memory_Active_anon_bytes{instance=~"$node:$port",job=~"$job"}


4. Memory Writeback and Dirty



type: Graph
Unit: bytes
Label: Bytes
Writeback - 正准备主动回写硬盘的缓存页 /proc/meminfo Writeback

metrics:

node_memory_Writeback_bytes{instance=~"$node:$port",job=~"$job"}


WritebackTmp - FUSE用于临时写回缓冲区的内存 /proc/meminfo WritebackTmp

metrics:

node_memory_WritebackTmp_bytes{instance=~"$node:$port",job=~"$job"}


Dirty - 需要写回磁盘的数据大小 /proc/meminfo Dirty

metrics:

node_memory_Dirty_bytes{instance=~"$node:$port",job=~"$job"}


5. Memory Shared and Mapped



type: Graph
Unit: bytes
Label: Bytes
Mapped - mapped 缓存页占用的内存 /proc/meminfo Mapped

metrics:

node_memory_Mapped_bytes{instance=~"$node:$port",job=~"$job"}


Shmem - 共享内存 /proc/meminfo Shared

metrics:

node_memory_Shmem_bytes{instance=~"$node:$port",job=~"$job"}


6. Memory Slab



type: Graph
Unit: bytes
Label: Bytes
SUnreclaim - 通过slab分配的内存中不可回收的部分 /proc/meminfo SUnreclaim

metrics:

node_memory_SUnreclaim_bytes{instance=~"$node:$port",job=~"$job"}


SReclaimable - 通过slab分配的内存中可回收的部分 /proc/meminfo SReclaimable

metrics:

node_memory_SReclaimable_bytes{instance=~"$node:$port",job=~"$job"}


7. Memory Vmalloc



type: Graph
Unit: bytes
Label: Bytes
VmallocChunk - vmalloc 可分配的最大的逻辑连续的内存大小 /proc/meminfo VmallocChunk

metrics:

node_memory_VmallocChunk_bytes{instance=~"$node:$port",job=~"$job"}


VmallocTotal - vmalloc 可使用的总内存大小 /proc/meminfo VmallocTotal

metrics:

node_memory_VmallocTotal_bytes{instance=~"$node:$port",job=~"$job"}


VmallocUsed - vmalloc 已用的总内存大小 /proc/meminfo VmallocUsed

metrics:

node_memory_VmallocUsed_bytes{instance=~"$node:$port",job=~"$job"}


8. Memory Bounce /proc/meminfo Bounce



type: Graph
Unit: bytes
Label: Bytes
Bounce - bounce buffers 占用的内存

metrics:

node_memory_Bounce_bytes{instance=~"$node:$port",job=~"$job"}


9. Memory Anonymous



type: Graph
Unit: bytes
Label: Bytes
AnonHugePages - AnonHugePages 占用的内存大小 /proc/meminfo AnonHugePages

metrics:

node_memory_AnonHugePages_bytes{instance=~"$node:$port",job=~"$job"}


AnonPages - 用户进程中匿名内存页大小 /proc/meminfo AnonPages

metrics:

node_memory_AnonPages_bytes{instance=~"$node:$port",job=~"$job"}


10. Memory Kernel /proc/meminfo KernelStack



type: Graph
Unit: bytes
Label: Bytes
KernelStack - 内核栈大小(常驻内存,不可回收)

metrics:

node_memory_KernelStack_bytes{instance=~"$node:$port",job=~"$job"}


11. Memory HugePages Counter



type: Graph
Unit: short
Label: Pages
HugePages_Free - 系统当前总共拥有的空闲 HugePages 数目 /proc/meminfo HugePages_Free

metrics:

node_memory_HugePages_Free{instance=~"$node:$port",job=~"$job"}


HugePages_Rsvd - 系统当前总共保留的HugePages数目,更具体点就是指程序已经向系统申请,但是由于程序还没有实质的HugePages读写操作,因此系统尚未实际分配给程序的HugePages数目 /proc/meminfo HugePages_Rsvd

metrics:

node_memory_HugePages_Rsvd{instance=~"$node:$port",job=~"$job"}


HugePages_Surp - 指超过系统设定的常驻HugePages数目的数目 /proc/meminfo HugePages_Surp

metrics:

node_memory_HugePages_Surp{instance=~"$node:$port",job=~"$job"}


12. Memory HugePages Size



type: Graph
Unit: bytes
Label: Bytes
HugePages - 系统当前总共拥有的HugePages数目 /proc/meminfo HugePages

metrics:

node_memory_HugePages_Total{instance=~"$node:$port",job=~"$job"}


Hugepagesize - 每一页 HugePages 的大小 /proc/meminfo Hugepagesize

metrics:

node_memory_Hugepagesize_bytes{instance=~"$node:$port",job=~"$job"}


13. Memory DirectMap /proc/meminfo DirectMap



type: Graph
Unit: bytes
Label: Bytes
DirectMap1G - 映射为 1G 的内存页的内存数量

metrics:

node_memory_DirectMap1G{instance=~"$node:$port",job=~"$job"}


DirectMap2M - 映射为 2M 的内存页的内存数量

metrics:

node_memory_DirectMap2M_bytes{instance=~"$node:$port",job=~"$job"}


DirectMap4K - 映射为 4kB 的内存页的内存数量

metrics:

node_memory_DirectMap4k_bytes{instance=~"$node:$port",job=~"$job"}


14. Memory Unevictable and MLocked



type: Graph
Unit: bytes
Label: Bytes
Unevictable - 不可被回收的内存 /proc/meminfo Unevictable

metrics:

node_memory_Unevictable_bytes{instance=~"$node:$port",job=~"$job"}


MLocked - 被mlock()系统调用锁定的内存大小 /proc/meminfo MLocked

metrics:

node_memory_Mlocked_bytes{instance=~"$node:$port",job=~"$job"}


15. Memory NFS /proc/meminfo NFS_Unstable



type: Graph
Unit: bytes
Label: Bytes
NFS Unstable - 发给NFS server但尚未写入硬盘的缓存页

metrics:

node_memory_NFS_Unstable_bytes{instance=~"$node:$port",job=~"$job"}

以上是关于Prometheus Node_exporter 之 Memory Detail Meminfo /proc/meminfo的主要内容,如果未能解决你的问题,请参考以下文章

grafana+prometheus+node_exporter+linux

Prometheus+node_exporter+grafana

Prometheus node_exporter设置开机启动服务

prometheus+node_exporter监控系统搭建

Prometheus客户端节点监控node_exporter

Prometheus Node_exporter