As distributed systems grow in scale and complexity, the need for flexible automation of systems management functions also grows. We outline a framework for building tools that provide distributed, scalable, declarative, modular, and continuous automation for distributed systems. We focus on four points of design: 1) a state-management approach that prescribes source-of-truth for configured and discovered system states; 2) a technique to solve the declarative unification problem for a class of automation problems, providing state convergence and modularity; 3) an eventual-consistency approach to state synchronization which provides automation at scale; 4) an event-driven architecture that provides always-on state enforcement. We describe the methodology, software architecture for the framework, and constraints for these techniques to apply to an automation problem. We overview a reference application built on this framework that provides state-aware system provisioning and node lifecycle management, highlighting key advantages. We conclude with a discussion of current and future applications.
翻译:随着分布式系统的规模和复杂性的扩大,对系统管理功能灵活自动化的需要也日益增长。我们勾勒出一个工具建设框架,为分布式系统提供分布式、可扩展式、宣示性、模块化和连续自动化的工具。我们侧重于四个设计点:(1) 国家管理方法,为配置和发现的系统状态规定真相来源;(2) 解决某类自动化问题宣示性统一问题的技术,提供州级趋同和模块化;(3) 州级同步的最终一致方法,提供州级自动化;(4) 由事件驱动的结构,提供州级的自动化;(4) 由事件驱动的结构,随时提供州级执法。我们描述了这些技术应用于自动化问题的方法、框架软件架构和制约因素。我们概述了在这一框架基础上建立的一个参考应用程序,提供州级系统的提供和不de生命周期管理,突出关键优势。我们最后讨论当前和今后的应用程序。