A New Model for Managing Configuration Data
Adwait N. Tumbde and Michael M. Swift
Configuration management is one of the largest causes of system and application failure. In one study, twenty four percent of Windows NT downtime was attributed to system configuration and maintenance. Furthermore, system configuration is a large expense: 60-80% of the total cost of computer ownership is system management. The problem is increasing as systems and applications get larger.
We seek to address a key aspect of this problem, configuration storage: how configuration data is stored and managed by the OS. Existing mechanisms, such as files in Linux, property lists in MacOS X, and the registry in Windows do not adequately support application and administrator needs. For example, common features such profiles must be implemented separately by each application. Settings for a single application are often stored in multiple locations, making it difficult to identify all the configuration state related to a single application.
To address these problems, we propose a new data model and storage service for configuration data. The Configuration Data Management System (CDMS) stores settings as name--value pairs, similar to other systems. However, CDMS can cluster related settings into objects that allow the settings for an application to be centralized, even if the settings names are widely distributed. CDMS assembles configuration spaces from a list of objects to support profiles generically and to support simultaneous use of multiple versions of an application. We present an implementation of CDMS and present case studies of using CDMS to manage configuration data for Mozilla Firefox and Apache.
Download this report (PDF)
Return to tech report index