如何使用 vCenter 警报自动监控 VSAN 组件阈值?



原文:http://www.virtuallyghetto.com/2014/04/how-to-automatically-monitor-vsan-component-threshold-using-a-vcenter-alarm.htmlhtml



       上周,一篇颇有意思的 VMware 知识库文章(由Ron Oglesby分享)引发了个人注意。api

wKiom1OhQczhdaFSAAFLjg-HgNs569.jpg


        本周早些时候,我注意到 Ron 热衷于寻找各类不一样接口中的当前 VSAN 组件数:RVC(vSphere Ruby控制台), Windows Linux 上或经过 vSphere API 都可使用。最近,我甚至还使用 vSphere API 建立了一些脚本(请参见此处此处 ),来远程查询每一个 ESXi 主机的 VSAN 组件数。我很是喜欢这种从管理角度出发、无须登陆每单个 ESXi 主机的作法。ruby


        阅读了VMware 知识库文章 2071379 以后,我明白了 Ron 提出问题的缘由,由于我也感受此知识库文章是不完整的。固然,对于不具备怀疑眼光的人来讲,这个问题可能不明显,由于此知识库文章确实回答了一些问题,但它并无切实深刻到任何对客户有用的详细细节。这篇文章提到,当达到某特定主机 VSAN 组件数阈值的 80% 时,VSAN 可以触发警报。但没有说明此警报是如何以及在哪里触发的细节。首先,这里所提到的警报是针对 vCenter Server 的。其次,这是经过使用文章中提到的 VOBVMkernel 监控)ID 实现的。实际上,您能够基于这些 ESXi 主机生成的 VOB 来建立 vCenter 警报。关于这一内容,我曾在几篇文章中阐述过,如关于为您的 EXSi 主机检测重复 IP 地址的文章。建立此类 vCenter 警报的过程至关简单,并且我认同应默认建立这个警报(我会给工程团队提出相关内部建议)。架构


       如下是建立vCenter Server 警报的步骤,以便在达到 80% VSAN 组件数阈值时发出通知:分布式

1 - 建立新的 vCenter Server 警报并命名,而后为主机选择“Monitor specific event…(监控特定事件,并确保已启用。ide

wKioL1OhQcuR97CbAACoL0eq6oU234.jpg


2 事件添加esx.problem.vob.vsan.lsom.componentthreshold工具

wKiom1OhQhGzEYY5AADXRPisw38631.jpg


3 可将操做保留为空,这样将仅生成一个常规 vSphere 警报,或者也可指定一个操做。测试


        建立完 vCenter 警报以后,咱们可能须要检测其是否能在嵌套 ESXi VSAN 环境 或实际 VSAN 环境中正常运行。下一问题是咱们怎样建立 2400 VSAN 组件?无需费时费力地手动建立 2400 个虚拟机,咱们能够利用 ESXi Shell 中一个小巧的工具轻松完成,名为/usr/lib/vmware/osfs/bin/objtoolui


       免责声明:本文所用工具和脚本主要用于教育和参考目的。如下命令将建立一个名为object-1、大小为 1KB 的对象,使用 VSAN 策略 hostFailuresToTolerate=0 & forceProvisioning=1spa

/usr/lib/vmware/osfs/bin/objtoolcreate -s 1KB -a 3 -n object-1 -p “((\”hostFailuresToTolerate\” i0)(\”forceProvisioning\” i1))”

       对于此特定测试,咱们只想快速建立 2400 VSAN 组件。为此,您须要大约 32GB 内存以达到所支持 VSAN 组件的最大量。对于真实 VSAN 环境来讲,这个要求不成问题,可是,对于个人嵌套 ESXi 环境来讲,我必须为此测试增长资源配置。由于 VSAN 是分布式对象存储,因此建立的对象将随机存储在 VSAN 群集中。为了迅速达到 2400 个组件,我还把 3 ESXi 主机中的 2 个设为维护模式,以确保全部对象都建立在第一个 ESXi 主机中。

                              wKiom1OhQiWTK9Z5AADmA3gSlug119.jpg

       最后,为了辅助自动建立 VSAN 对象,我编写了可在 ESXi Shell 中运行的快速脚本

       建立的每一个对象都将有一个关联的 UUID,后者将保存在临时文件 /tmp/uuid 中,在确认vCenter 警报有效以后,可以使用下列脚原本删除对象。

wKiom1OhQonRSLQTAACY4mJtQ0c756.jpg

       

         达到 2400 VSAN 组件数后,您就能够看到,以前建立的警报因达到 80% 阈值而触发。

wKioL1OhQjPD6fKMAADq1pU6NCQ231.jpg


       欢迎在微博上关注我,这样在我发布博客文章后您就会收到通知,并可让您了解更多有关 VMware 存储的信息:@VMware中国


————————————————————————————————————————————


做者:William Lam 

现任 VMwareR&D 主管工程师,隶属 SDDC 新兴解决方案团队的一员。目前,他在 VMware 公司从事原型设计,构建新解决方案并将其推向市场。他的工做主要侧重于从 API  SDK 这两个角度进行软件定义的数据中心 (SDDC) 自动化以及 SDDC 通用集成和操做。他还与 VMware 内部的多个工程团队紧密合做,帮助提供设计和架构方面的前期反馈。最后,经过客户互动和反馈,他不断应对客户的挑战、坚持知足客户的需求,从而更好地改进 VMware 产品。

相关文章
相关标签/搜索