终于到了这一篇,从数据层到应用层都是完全基于QCloud平台优化,完全将微软系应用架构搬到了国内云平台上,也算是国内第一例了。
牛皮吹完,说说正事儿,QCloud的监控虽然看起来非常“丰富”:
而且似乎没有统一的监控界面:
但实际上能够支持Windows企业级应用(前几篇构建的应用架构已经属于典型的传统应用,重数据层、重应用层),比如iis上的.net缓冲池、错误连接等,所以能够深入以业务级别来监控还需要专业的监控,而目前来说Windows方面最最专业的肯定不是Zabbix(至少开发成本来说),而是SCOM(System Center Operations Manager,同时也是我本人MVP研究的方向统称CDM方向),由于本篇不是基础篇,搭建过程及基本设置请参考《VMCloud基础篇》:http://vmcloud.info/?cat=131(红色为已完成搭建,蓝色是本次文章涉及的区域):
1、 根据基础篇准备好各项环境,第一个需要优化的就是系统相关监控项目,管理包的导入分为两种一个是主包,一个是语言包,语言包通常是后缀带_chs之类的,如下图(需要先导入主包才可以导入语言包):
2、 如何判断导入并应用是否成功?这里可以看两个地方:
a) 2110日志:
b) 看面板,将操作系统列调出,可以看到从原来未监控变成“正常”状态:
3、 我们确认下相关的规则是否被正常创建:
4、 现在就可以看到比QCloud平台更多的性能参数了,比如Nonpaged Pool、Pool Paged Bytes这些重要的内存参数:
5、 接着我们在SCOM创建一个自定义面板,来集中展示这些监控数据,就可以观察每台子机的内存使用情况,先新建一个管理包来集中收集变更的数据:
6、 创建一个文件夹来集中安放这些面板,并选择放在新建的MP上:
7、 默认会显示很多非必要的面板,这里做多一层优化,将多余的面板隐藏掉,点击查看——显示隐藏视图:
8、 勾选必要的面板即可:
9、 现在看起来就清爽多了:
10、 选择新建仪表板:
11、 选择网格布局并输入相关名字:
12、 现在可以添加小组件:
13、 这里要特别注意 组 与 计数器是有对应关系的:
(比如在“windows 服务器实例组”里可能不存在任何内存相关的计数器,这里可以通过打开某个计数器规则来检查对应对象)
14、 如果觉得计算机目标这块比较别扭,可以尝试更改下监控的对象:
更改成“性能视图”,这样可读性就高多了:
15、 以下为成品仪表板(左上为可用内存 性能视图、右边是SLA视图、左下是内存警告),当服务器发生异常时可以结合警告查看问题原因:
PS1:SCOM2016+SQL2016有个小坑,默认SCOM管理员账户若是SQL DB管理员,则默认权限的MSDB会丢失(https://blogs.technet.microsoft.com/kevinholman/2016/10/22/enabling-scheduled-maintenance-in-scom-2016-ur1/):
若不进行补全则会出现“The data access service account might not have the required permissions”错误
PS2:SCOM 2016安装MOM Agent还有一个坑,默认的本地账户没有授权,需要手动授权,会出现以下提示:
所以需要在DC上手动执行以下命令(https://blogs.technet.microsoft.com/kevinholman/2016/11/04/deploying-scom-2016-agents-to-domain-controllers-some-assembly-required/):
C:\Program Files\Microsoft Monitoring Agent\Agent>HSLockdown.exe QCloud_VMC_MG
/R “NT AUTHORITY\SYSTEM”