首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在FreeBSD中使用SNMP监控ZFS?

如何在FreeBSD中使用SNMP监控ZFS?
EN

Server Fault用户
提问于 2011-04-23 20:46:18
回答 2查看 7.5K关注 0票数 2

我想用SNMP来监视它们:

代码语言:javascript
复制
zpool iostat -v 1

每次开车和加起来。

代码语言:javascript
复制
zpool status

擦洗为1,而不是擦洗为0。

代码语言:javascript
复制
zpool status -x

监视$? (返回值)。当值不是0时发送陷阱。

代码语言:javascript
复制
zfs list

旧的和免费的空间。

需要什么样的脚本?

EN

回答 2

Server Fault用户

回答已采纳

发布于 2011-05-14 21:20:06

假设您使用的是need,那么您可能需要按值编写脚本。然后,使用snmpd.conf手册页“扩展代理功能”部分中描述的技术,将这些脚本的引用添加到snmpd.conf中。

例如,/root/bin/myzstatus

代码语言:javascript
复制
#!/bin/sh
/sbin/zpool status -x $1

在snmpd.conf中:

代码语言:javascript
复制
extend status /root/bin/myzstatus tank

有了zfs/zpool,您就很幸运了,因为大多数子命令都有用于机器输出的选项,这将使摸索变得更容易。

票数 2
EN

Server Fault用户

发布于 2012-10-02 14:49:49

我不知道这个问题的答案,但是对于空间,我想出了一些办法。

在/etc/snmpd.config中,我找到了这个,并取消了注释,现在我有了存储值:

代码语言:javascript
复制
#
# Host resources module
#  This requires the mibII module.
#
begemotSnmpdModulePath."hostres" = "/usr/lib/snmp_hostres.so"

下面是一些输出:

代码语言:javascript
复制
# snmpwalk -v1 -c public $freebsdzfsmachine | grep -E "Storage.*\.22 " | less
HOST-RESOURCES-MIB::hrStorageIndex.22 = INTEGER: 22
HOST-RESOURCES-MIB::hrStorageType.22 = OID: HOST-RESOURCES-TYPES::hrFSOther
HOST-RESOURCES-MIB::hrStorageDescr.22 = STRING: /tank, type: zfs, dev: tank
HOST-RESOURCES-MIB::hrStorageAllocationUnits.22 = INTEGER: 512 Bytes
HOST-RESOURCES-MIB::hrStorageSize.22 = INTEGER: 2147483647
HOST-RESOURCES-MIB::hrStorageUsed.22 = INTEGER: 1030063349
HOST-RESOURCES-MIB::hrStorageAllocationFailures.22 = Counter32: 0
HOST-RESOURCES-MIB::hrFSStorageIndex.22 = INTEGER: 24

不幸的是,大小输出(1024 GiB)是错误的。根据df的存储大小是20 TiB,使用的是491 GiB,但出于某种原因,这里的大小恰好是2^31-1 * 512字节。(其中2^31-1是有符号32位整数的最大值)。使用的是正确的: 1030063349*512/1024/1024/1024 = 491。

幸运的是,它在我的80 GB根磁盘上运行得很好。我想它仅限于FreeBSD上的1 FreeBSD。在Linux客户端上使用SNMP的这个挂载显示了正确的值,hrStorageAllocationUnits是“整型: 32768字节”。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/262829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档