首页 > 代码库 > 全新SaaS运维监控平台构建书
全新SaaS运维监控平台构建书
第一部分 引言
伴随的IT服务的发展,IT服务的概念也在发生着巨大的变化。IT运维服务已经由原来局限在用户自身环境下的IT服务,延伸到覆盖公用云、私有云、外包服务商等多纬度、全天候的SaaS运维模式,
从狭义理解,IT服务仅仅是为了解决信息系统出现的故障,在系统出现停顿的时候可以快速的恢复。而目前的IT服务已经包含了更多的内容,IT服务渗透在信息系统的整个生命周期之中。本文基于该理念,对IT服务系统的实现进行分析研究。文章基于网脊运维通SaaS(Software as aService)模式理念,,构建统一平台下支持多类型用户使用的基于SaaS模式的IT自动化运维平台。使用户在使用效果上与企业自有IT服务运维平台基本没有区别,但节省了大量用于购买硬件设备、技术支持和维护运行的资金,同时使得原来分散在不同区域多个机构孤立的信息有了信息共享的条件,使得用户能对分散在不同地方的IT系统进行控制、并及时了解相关信息。
同时结合网脊运维通的手机APP,用户可以随时、随地地了解自身IT基础环境、业务系统等IT资源的可用性、性能、安全事件等主要监控类别,同时结合手机APP上的一键通功能,用户可以方便地对远端机器进行硬件重启,预录制命令脚本执行等方便、快捷的一键运维功能。
运维通集成了简单、实用的监控、远程操作等实用功能,让普通用户无需购买、安装复杂的IT运维系统就可以享受在线的IT监控、运维系统,同时具备即时通讯功能的工单流转系统,可将用户、外包服务商、IDC机房维护工程师等角色有机地整合在一起,是一个完全创新的基于SaaS模式的社交型IT运维技术平台。
第二部分 概述
2.1运维通设计背景
运维通的设计背景主要是针对目前互联网上的设备、应用越来越多,而一般客户的运维技术人员多在公司本部,系统、设备多托管在远端机房,他们希望能有一套集成了远程连接、在线监控的自动化运维解决方案,同时可以很好地集成到手机APP上,随时随地对远端设备进行监控或者简单常用的快捷操作等功能,同时IDC托管机房也希望可以拓展自身的业务范围,不停留在低价竞争的机柜出租业务上,而是可通过运维通系统对用户提供系统、实用的监控、远程维护、工单流转/考核等功能,从而可持续性地提升用户服务体验,提高自身品牌的客户美誉度。
2.2设计原则
在线系统的监控、运维与普通运维解决方案看似有许多相似的地方,但其实还是有很大的不同,普通运维解决方案部署在本地,监控的设备数量有限,使用的用户数量也有限,但在线SaaS系统则明显不同,监控的设备往往是海量数据,一个普通IDC就有上万台设备,用户数量则往往过千,如果采用普通IT运维网管软件的设计是完全不行的,同时在SaaS模式下,整个监控是在公网上完成,用户对安全性要求比较高,如果采用插件的方式,用户也一定会比较抵制,总之,在线SaaS运维系统的设计有其自身的特定,我们在开发运维通过程中,遵循了以下设计原则:
弹性化架构
考虑到在线SaaS系统的运营特点,运维通的设计采用了高度可扩展性的云系统架构,整个系统分为三个层次,按需部署的收集器、管理服务器以及数据库集群,任何层面的设备都是采用负载均衡的方式工作,任何设备实效后会自动切换到相应的健康设备上。
高性能
网脊运维通的收集器,每台至少可监控、管理500台设备(主要是snmp协议特点,而非运维通设计瓶颈),每台管理服务器至少可以管理30台收集器,一个2台管理服务器、60台收集器的小型运维通系统集群就可以很好地管理、监控3万台互联网设备,其性能指标是比较高的。
安全性
与完全运行在用户企业内部网络的本地监控系统不同,网脊运维通系统是为广大用户通过SaaS方式来监控、管理自身设备而研发的,所以网脊科技在开发过程中摒弃了其企业解决方案运维通的很多功能强大,但会牺牲安全性的监控项目和监控策略,用户设备无需安装插件,主要通过配置SNMP(支持V3)对特定的收集器的只读功能来实现监控功能,远程操作等通过配置IPMI的功能来实现,因为通过标准的网络管理协议来进行操作,与用户的业务系统是完全隔离的,安全性比存在后门的插件方式要强很多。
移动互联网
网脊运维通的操作,除了普通的web浏览器的工作方式外,手机APP的良好操作体验是比较重要的设计原则之一,我们将一些相对复杂的配置保留在web端,而查看、快捷远程操作等重要功能,我们在手机界面都很好地进行了拓展,用户可以很流畅地体验随身、随时对在线IT系统监控、快捷操作的易用、方便。
二级管理接口
网脊运维通的业务推广模式主要依靠与具备相应实力的IDC运营合作伙伴共同拓展的方式来实现,运维通设计了专门的合作伙伴二级管理接口,合作伙伴可以通过该管理界面实现:替换其专属LOGO、广告,批量导入/修改/删除用户、充值/余额查询、客户专属服务工程师分配等功能。
第三部分 运维通解决方案
运维通是一个监控、运维门户,用户只需经过简单的注册后,就可以在线实现互联网IT资源的监控、故障报警、报表、ITIL事件跟踪、一键通自动化运维等功能,同时具备,以保障客户互联网业务应用的可靠运行。
现在很多国内的IT用户都在考虑如何把自己的业务部署到私有云或混合云环境中,以增强其业务的可扩充性及高可用性,从理论上来说,云架构可以提供更高可用性的IT基础环境,但实际上云计算不是万能的,最近亚马逊及Google的多次重大云故障说明,云计算环境除了系统层面以上的应用软件问题,其更加复杂的架构及资源池算法等因素,都需要更专业的监控管理工具及具备云计算知识背景的运维人员才能很好胜任云平台的高可用运维,但一般企业显然不能把他的运维团队搬到运营商机房去,这时候,运维通就有了用武之地,下面简单介绍网脊运维通的主要特点:
3.1一键通功能
运维通的一键通功能,主要实现的功能就是通过预先配置好的IPMI接口协议,实现类似远程KVM的一些功能,主要可以实现以下功能:
远程开、关机----可对远程托管的已经死机、蓝屏的远端服务器,直接进行重启操作,无需IDC购买价格高昂的PDU设备,只需连接服务器主板上的IPMI接口,通过运维通软件就可以实现硬重启;
一键命令 ---- 对于常用的运维命令脚本,如:重启服务、重启进程等等,可预先设置好后,在手机APP上一键运行,当某个服务出现僵死,而自己不在电脑旁边时,这个功能就变的非常实用;
手机上也具备完整的一键通功能,具体使用界面可见下图:
3.2主机监控
在线SaaS监控系统中,最重要的部分是服务器主机的监控,通过监控主机的主要可用性、性能、日志等指标,用户可以随时了解和掌握放在远端数据中心机房的设备工作好坏,配合手机APP的及时推送信息,免除在IDC托管机房还需购置短信网关等问题,主机监控主要涉及的监控项目主要有:
CPU/内存 ---- 这是非常基本的监控项目,运维通以仪表板的方式直观地展现CPU、内存的消耗情况,让用户了解这一基本资源的消耗情况;
端口监控 ---- 与目前主流的云监控、SaaS监控系统的总端口流量监控不同,运维通的端口监控可以任意定义物理或虚拟端口的监控,对于多台设备托管在IDC,跑不同业务的用户该项功能非常实用,并且端口监控是以连续波形的方式展现,用户可以通过设定小时、日、周等方式变换视角。
进程监控 ----- 一般的云监控平台只可监控总进程数,这个对于网管人员非常不实用,运维通可以选择任意进程来进行监控,也是以连续波形的方式来展现。
磁盘监控------以图像化的方式展现目前所设定的监控磁盘、分区的总容量、可用容量等磁盘信息。
服务监控-----用户可设定被监控的任意服务端口,系统会自动监控其服务状态,如果端口down则为红色,正常则为绿色
手机界面展示如下:
3.3网站监控
网站监控也是SaaS监控中非常重要的部分,毕竟大部分的在线系统主要是各种网站,对于网站监控,网脊运维通可以从不同的监控点来监控被监控网站的延时响应时间,这对目前国内的网络环境还是有必要的,下图为网脊运维通网站监控实际的例子:
3.4自定义分组与拓扑图
网脊运维通除了针对主机、网站等进行监控外,还允许用户对该对象进行自定义分组,并且通过类似VISIO的绘图功能来绘制自己的网络拓扑图,让用户非常直观地了解自己被监控设备的工作情况,
3.5丰富的自定义报表功能
网脊运维通的报表是可以按照用户的需求进行自定义配置,自定义的规则可以监控的任意项目来进行设定,并可导出为PDF格式,具体设定项目见下图所示:
3.6丰富的事件查询机制
网脊运维通的事件机制比一般SaaS监控产品或云监控产品丰富,可按照系统的不同分类监控项目,如:主机、网站、磁盘、进程等等来进行分类查看,同时也可选择不同的时间区间来进行事件查看,支持信息内容检索、组件检索等等辅助功能,详细见下图:
3.7自定义阀值、报警
网脊运维通的监控项目,主要是在线服务器的一些重要的可用性、性能、事件等监控指标,每个监控项目,用户都可以自定义触发报警的阀值、报警级别等相关条件,做到事件、报警按照用户的意愿和需求来生成,免却大量无用报警、事件的烦恼。
第四部分 部署方案
网脊运维通的监控功能简单、实用,但考虑到是SaaS应用方式,故其部署相对普通的监控系统来说要庞大和复杂一些,运维通的架构其实是分为4个层面,收集器、交互层、管理服务器/数据库、前端负载均衡/web服务器。面向用户设备的是收集器,主要负责采集用户设备的snmp监控数据,通过IPMI/SSH/WMI等协议与设备进行互动,与收集器连接的中间层面为Radis和Memcache数据缓存及交互层面,该层面负责将收集器和管理服务器之间的交互,保证收集器出问题后,管理服务器可以维持数据的完整性并把数据交互到其他收集器,管理服务器和数据库负责存储用户配置信息、业务数据,前端负载均衡/web服务器负责与用户GUI交互。
4.1 部署方式
运维通主要是为大量用户同时使用而设计,其部署相对普通的内部局域网运维监控产品有所不同,运维通的部署分为以下4个层面:
1:收集器
收集器的部署,取决于监控用户的多少,一般按照每收集器监控500台主机左右来进行收集器部署,网络拓扑上,可采用双网口,与内部中间层面交互的接口用内部接口,速度快,网络环境封闭、安全,监控用户设备的接口使用外部接口。
2:配置服务器
配置服务器的部署数量主要取决于收集器的数量,一般按照30:1的数量来进行配比,配置服务器最好通过内部网络接口连接收集器,配置服务器无需外部接口,只需要连接收集器和数据库。
3:数据库
数据库存放所有的监控策略、监控到的各种数据、用户信息等等,当用户量比较大的情况下建议采用集群的方式来部署,运维通采用的是mongoDB,其集群部署最少需要5台设备。
4:nginx/web服务器
由于用户量比较大,采用nginx来做web服务器的负债均衡,web服务器采用的是Django方式,网脊运维通的网页内容相对还是比较简明,2000用户左右用一台web服务器都没什么问题,当用户数突破这个限制比较多的情况,可以使用Nginx负载均衡来解决。
网脊运维通与被监控设备直接需要开通相关通信接口如下表所示。部署前需要测试各端口是否可以正常通信。运维通部署的相关协议端口如下:
服务名称 | 端口 | 源地址 | 目的地址 | 备注 |
SSH | 22 | 收集器地址 | 公网被监控设备 | 远程命令等 |
WMI | 135 | 收集器地址 | 公网被监控设备 | windows命令等 |
SNMP | 161 | 收集器地址 | 公网被监控设备 | 监控数据 |
web服务 | 80/81 | 外部用户 | web服务器/nginx | web访问 |
数据库 | 27017/27018 | 配置服务器/web服务器 | 数据库集群 | 数据库服务 |
memcached | 11211 | web服务器 | 配置服务器 | 缓存服务 |
rpyc | 12233 | 收集器地址 | 配置服务器 | 传输连接服务 |
网脊运维通典型部署的拓扑图如下:
第五部分 服务方案
为了更好地在IDC及运营商合作伙伴推广网脊运维通解决方案,网脊公司将为合作伙伴提供运维通的实施、维护服务和二次开发服务。
5.1服务范围
服务对象范围包括:
1、合作伙伴的所有网脊运维通产品;
2、服务期限:一年。
5.2故障级别
问题级别 | 问题定义 | 处理时限 |
一级故障 | 业务中断或半中断状态,已影响用户的正常使用 | 现场服务,鉴于地域的因素,如果在非现场服务时间内,工程师到达现场的时间为2小时内,并4小时内修复故障或采用省地各局同意的替代方案恢复业务,保证业务的正常运行和用户的正常使用 |
二级故障 | 存在故障隐患,业务处理能力下降,并影响了用户业务的正常使用 | 6小时修复 |
三级故障 | 对业务有轻微影响,但不影响业务运行和用户正常使用的问题 | 12小时内给予技术支持 |
四级故障 | 不影响业务运行和用户使用的问题 | 24小时内给予技术支持 |
5.3工作内容
5.3.1日常支持
1、在本次运维通的服务项目中,网脊工程师将为省地各局提供日常的支持服务,包括7*24小时的电话热线服务、邮件服务以及传真服务。支持的内容可以包括运维通的配置疑问,产品咨询等非监控系统故障的问题。
2、客户服务经理根据需求提供服务计划,定期与省地各局沟通控制服务质量,并在服务实施中负责相关协调。
5.3.2现场服务工程师工作内容
为省地各局提供每月二天的5×8驻场服务,由熟悉运维通产品和熟悉省地各局网络环境的现场工程师执行,现场工程师1人,按照省地各局公司考勤进行考核,驻场服务工作内容如下:
1、 紧急故障处理
2、 运维通变更支持
3、 系统监控
4、 运维通配置策略优化
5、 运维通软件升级
6、 运维通运维文档
7、 培训服务
5.4 日常工作内容详细说明
5.4.1日常服务
省地各局服务需求
1、需设置专门的客户服务经理及专家支持团队,提供支持人员联系信息;
2、客户服务经理根据需求需提供服务计划,定期与省地各局沟通控制服务质量,并在服务实施中负责相关协调。
厂家提供7×24小时服务热线,提供如下技术支持:
1)、产品技术咨询;
2)、故障申报及处理;
3)、培训需求受理;
4)、系统功能实现方案设计;
5)、提供对省地各局提供的所有服务的全程处理记录文档;
6)、为省地各局提供技术支持问题知识库。
服务说明
(1)客户服务经理及专家支持团队―――可详见6.2部分;
(2)客户经理提供服务计划、定期沟通并协调相关事宜,在6.2部分中已经包括;
厂家承诺提供以下服务及支持:
1)、产品技术咨询;
2)、故障申报及处理;
3)、培训需求受理;
4)、系统功能实现方案设计;
5)、提供对省地各局提供的所有服务的全程处理记录文档;
6)、为省地各局提供技术支持问题知识库。
5.4.2客户服务经理及专家支持团队
省地各局服务需求提供一对一客户服务经理及专家支持团队
服务说明
(1)针对省地各局提供一对一服务的客户服务经理,省地各局对服务有了新的要求及需要改进的地方可直接联系客户服务经理,由客户服务经理做出统一安排。
(2)作为运维通厂商,网脊能够为省地各局提供强大的专家支持队伍。
5.5运维通培训支持
省地各局服务需求 提供运维通系统培训服务
服务说明
(1)在省地各局存在运维通体系培训需求时,网脊将根据当月服务时间、服务内容以及培训人员能力水平协调提供。
(2)当运维通系统出新的版本、功能模块、补丁版本时,网脊将对这些部分出具介绍邮件,在省地各局需要进一步了解得情况下,可安排培训。
(3)当省地各局有新人到岗时,第一时间安排运维通基础培训。
网脊运维通项目组
2014年6月