自动运维的一点体会
性能与可用性可扩展
功能可扩展
监控支撑业务扩展
大学时期就负责学校官方网站的运维工作,实习期间加入豆瓣,有幸成为豆瓣 Top20 员工,从事 Python 开发及运维工作,后在 BAT 从事自动化运维,见证BAT 运维自动化从无到有。擅长系统底层、分布式系统开发,热衷于开源运动,给 memcached、SETI@Home 等多个开源项目贡献过代码。
监控?
配置管理?
自动部署?
调度系统?
Iaas / Paas?
or more?
一本清晰的账本 (准确的基础信息)
一个靠谱的监控
一个靠谱的任务执行系统

本质:对被监控对象的指标进行状态判定
一台服务器上 nginx 服务的连接数
需要支持网络层、服务器、服务、业务四层
精准智能
适应机器 的规模与增长速度
高效、高可用性
支持纷繁多样的服务
通信
长连接
Epoll
多进程/线程
高并发
并发度可调
统一的高性能通信框架与通信协议
业务开发简单清晰
单进程IO复用接收
多进程(worker)并发处理
任意环节支持横向扩展
无状态、负载均衡
可支持级联
多路多点部署
无单点
负载均衡
横向扩展
多点部署
自动切换
每个环节自动切换
WRR
多路冗余
无状态
Supervise保证存活
传输过程中多次确认
采集到汇聚
转发到逻辑判断
转发到存储
外部状态监控
传输起始端健康检查
每个环节的外部监控
内部判断
采集
汇聚转发
过滤
报警
离线存储
挖掘分析
展示
汇聚后的多路传输
级联
存活监控
端口监控
集群
模块之间联动反馈
互联互通
基础监控 => 自定义监控
端口 =>语义监控
URL监控 => HTTP语义监控
URL监控 => 访问质量监控
服务器指标监控 => 集群指标监控
结合基础信息管理
资源使用与服务器选型
空闲资源挖掘
资源统计分析与基础信息校正
容量管理
存储资源
计算资源
报警触发简单任务执行
关联报警挖掘
与业务评估模型结合
本文转自 xjtuhit 51CTO博客,原文链接:http://blog.51cto.com/51reboot/2059459