在大数据时代,AdMaster作为一家专业的大数据处理公司,其运维架构的设计至关重要。这份文档主要由刘喆分享了AdMaster在运维架构上的思考和实践经验,包括监控系统、容量管理、用户管理和调度协同系统等多个关键领域。
监控系统是运维的基础,确保系统的稳定性和效率。监控分为系统级、应用级、老板级(仪表盘)和客户级(6张皮),涵盖了从基础设施到业务表现的全方位监控。AdMaster采用了开源工具如Chukwa和openTSDB,同时也构建了自己的神盾系统来提升监控效能。然而,早期的监控策略存在反例,如每个应用独立的crontab监控导致报警过多,业务缺乏有效的保障。因此,建立统一的监控反馈回路和优化报警策略成为必要。
容量管理是确保资源有效利用的关键。反例中提到的服务器资源不足、带宽耗尽、存储空间紧张等问题,强调了对资源消耗的了解和控制的重要性。通过引入CMDB(配置管理数据库)、调度器以及度量系统,AdMaster能够更好地分析现状、设定衡量指标并制定目标,实现开源节流。
用户管理是运维中的另一个挑战。传统的管理方式如邮箱、QQ/微信等往往分散且不统一,AdMaster借鉴Google的做法,采用Ldap和openAuth来简化和统一用户认证,同时考虑引入第三方认证,如163通行证、Google account、QQ或Facebook,以提升用户体验和管理效率。
调度协同系统是大数据工作流程中的核心部分。从简单的crontab到服务间的相互依赖,再到数据流和控制流的协调,都需要高效的数据共享机制。AdMaster在选择数据共享格式时考虑过XML、JSON、PB(Protocol Buffers)、Thrift和AVRO等多种方案,最终选择了适合自身业务需求的解决方案,并可能自研调度系统以实现业务全面掌控。
总结来说,AdMaster的运维架构设计遵循了“三化”原则:标准化、自动化和智能化,通过建立反馈回路,不断贴近用户和客户需求。监控、容量管理、用户管理和调度协同这四个关键模块共同构成了大数据时代运维架构的核心,确保了AdMaster在大数据处理领域的高效运行。