为获得最佳性能,请确保池容量在 90% 以下。
如果池非常满并且文件系统频繁更新(例如,在繁忙的邮件服务器上),池性能可能会降低。池处于已满状态可能会影响性能,但不会产生其他问题。如果主要工作负荷为不可改变的文件,则应将池保持在 95-96% 利用率范围内。即使将大部分静态内容保持在 95-96% 范围内,写入、读取和重新同步性能也会受到影响。
对池和文件系统空间进行监视以确保它们未满。
考虑使用 ZFS 配额和预留空间,以确保文件系统空间不超过池容量的 90%。
监视池运行状况
每周至少使用 zpool status 和 fmdump 监视冗余池一次。
每周至少使用 zpool status 和 fmdump 监视非冗余池两次。
定期运行 zpool scrub 以识别数据完整性问题。
如果使用的是使用者质量的驱动器,请考虑制定每周清理计划。
如果使用的是数据中心质量的驱动器,请考虑制定每月清理计划。
在更换设备或暂时减小池的冗余以前也应当运行清理,以确保所有设备当前都是可运转的。
监视池或设备故障-按如下说明使用 zpool status。此外,使用 fmdump 或 fmdump -eV 查看是否已出现任何设备故障或错误。
对于冗余池,每周使用 zpool status 和 fmdump 监视池运行状况一次
对于非冗余池,每周使用 zpool status 和 fmdump 监视池运行状况两次
池设备状态为 UNAVAIL 或 OFFLINE-如果池设备不可用,请检查在 format 命令输出中是否列出了该设备。如果在 format 输出中未列出该设备,则它对 ZFS 将是不可见的。
如果某个池设备具有 UNAVAIL 或 OFFLINE 状态,则这通常表示该设备已出现故障、电缆已断开或者出现某个其他硬件问题,如坏的电缆或坏的控制器已导致设备无法访问。
考虑配置 smtp-notify 服务,以便在硬件组件被诊断为有故障时通知您。有关更多信息,请参见 smf(5) 和 smtp-notify(1M) 的“通知参数”部分。
缺省情况下,某些通知设置为自动发送给 root 用户。如果您作为 root 用户在 /etc/aliases 文件中为您的用户帐户添加了一个别名,则将收到类似以下内容的电子邮件通知:
From noaccess@tardis.space.com Fri Jun 29 16:58:59 2012 Date: Fri, 29 Jun 2012 16:58:58 -0600 (MDT) From: No Access User <noaccess@tardis.space.com> Message-Id: <201206292258.q5TMwwFL002753@tardis.space.com> Subject: Fault Management Event: tardis:ZFS-8000-8A To: root@tardis.central.com Content-Length: 771 SUNW-MSG-ID: ZFS-8000-8A, TYPE: Fault, VER: 1, SEVERITY: Critical EVENT-TIME: Fri Jun 29 16:58:58 MDT 2012 PLATFORM: ORCL,SPARC-T3-4, CSN: 1120BDRCCD, HOSTNAME: tardis SOURCE: zfs-diagnosis, REV: 1.0 EVENT-ID: 76c2d1d1-4631-4220-dbbc-a3574b1ee807 DESC: A file or directory in pool 'pond' could not be read due to corrupt data. AUTO-RESPONSE: No automated response will occur. IMPACT: The file or directory is unavailable. REC-ACTION: Use 'fmadm faulty' to provide a more detailed view of this event. Run 'zpool status -xv' and examine the list of damaged files to determine what has been affected. Please refer to the associated reference document at http://support.oracle.com/msg/ZFS-8000-8A for the latest service procedures and policies regarding this diagnosis.
镜像您的存储池空间-可以使用 zpool list 命令和 zfs list 命令来确定文件系统数据占用的磁盘空间。ZFS 快照会占用磁盘空间;如果 zfs list 命令未列出它们,则它们可能暗地里占用磁盘空间。可以使用 zfs list –t 快照命令来确定快照占用的磁盘空间。