Cloud service composition and lifecycle management
This internship is located at Hewlett-Packard Laboratories in
Bristol, UK.
This project contributes to the HPL research program on
Cloud Computing.
Within this program HP Labs is building a number of Platform Services.
Platform services run in the cloud managing the infrastructure and application services running on that cloud.
The applications we run are diverse; they include image rendering and business applications such as ERP (Enterprise Resource Planning).
This means we require a wide range of flexible platform services.
Implementing each platform service as a monolithic application is not a viable approach - it is uneconomic.
Platform services need to build on and reuse other platform services - service compositionality.
Service Compositionality is the key to building platform services quickly and economically.
A key platform service is lifecycle management. This platform service is responsible for managing virtual machines and infrastructures:
managing secure sharing between users, tracking persistent state and version information, cloning and secure deletion.
The objective of this project is to investigate the architecture features needed for platform service compositionality by designing and
building a lifecycle management service. The lifecycle management service will composed from multiple platform services,
some of which exist, some of which will need to be designed and built.
This project duration is 6 months for thesis work with a 6 month extension. A competitive internship salary will be paid covering the cost of living and travelling.
ModelSpaces
Managing services in networked environments can only be done so reliably in an automated fashion, if all available data sources in the environment can be made available to managers for them to make the best decisions based on the observed state.
This becomes even more relevant in a cloud environment where resources, services and data sources will come and go in a continuous fashion, making use of the dynamic resource provisioning of the cloud.
An automated manager which for example uses policies needs to leverage as much information as possible from the dynamic environment, drawing from a large variety of sources spanning from resource utilization data to models of deployed software up towards customer relationship data.
We propose ModelSpaces as a way to weave these sources together and present a space in which policies can be expressed. A key aspect is that data will remain in its own container, the translation is handled by the ModelSpace engine controlled by a data source description (metadata).
This separation allows a policy to be written without taking into account the specifics of the actual deployed system, furthermore the schema can be tailored to only highlight certain aspects of a system. For example a service allocator which maximise resource utilization of infrastructure for different services will need to know about the actual resource consumption, as well as the services deployed, so that it can estimate resource consumptions if services are re-assigned to different servers. The service allocator does not need to know anything about the customer using the services.
We have developed a prototype implementation as a starting point for the student.
We encourage
- the design of further data gatherers to broaden the available data sources
- the design of an event system in this modelspace
- the design of a policy system which could make use of the event system to trigger actions
- investigations into Metadata languages
The project is 6 month for thesis work with a 6 month extension. A competitive internship salary will be paid covering the costs of living and travelling.