Bcache Telegraf监控
免费使用此InfluxDB集成Bcache是Linux内核块层中的缓存,用于访问快速磁盘驱动器。例如,基于闪存的固态硬盘(SSD)作为缓存,用于一个或多个较慢的硬盘驱动器作为读写缓存或只读缓存。它实际上创建了使用旧技术和新技术的混合卷,即使在最苛刻的环境中也能提供性能提升。
Bcache还带来了一系列独特的优势,例如,它通过避免随机写入并将其转换为顺序写入来最小化写放大。这本质上合并了I/O操作,旨在帮助缓存和主存储设备。这不仅提高了对写敏感的主存储(如RAID 5集)的性能,而且还大大延长了用作缓存的基于闪存的SSD的使用寿命 - 从而最大化您的投资回报率。
为什么使用Bcache的Telegraf插件?
固态硬盘(SSD)在性能上相对于传统的旋转式SATA和SAS硬盘有了显著提升,而SSD的成本也大幅下降;这使得更多解决方案可以转向使用SSD。以前,成本是组织在转向SSD时需要克服的主要障碍,但随着存储成本的急剧下降,这一问题正逐渐但肯定地不再成为问题。此外,由于它是基于闪存的存储,设备内部没有移动部件会损坏(从而减少了数据丢失的可能性),这意味着越来越多的企业(在更重的负载下)正在使用比以往任何时候都多的SSD。
Bcache提供了一些有关您的缓存性能的有用指标,并可以使用Bcache Telegraf插件将这些指标导入InfluxDB实例。默认情况下,Bcache Telegraf插件收集所有Bcache设备的指标,但您也可以将指标收集限制为指定的Bcache设备。
运行以下命令时,可以在您的环境中正确执行Bcache插件:
./telegraf --config telegraf.conf --input-filter bcache --test
到那时,您可以使用以下配置来确保一切按您期望的方式运行。只需将以下示例中的默认值替换为您部署上下文中最有意义的值即可。
[bcache] # Bcache sets path # If not specified, then default is: # bcachePath = "/sys/fs/bcache" # # By default, telegraf gather stats for all bcache devices # Setting devices will restrict the stats to the specified # bcache devices. # bcacheDevs = ["bcache0", ...]
用于监控的关键Bcache指标
您可以收集的一些重要的Bcache指标包括
您可以收集的一些重要的Bcache指标包括
Dirty_data
- 此支持设备在缓存中的脏数据量。与缓存集版本不同,它持续更新,但可能略有偏差。
Bypassed
- 绕过缓存进行的I/O(读取和写入)量
cache_bypass_hits
Cache_bypass_misses
- 旨在跳过缓存的I/O命中和未命中仍然被计数,但在这里分开。
cache_hits
cache_misses
Cache_hit_ratio
- Bcache按每个IO单独计算命中和未命中;部分命中被计为未命中。
Cache_miss_collisions
- 当数据即将从缓存未命中事件插入缓存时,但与写入竞争,并且数据已存在时(通常为0,因为缓存未命中同步已重写)的实例计数。
Cache_readaheads
- 读取预取发生次数的计数