×

微信扫一扫,快捷登录!

去哪儿网运维平台的演进

标签: 暂无标签
背景
1. 运维工作量逐渐增大
最近几年,Qunar的网络设备数量逐年增加,但是netops的人员还一直维持在很少的几个人,单人运维工作量持续增大;
2. 运维方式效率不高
目前变更操作基于命令行和脚本进行,需要netops手动登录目标设备和执行操作,操作内容包含大量简单和重复的操作;
3. 运维变更存在风险
基于命令行和脚本的变更操作一旦操作疏忽会导致不可估量的风险,除此之外,是谁进行了什么操作,也没有记录,不利于操作审计核查。
概况介绍
基于上述背景考虑,给出相应的优化思路,如下:
·         工具命令集成。将运维常用工具和命令集成到平台和服务中,让平台来执行频繁的重复操作;
·         操作自动化。分解常见的运维内容为基础指令集,集成到平台中为一系列的可自动执行的任务列表;
·         操作逻辑智能检测。对操作预检查,杜绝不可控的变更,原子操作,闭包检查,杜绝异常操作,异常自动回滚;
·         操作权限分级控制。任务和用户双向权限分级,不同的操作内容设定不同的权限才可操作,不同的登录用户赋予不同的权限,如此来防止不可控的用户操作;
·         操作记录追踪审计。记录每项操作的执行人,内容,时间和结果到数据库,对操作可后期审计,异常操作追溯。
结合上述优化思路和netops日常运维内容,我们上线了qunar网络设备运维平台。平台截图如下:
详细说明
运维平台架构图
平台数据流图
下面逐一介绍平台各个功能模块:
1.权限控制
·         操作权限分级,总共分为5级,权限从低到高分别为访客,只读,读写,管理员和超级管理员;

·         具体原子操作绑定对应级别的权限上,譬如访客只能查看有限的信息,只读用户可以执行读设备信息操作等等;
Tips:
·         高权限可以赋予比自己低的权限给其他用户,可以查看自己授权的用户的操作日志。用户不能查看和自己相同权限或比自己权限高用户操作日志。
·         同一个待授权的用户可以多次被授予不同级别的临时权限,在完成指定操作之后,撤销授权。在保证安全性的同时保证灵活性。
2.操作及任务
本平台可支持如下的自动化操作:
·         扫描抓取核心交换机和接入交换机关联关系;
·         抓取,备份,同步交换机全局和各个端口配置配置数据;
·         端口up/down,修改端口描述,修改端口速率,端口置为trunk;
·         端口分配vlan;
·         端口锁定防止操作;
用户确认执行某项操作后,平台立即启动对应的celery任务。本平台任务分为两类任务:
·         及时任务。任何平台支持的自动化运维操作对应一项celery及时任务。用户确认操作后,celery启动对应的任务,保证任务执行正确性,如果执行异常,回滚并警告用户。单个设备操作任务事实上也是自动ssh到目标机器上执行相应网络设备变更命令。
·         定时任务。将一些日常运维操作映射为平台内置定时任务,可以由用户手动触发一次性或循环定时操作。
Tips: 所有任务均会自动记录详细日志,用户视权限在日志模块查询相应的操作日志。
3.监控管理
本平台监控两类数据,一类是网络层次,粒度的是交换机和关联的接入交换机组成的小集群;一类是设备层次,粒度是单个交换机端口。
对于网络层次监控,基础数据来源于各个交换机端口监控数据,基于核心交换机和接入交换机关联数据通过weathermap绘图,在平台上渲染展示出来。


平台可以基于设备基础信息进行自动发现:
·         发现核心交换机和接入交换机关联关系,绘拓扑图;
·         发现各端口状态,发现端口异常状态,譬如端口;
·         发现各端口间流量负载情况,发现流量异常情况;
如上图所示,各个设备之间连接流量负载一目了然,灰色表示没有流量,绿色为负载正常,红色表示负载过重。
对于设备端口指标监控,基于collectd的snmp远程抓取来实现。用户在平台上管理和配置设备监控指标和模板。指标和模板变更后,平台自动通知Marathon平台更新collectd抓取集群上的抓取docker实例。
设备监控指标数据抓取架构如下:

平台监控配置有如下特点:
·         配置灵活高效。可以从指标,模板,匹配规则三个维度进行配置,一旦配置完毕,新增同类新机器上架,老机器下架监控自动更新;
·         动态扩容,负载均衡。使用docker和marathon实现抓取集群的动态扩容和负载均衡;单collectd抓取实例抓取多台网络设备指标,单抓取机启动多个抓取实例,每个机房多台抓取机来实现负载均衡。
Watcher上设备监控指标图如下:


持续优化
结语
Qunar网络设备运维平台为了解决实际运维工作出现的难题而生,提高了运维效率,降低了操作风险,优化了运维流程。后续将针对netops面对的更复杂的问题快速迭代和持续优化。(刘亮原创





上一篇:盛大专家介绍全面探究运维最佳实践
下一篇:如何打造一个高端形象的云运维平台?
monicazhang

写了 2297 篇文章,拥有财富 12859,被 21 人关注

您需要登录后才可以回帖 登录 | 立即注册
B Color Link Quote Code Smilies

成为第一个吐槽的人

Powered by IT 运维管理
返回顶部