Publications Home » Interactive Configuration Managem...
Hal Fossa
Distributed software systems are growing in complexity as organisations demand more functionality from their systems. Large, long-running applications cannot be shut down for maintenance, and changes must be introduced dynamically to a running system. Such operational and evolutionary changes require that external, run-time managers can view and interactively modify the structure of an application. This thesis focuses on configuration management in terms of the components of a software system, their interconnecting bindings and the allocation of component instances to physical hosts. A configuration language is often used to describe composite components which define the initial application structure. This thesis presents an environment which extends this approach by allowing interactive configuration management of running applications. This approach is integrated with a general-purpose management environment based on domains for grouping and partitioning managed objects. Key features presented include: • Integration with Configuration Language. The environment supports the Darwin configuration language concepts of component composition, instantiation and binding. A component instance and the software interfaces it provides and requires are represented by a configuration domain. Once a programmed configuration has been created, its hierarchical structure and interfaces are fully represented in the domain management environment, so that they can be monitored and reconfigured on-line using a suite of management tools. • Support for Interactive Creation and Binding. New components can be created and integrated into running configurations in different ways. Where a component requires an external service, it can be bound interactively to services provided by other components. Safe rebinding is synchronised with the application component which decides when the old binding is no longer needed. All binding forms and rebinding stages are visualised in the management environment. • Graphical Management Environment. The presented management architecture includes a domain browser, which displays (configuration) domain hierarchy. It supports general-purpose invocation of interfaces in domains, and can be used for many forms of management, including configuration. An on-line, configuration manager shows the components and bindings in a composite component, and supports graphical configuration evolution and maintenance. • Persistent Configurations. The environment encompasses a facility for saving persistent representations of a running configuration to disk, and can be used to detect and display failed or unreachable components. The structural aspects of failed composites can be recreated along with the primitive application components, which can only be made persistent explicitly by programmers. Examples are given of the use of the tools in typical configuration scenarios, and the implementation architecture based on a CORBA platform is described.
pubs.doc.ic.ac.uk: built & maintained by Ashok Argent-Katwala.