论文部分内容阅读
摘 要:通过对播控平台现有zabbix监控功能及日常使用方面的经验,总结出需要在现有基础上增加对于服务器硬件层面的监控,结合服务器厂家提供的基础性能监控OMSA研究讨论出一种可为平台各服务器进行硬件监控的方案。
关键词:zabbix;OMSA;硬件监控
一、前言
江西iptv集成播控平台包含53路高清、77路标清直播频道,所有信号经由卫星机接收,编码器转码分为两种码流HLS和udp,HLS为单播,udp为组播,单播通过中心CDN服务器传输给运营商,组播通过组播交换机传输给电信运营商。为全省人民提供优质的直播视听服务。
为了更好的服务全省人民,平台提供了各类增值业务。增值业务部署于平台服务器集群中,集群服务器数量200余台。服务器分属于4个区域:中心区域,电信区域,联通区域,移动区域。区域内部靠华为9306汇聚链接,联通、移动、电信区域互不相连,中心区域可达其他三大区域。
二、监控系统
监控的原理是通过部署在相关设备上的信息收集程序对相关设备进行信息收集并且在需要的情况下上传到特定的服务端进行信息处理,一般情况下处于相关设备上的称为客户端,对客户端传递来的信息进行处理的成为服务端。大多数场合使用的都是C/S方式即客户端-服务端架构,另外还有客户端-代理-服务端这种架构方式。
监控的作用是告警和预警,平台部署监控有利于提前发现问题和在出现问题的时候提醒技术人员迅速处理,设计报警的时候需要考虑报警的合理性和报警效率。
ZABBIX监控即使一种分布式且功能齐全的开源告警监控系统,拥有灵活的扩展性和丰富的功能。
江西iptv集成播控平台有大量的戴尔服务器,而戴尔服务器的硬件信息是通过IDRAC进行管理的,IDRAC不支持与zabbix的数据接口进行对接,不能满足我们的需求。通过多方咨询,戴尔官方还提供了一款开源名为OMSA的IT系统管理解决方案。
三、 OMSA
OMSA(全称Openmanage Server Administrator),是戴尔公司发布的一套IT系统管理解决方案。其提供了web界面和操作系统相关的命令行工具,技术人员可以通过这两种方式对服务器硬件层面进行查询和管理。
四、编写系统脚本
通过运行/opt/dell/srvadmin/bin/omreport chassis命令可以初步的得到服务器硬件的基本状态,例如cpu,内存,风扇,电源等的健康状态。但是这需要登录服务器运行命令才能得到输出结果,为了实现自动化运维的思路,需要把命令的关键输出信息进行收集并且传递到zabbix相关agent里面进行key的制作。让每台服务器的硬件健康信息呈现在现有的zabbix监控界面。
(一)脚本实例
设定zabbix收集信息的命令:
UserParameter=hardware_cpu_model,awk -v hardware_cpu_crontol=`omreport chassis biossetup|awk '/CState/{if($NF=="Enabled") {print 0} else {print 1}}'` -v hardware_cpu_c1=`omreport chassis biossetup|awk '/C1[-|E]/{if($NF=="Enabled") {print 0} else{print 1}}'` 'BEGIN{if(hardware_cpu_crontol==0 && hardware_cpu_c1==0){print 0} else {print 1}}'
上面为收集cpu健康状态并且把是否ok的信息传递到zabbix的agent的一个简单的脚本,其他的收集内存,风扇等都是通过类似的命令格式进行收集的。
服务器上面的监控脚本编写完成,需要在zabbix页面上添加key以便呈现在监控页面及设置报警触发器
(二)触发器的阈值
Zabbix客户端模式的报警流程是先先收集到服务器的信息,然后储存到zabbix自己的数据库里面,并且该数值与设定的触发器值进行比较,如果达到阈值就会触发报警,在zabbix首页进行显示,并且如果设定声音报警或者其他动作报警(微信、短信等)就会发送报警信息到相关终端。
关于报警的阈值需要按照实际情况进行配置。报警的严重性级别也可以按照对生产环境的影响程度进行区分。Cpu、内存这种直接影响到现网业务稳定性的关键性硬件是必须设置为最高级别严重性的,因为这几个硬件如果出现问题,对服务器而言是灾难性的。
1、訪问zabbix控制页面http://xxx:85
2、点击配置-主机-选择相关主机-监控项-创建监控项
3、填写名称、类型、键值、信息类型、数据类型等,填写完成点击更新即可创建完成。
(三)监控效果
监控项可以配置为固定模板以方便对整个集群服务器添加监控。
1、配置-模板-创建模板-填写相关项信息。
2、对每台服务器进行模板链接即可创建成功。
3、声音及页面弹窗报警
IPTV播控平台是7*24小时都有值班人员的高度监测环境,播出系统几乎完全封闭于一个内部网络架构,所以微信报警这种需要外网环境基础的报警方式并不适用。声音及弹窗报警这种无外网环境且实时的性最高的报警方式是最适合IPTV平台的,只需在监控大屏上投放zabbix监控界面即可,如果遇到事件即会在监控大屏显示且会有报警声音传出。
五、结语
在对整个集群配置完成集群硬件健康报警管理后,IPTV平台的集群稳定性得到了充足的提升,对每日运维巡检工作也大大提高了效率,运维人员无需频繁进入IDC机房进行硬件设备的巡检,只需对监控选项进行一定程度的信息查看即可,运维人员在中心机房就可以远程做到对各个机房设备的硬件健康监控,当某一服务器硬件部分出现了一定程度的健康下降时,报警信息会及时的呈现在监控大屏上,故障反应时间精确到秒级,运维人员在接收到报警后可以迅速做出应对,剔除失败的业务服务器,抢修事故机器等,从而实现高度自动化运维,安全播出保障工作也得到了进一步的提升。
关键词:zabbix;OMSA;硬件监控
一、前言
江西iptv集成播控平台包含53路高清、77路标清直播频道,所有信号经由卫星机接收,编码器转码分为两种码流HLS和udp,HLS为单播,udp为组播,单播通过中心CDN服务器传输给运营商,组播通过组播交换机传输给电信运营商。为全省人民提供优质的直播视听服务。
为了更好的服务全省人民,平台提供了各类增值业务。增值业务部署于平台服务器集群中,集群服务器数量200余台。服务器分属于4个区域:中心区域,电信区域,联通区域,移动区域。区域内部靠华为9306汇聚链接,联通、移动、电信区域互不相连,中心区域可达其他三大区域。
二、监控系统
监控的原理是通过部署在相关设备上的信息收集程序对相关设备进行信息收集并且在需要的情况下上传到特定的服务端进行信息处理,一般情况下处于相关设备上的称为客户端,对客户端传递来的信息进行处理的成为服务端。大多数场合使用的都是C/S方式即客户端-服务端架构,另外还有客户端-代理-服务端这种架构方式。
监控的作用是告警和预警,平台部署监控有利于提前发现问题和在出现问题的时候提醒技术人员迅速处理,设计报警的时候需要考虑报警的合理性和报警效率。
ZABBIX监控即使一种分布式且功能齐全的开源告警监控系统,拥有灵活的扩展性和丰富的功能。
江西iptv集成播控平台有大量的戴尔服务器,而戴尔服务器的硬件信息是通过IDRAC进行管理的,IDRAC不支持与zabbix的数据接口进行对接,不能满足我们的需求。通过多方咨询,戴尔官方还提供了一款开源名为OMSA的IT系统管理解决方案。
三、 OMSA
OMSA(全称Openmanage Server Administrator),是戴尔公司发布的一套IT系统管理解决方案。其提供了web界面和操作系统相关的命令行工具,技术人员可以通过这两种方式对服务器硬件层面进行查询和管理。
四、编写系统脚本
通过运行/opt/dell/srvadmin/bin/omreport chassis命令可以初步的得到服务器硬件的基本状态,例如cpu,内存,风扇,电源等的健康状态。但是这需要登录服务器运行命令才能得到输出结果,为了实现自动化运维的思路,需要把命令的关键输出信息进行收集并且传递到zabbix相关agent里面进行key的制作。让每台服务器的硬件健康信息呈现在现有的zabbix监控界面。
(一)脚本实例
设定zabbix收集信息的命令:
UserParameter=hardware_cpu_model,awk -v hardware_cpu_crontol=`omreport chassis biossetup|awk '/CState/{if($NF=="Enabled") {print 0} else {print 1}}'` -v hardware_cpu_c1=`omreport chassis biossetup|awk '/C1[-|E]/{if($NF=="Enabled") {print 0} else{print 1}}'` 'BEGIN{if(hardware_cpu_crontol==0 && hardware_cpu_c1==0){print 0} else {print 1}}'
上面为收集cpu健康状态并且把是否ok的信息传递到zabbix的agent的一个简单的脚本,其他的收集内存,风扇等都是通过类似的命令格式进行收集的。
服务器上面的监控脚本编写完成,需要在zabbix页面上添加key以便呈现在监控页面及设置报警触发器
(二)触发器的阈值
Zabbix客户端模式的报警流程是先先收集到服务器的信息,然后储存到zabbix自己的数据库里面,并且该数值与设定的触发器值进行比较,如果达到阈值就会触发报警,在zabbix首页进行显示,并且如果设定声音报警或者其他动作报警(微信、短信等)就会发送报警信息到相关终端。
关于报警的阈值需要按照实际情况进行配置。报警的严重性级别也可以按照对生产环境的影响程度进行区分。Cpu、内存这种直接影响到现网业务稳定性的关键性硬件是必须设置为最高级别严重性的,因为这几个硬件如果出现问题,对服务器而言是灾难性的。
1、訪问zabbix控制页面http://xxx:85
2、点击配置-主机-选择相关主机-监控项-创建监控项
3、填写名称、类型、键值、信息类型、数据类型等,填写完成点击更新即可创建完成。
(三)监控效果
监控项可以配置为固定模板以方便对整个集群服务器添加监控。
1、配置-模板-创建模板-填写相关项信息。
2、对每台服务器进行模板链接即可创建成功。
3、声音及页面弹窗报警
IPTV播控平台是7*24小时都有值班人员的高度监测环境,播出系统几乎完全封闭于一个内部网络架构,所以微信报警这种需要外网环境基础的报警方式并不适用。声音及弹窗报警这种无外网环境且实时的性最高的报警方式是最适合IPTV平台的,只需在监控大屏上投放zabbix监控界面即可,如果遇到事件即会在监控大屏显示且会有报警声音传出。
五、结语
在对整个集群配置完成集群硬件健康报警管理后,IPTV平台的集群稳定性得到了充足的提升,对每日运维巡检工作也大大提高了效率,运维人员无需频繁进入IDC机房进行硬件设备的巡检,只需对监控选项进行一定程度的信息查看即可,运维人员在中心机房就可以远程做到对各个机房设备的硬件健康监控,当某一服务器硬件部分出现了一定程度的健康下降时,报警信息会及时的呈现在监控大屏上,故障反应时间精确到秒级,运维人员在接收到报警后可以迅速做出应对,剔除失败的业务服务器,抢修事故机器等,从而实现高度自动化运维,安全播出保障工作也得到了进一步的提升。