大型互联网公司运维体系
转自互联网
今天听了下百度的朋友讲了百度现有的运维体系,感觉还是很不错的,比较适合大的方向把握。
第一个是运维的日常工作:
1. 突发流量,这个需要及时的进行流量调度,以及排查为什么会有突发流量,是某个新的上线导致还是由
于配置错误还是运营推广。
2. 复杂环境关联。这个其实是最重要的,在一个复杂的系统环境中会有很多层次,我们要了解每个层次之
间的关联,以及每个层次的性能。所以一个完整的系统逻辑框架图和物理框架图是很有必要的。 3. 快速
开发并上线。这个是由于互联网的特性造成的,我们什么都是讲究一个快字,快速开发,快速部署,快速
增长,快速下线。
第二个是整体运维的框架:
1. 容量管理
2. 关联关系
3. 任务管理
4. 自动部署
5. 分布式集群和传统集群
6. 机器管理
要在一开始为这 6 项做好流程化和监控管理,同时最后要贯穿安全检测和灾难管理。
具体到运维框架里的自动化监控
数据采集:
1. 数据采集(主动提交到中心服务器上): 在 client 端部署公共插件和自定义脚本的一些监控
2. 服务器状态检测(由中心服务器隔时间去检测): 这个主要是中心服务器去检测服务器上的服务状态
和程序状态,以及用户访问的质量 3. 第三方信息:这个主要是跟公司内部系统相关联
数据处理:
1. 复杂计算:因为有些监控阈值不是单独一个值就能判定这个是否有问题,而是通过多个监控值进行计算
后才能确定是否有故障
2. 阈值判别
3. 智能分析:这个是分析到底是什么导致了这个故障,为后面做故障自动恢复打下基础。
报警和联动:
1. 报警策略:这个主要是报警的阈值和去重报警。当一台服务器挂掉的时候,那一般情况这个服务器上所
有报警都会发出来,但是这个时候其实就报一个服务器 down 就可以了。 2. 联动处理:由于一个服务的
问题可能导致其它问题的产生,这个时候需要了解系统的逻辑架构和关联关系才能知道。
3. 报警跟踪:跟踪问题的处理过程和结果,时间等信息
4. 问题管理:每个问题都有各种各样的原因产生的,这个可以汇总整理
完整的监控内容:
1. 域名监控:看看 dns 解析是否正确,这个百度吃过大亏的
2. 流量监控:主要是某个区域和全网流量是否有异常。
3. 访问质量监控:通过对于前端服务器的流量镜像分析来判定网络质量值否正常。也有是从本地通往远程
是否网络路由是否正常。也可以使用 networkbench 和 gomez 这种第三方监测来发现。 4. 语义监控:就
评论4