论文部分内容阅读
在IT企业中随着业务的迅速发展,服务器规模也会不断膨胀。服务器规模少则几十几百台,多则成千上万台。随着服务器规模的增加,传统的系统运维方法无法满足要求。在系统运维中,大都涉及到用户管理、软件管理、网络管理和配置文件管理等工作。系统运维在很大程度上是一种重复性工作,因此设计自动配置系统对减少重复工作量、提高运维效率、确保操作准确性等方面有着重要的意义。在对比几个自动配置框架后,选择puppet来实现一个自动化配置系统。puppet是一个跨平台的框架,可以应用于Debian、Suse、Ubuntu等Linux操作系统,还可以应用于Unix操作系统及类Unix操作系统。本文首先介绍了puppet框架的操作模型,包括部署层、配置语言及资源抽象层、事务处理层。接着介绍了puppet的一些主要元素,并介绍了puppet框架依赖的ruby语言和工具facter。随后基于系统运维工作,对系统进行了详细的需求分析,以模块的形式细化了自动化配置系统的需求。在系统分析中,不仅分析了系统的功能需求,还分析了自动化配置系统本身的权限管理需求、报告及告警机制需求和性能方面的需求。对自动化配置系统进行需求分析后,进行了架构设计。对于功能配置,设计了其子模块内部的实现方式以及子模块之间的交互方式;对于权限管理,给出了实现的技术方案;对于报告及告警机制,设计了实现该功能的流程图;对于性能需求,设计了系统的扩容方案。最后,完成了自动化配置系统的实现。在功能配置模块中,包括通用配置模块和项目特定需求模块,主要是以伪代码的方式进行阐述和分析。通用配置模块中实现了系统管理中的一些基本功能,并且向项目特定需求模块提供接口;特定项目需求模块主要通过调用接口来实现。系统权限管理的实现中,给出了用户使用系统的流程。系统的报告及告警功能,跟企业的即时通信系统对接,达到及时通知的目的。研究并实现了系统的扩容方案,提高了系统的吞吐能力。