DIY NAS系列11 — ZFS 性能监控与管理

ZFS 是一种高度先进的文件系统,它内置了一些强大的工具来帮助我们监控和管理其性能。以下是一些您可能会发现有用的工具。

ZFS 内置监控工具

zpool iostat

zpool iostat 是一个用于实时监控 ZFS 存储池 I/O 活动的工具。它可以显示每个存储池的读取、写入和操作的带宽,以及待处理的读取和写入操作的数量。

您可以使用以下命令来运行 zpool iostat

zpool iostat -v

-v 选项可以显示每个存储池中的每个磁盘的详细信息。

zpool status

zpool status 命令显示 ZFS 存储池的健康状况和状态信息。您可以使用此命令来检查存储池是否有故障,并查看关于故障的详细信息。

您可以使用以下命令来运行 zpool status

zpool status

zfs get all

zfs get all 命令显示 ZFS 文件系统的所有属性,包括当前使用的磁盘空间、可用磁盘空间、数据压缩比率等等。

您可以使用以下命令来运行 zfs get all

zfs get all

下面我们将以 zpool iostat 命令为例,详细介绍一下使用方法。zpool iostat 是一个内建的监视工具,可以实时显示池 I/O 统计信息。要实现持续监视,可以在上面命令后面跟一个数字(刷新间隔,以秒为单位),可以指定刷新间隔,按 Ctrl+C 停止,还可以再跟一个数字指定一共显示多少条记录。

[root@localhost /]# zpool iostat
              capacity     operations     bandwidth 
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
SSD         74.7G  4.46T      0     29  57.6K   195K

# 每隔两秒显示一条,共显示5条
[root@localhost /]# zpool iostat 2 5
              capacity     operations     bandwidth 
pool        alloc   free   read  write   read  write
----------  -----  -----  -----  -----  -----  -----
SSD         74.7G  4.46T      0     29  57.6K   195K
SSD         74.7G  4.46T      0      0      0      0
SSD         74.7G  4.46T      0      0      0      0
SSD         74.7G  4.46T      0    100      0   478K
SSD         74.7G  4.46T      0      0      0      0

# 使用-v参数可以显示详细信息,池里的每个设备占一行
[root@localhost /]# zpool iostat -v
                                             capacity     operations     bandwidth 
pool                                       alloc   free   read  write   read  write
-----------------------------------------  -----  -----  -----  -----  -----  -----
SSD                                        74.7G  4.46T      0     29  57.6K   195K
  scsi-0ATA_SanDisk_SDSSDH31_180546800457  14.9G   913G      0      5  11.5K  39.0K
  scsi-0ATA_SanDisk_SDSSDH31_181290801368  15.0G   913G      0      5  11.6K  38.9K
  scsi-0ATA_SanDisk_SDSSDH31_180546801146  15.0G   913G      0      6  11.6K  39.1K
  scsi-0ATA_SanDisk_SDSSDH31_181325802022  14.9G   913G      0      5  11.5K  39.0K
  scsi-0ATA_SanDisk_SDSSDH31_180546801835  14.9G   913G      0      5  11.5K  39.0K
-----------------------------------------  -----  -----  -----  -----  -----  -----

# 持续监控
[root@localhost /]# zpool iostat -v 2 3
                                             capacity     operations     bandwidth 
pool                                       alloc   free   read  write   read  write
-----------------------------------------  -----  -----  -----  -----  -----  -----
SSD                                        74.7G  4.46T      0     29  57.6K   195K
  scsi-0ATA_SanDisk_SDSSDH31_180546800457  14.9G   913G      0      5  11.5K  39.0K
  scsi-0ATA_SanDisk_SDSSDH31_181290801368  15.0G   913G      0      5  11.6K  38.9K
  scsi-0ATA_SanDisk_SDSSDH31_180546801146  15.0G   913G      0      6  11.6K  39.1K
  scsi-0ATA_SanDisk_SDSSDH31_181325802022  14.9G   913G      0      5  11.5K  39.0K
  scsi-0ATA_SanDisk_SDSSDH31_180546801835  14.9G   913G      0      5  11.5K  39.0K
-----------------------------------------  -----  -----  -----  -----  -----  -----
                                             capacity     operations     bandwidth 
