Constructing and Managing Appliances for Cloud Deployments from Repositories of Reusable Components

In order to efficiently utilize Cloud Computing environments (more specifically, Infrastructure as a Service offerings), developers must be able to quickly incorporate their applications into integrated systems commonly called software appliances. This paper describes a system that can be used to construct and maintain software appliances called Conary. The core of Conary is a software configuration management system that places all the components included in an appliance in a versioned repository. The version control system properties of Conary's software configuration management design naturally facilities image creation and updates. An approach utilizing Conary solves many of the challenges faced by adopters of Cloud Computing.