pool                                       alloc   free   read  write   read  write
-----------------------------------------  -----  -----  -----  -----  -----  -----
SSD                                        74.7G  4.46T      0      0      0      0
  scsi-0ATA_SanDisk_SDSSDH31_180546800457  14.9G   913G      0      0      0      0
  scsi-0ATA_SanDisk_SDSSDH31_181290801368  15.0G   913G      0      0      0      0
  scsi-0ATA_SanDisk_SDSSDH31_180546801146  15.0G   913G      0      0      0      0
  scsi-0ATA_SanDisk_SDSSDH31_181325802022  14.9G   913G      0      0      0      0
  scsi-0ATA_SanDisk_SDSSDH31_180546801835  14.9G   913G      0      0      0      0
-----------------------------------------  -----  -----  -----  -----  -----  -----
                                             capacity     operations     bandwidth 
pool                                       alloc   free   read  write   read  write
-----------------------------------------  -----  -----  -----  -----  -----  -----
SSD                                        74.7G  4.46T      0     83      0   319K
  scsi-0ATA_SanDisk_SDSSDH31_180546800457  14.9G   913G      0      7      0  78.4K
  scsi-0ATA_SanDisk_SDSSDH31_181290801368  15.0G   913G      0     22      0  77.2K
  scsi-0ATA_SanDisk_SDSSDH31_180546801146  15.0G   913G      0      9      0  35.7K
  scsi-0ATA_SanDisk_SDSSDH31_181325802022  14.9G   913G      0     20      0  43.2K
  scsi-0ATA_SanDisk_SDSSDH31_180546801835  14.9G   913G      0     23      0  84.9K
-----------------------------------------  -----  -----  -----  -----  -----  -----

ZFS 第三方监控工具

ZFS 除了其内置的性能监控工具外,还有许多第三方工具可以帮助您更好地监控和理解 ZFS 的性能。下面是一些常见的第三方 ZFS 监控工具:

1. ZFS on Linux Metrics (ZoL Stats):ZoL Stats 是一个 Grafana 仪表盘,用于显示通过 ZFS on Linux 暴露的度量值。它可以显示存储池和数据集的 IO,以及 ARC(适应性替换缓存)的使用情况等。

2. ZFS System Monitor (ZSysMon):ZSysMon 是一个用于监视 ZFS 系统性能的 Shell 脚本。它可以显示存储池的状态,包括读写操作,带宽,等待 I/O,存储池使用等信息。

3. Collectd-zfs:这是一个 collectd 插件,可以获取和记录 ZFS 的性能统计信息。Collectd 是一个守护程序,可以收集系统和应用程序的性能指标。使用 collectd-zfs 插件,您可以将 ZFS 的性能数据集成到您的现有的监控系统中。

4. Telegraf & InfluxDB:Telegraf 是一个插件驱动的服务器代理,用于收集和报告指标。InfluxDB 是一个用于存储和查询指标和事件的时间序列数据库。Telegraf 有一个 ZFS 插件,可以收集 ZFS 的性能数据,并将其存储在 InfluxDB 中。然后,您可以使用 Grafana 或其他可视化工具来查看这些数据。

这些第三方工具提供了 ZFS 的详细和可视化的性能指标,使您能够深入了解 ZFS 的性能状况,并据此进行优化和故障排除。

写在最后

在 ZFS 系列文章中,我们已经对 ZFS 文件系统进行了全面而深入的探讨,介绍了如何部署 ZFS、如何管理存储池和卷、如何创建和使用快照,以及如何配置和使用 NFS 和 SMB 共享。通过这些文章,我们希望您能对 ZFS 的强大功能和灵活性有一个全面的了解,并能够在您自己的系统中实现和使用这些功能。

从下一篇博文开始,我们将从外部到内部、从上到下深入探讨 NAS 应用平台,首篇将重点介绍出口网关 Traefik 的应用。

下篇预告: DIY NAS 系列12 -- Traefik 出口网关配置

Avatar photo

关于 木子

Founder of the Rocky Linux Chinese community, MVP、VMware vExpert、TVP, advocate for cloud native technologies, with over ten years of experience in site reliability engineering (SRE) and the DevOps field. Passionate about Cloud Computing、Microservices、CI&CD、DevOps、Kubernetes, currently dedicated to promoting and implementing Rocky Linux in Chinese-speaking regions.
用一杯咖啡支持我们,每一篇 [文档] 都经过我们实操,并非从网上一味的copy,期间花费了大量的心思,希望能够帮忙到您。
暂无评论

发送评论 编辑评论


|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