<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>SLA@SOI &#187; Articles</title>
	<atom:link href="http://sla-at-soi.eu/category/articles/feed/" rel="self" type="application/rss+xml" />
	<link>http://sla-at-soi.eu</link>
	<description>Empowering the service industry with SLA-aware infrastructures</description>
	<lastBuildDate>Fri, 02 Jul 2010 10:00:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
	<atom:link rel="hub" href="http://superfeedr.com/hubbub" />
			<item>
		<title>Using Cloud Standards for Interoperability of Cloud Frameworks</title>
		<link>http://sla-at-soi.eu/2010/04/using-cloud-standards-for-interoperability-of-cloud-frameworks/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2010/04/using-cloud-standards-for-interoperability-of-cloud-frameworks/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 14:49:03 +0000</pubDate>
		<dc:creator>Andy Edmonds</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Latest News]]></category>
		<category><![CDATA[IaaS]]></category>
		<category><![CDATA[infrastructure]]></category>
		<category><![CDATA[integration]]></category>
		<category><![CDATA[interoperability]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[NEXOF]]></category>
		<category><![CDATA[OCCI]]></category>
		<category><![CDATA[paas]]></category>
		<category><![CDATA[RESERVOIR]]></category>
		<category><![CDATA[saas]]></category>
		<category><![CDATA[sla]]></category>
		<category><![CDATA[standards]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=1236</guid>
		<description><![CDATA[SLA@SOI and RESERVOIR have been actively  collaborating together with the aim of investigating and pursuing the  integration of their respective technologies as part of the NEXOF Reference Architecture initiative. One of the outputs of this work has been a  technical report that details how cloud standards, such as OCCI,  can be [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.sla-at-soi.eu/">SLA@SOI</a> and <a href="http://www.reservoir-fp7.eu/">RESERVOIR</a> have been actively  collaborating together with the aim of investigating and pursuing the  integration of their respective technologies as part of the <a href="http://www.nexof-ra.eu/">NEXOF Reference Architecture</a> initiative. One of the outputs of this work has been <a href="http://sla-at-soi.eu/wp-content/uploads/2010/04/RESERVOIR-SLA@SOI-interop-techReport.pdf">a  technical report</a> that details how cloud standards, such as <a href="http://www.occi-wg.org/">OCCI</a>,  can be used to support the interoperability and integration of cloud  frameworks such as those presented by RESERVOIR and SLA@SOI.</p>
<p>What we call Cloud computing today has evolved over many years. It had other names before and many technologies are involved in it. Virtualization, utility computing, and grid technologies are among the most representative.</p>
<p>Cloud offerings can be classified according to the resources they offer ‘as a Service’ (XaaS): Infrastructure as a Service (IaaS) that allows the allocation of virtual machines and storage capacity; Platform as a Service (PaaS) providing users with remote software platforms to run their services; and Software as a Service (SaaS) where applications are moved to the Internet and accessed through web interfaces.</p>
<p>Cloud frameworks on the other hand can be seen as the software environments in which Cloud services can be deployed. Most of the frameworks have automatic and elastic management solutions included: they control the life cycle, placement and Service Level Agreements (SLAs) of a service.</p>
<p>Different frameworks have arisen in the recent past, including commercial proprietary and open frameworks like those developed in the European Commission funded Framework Programme 7 Projects <a href="http://www.reservoir-fp7.eu">RESERVOIR</a> and <a href="http://www.sla-at-soi.eu">SLA@SOI</a>. They consist of similar modules and layers but have different basic architectures. They can be messaging based or client/server, and have a focus on IaaS or SLA management. The different foci leads to different architectures. <a href="http://www.sla-at-soi.eu">SLA@SOI</a> targets SLA-driven management, and monitoring the life-cycle of services such as software and infrastructure services. It can also be applied to human-based services. <a href="http://www.reservoir-fp7.eu">RESERVOIR</a> concentrates on federated clouds, and focuses on the management, interoperability and optimisation within such topologies.</p>
<p>Despite these differences, however, Cloud frameworks typically include a layer to deploy virtual workloads on infrastructure. Allowing frameworks interoperate also enables the use of each other&#8217;s unique abilities and functionalities. For example provisioned services could be moved to the Cloud framework which would best fit their needs and their characteristics.</p>
<p>The need to interoperate helps fuel the demand for standards. Only if the frameworks support certain standardized interfaces, can interoperability be achieved. The accompanying paper tries to show the overall setup and ideas behind two Cloud frameworks and includes the description of an upcoming Cloud standard. An architecture which combines all three aspects is also proposed.</p>
<p><a href="http://sla-at-soi.eu/wp-content/uploads/2010/04/RESERVOIR-SLA@SOI-interop-techReport.pdf"><strong>Technical Report: Using Cloud Standards for Interoperability of Cloud Frameworks</strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2010/04/using-cloud-standards-for-interoperability-of-cloud-frameworks/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
	</item>
		<item>
		<title>Design-Time Prediction of QoS Properties</title>
		<link>http://sla-at-soi.eu/2010/02/design-time-prediction-of-qos-properties/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2010/02/design-time-prediction-of-qos-properties/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 12:19:46 +0000</pubDate>
		<dc:creator>John Kennedy</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Design-Time]]></category>
		<category><![CDATA[Prediction]]></category>
		<category><![CDATA[QoS]]></category>
		<category><![CDATA[sla]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=1208</guid>
		<description><![CDATA[As part of a Service Level Agreement (SLA), a service provider and its customer agree on non-functional or Quality of Service (QoS) requirements, which may be part of the pricing model. Predicting service quality attributes before service run-time helps to specify feasible SLA parameters and to consolidate efficient resource utilization with guarantees on QoS metrics.
Design-time [...]]]></description>
			<content:encoded><![CDATA[<p><script type="text/javascript"></script>As part of a Service Level Agreement (SLA), a service provider and its customer agree on non-functional or Quality of Service (QoS) requirements, which may be part of the pricing model. Predicting service quality attributes before service run-time helps to specify feasible SLA parameters and to consolidate efficient resource utilization with guarantees on QoS metrics.</p>
<p>Design-time prediction, as part of the <em>SLA@SOI</em> framework, aims to estimate performance and reliability indicators of a service infrastructure. This includes estimates of a service’s</p>
<ul>
<li>completion time,</li>
<li>throughput,</li>
<li>resource utilization, and</li>
<li>reliability.</li>
</ul>
<p>The approach provided as part of the prediction architecture is <em>model-based</em>: different models are employed to capture an entire system, i.e. structural aspects such as its service components and allocation to (virtual) machines and behavioral aspects such as usage of services.</p>
<h3>What is modeled?</h3>
<p>Different roles contribute information to the set of models used to predict a service’s performance. This situation is depicted in Figure 1.</p>
<div id="attachment_1210" class="wp-caption aligncenter" style="width: 488px"><a href="http://sla-at-soi.eu/wp-content/uploads/2010/02/QoS_Model.png"><img class="size-full wp-image-1210" title="QoS Model " src="http://sla-at-soi.eu/wp-content/uploads/2010/02/QoS_Model.png" alt="QoS Model and involved roles" width="478" height="266" /></a><p class="wp-caption-text">Figure 1: QoS Model and involved roles</p></div>
<ul>
<li><strong>Software providers</strong> create abstract models of their service components.  These include information about service interfaces and an abstract behavioral description of how the components use the available hardware and software resources (Service Component Model)</li>
<li><strong>Infrastructure providers</strong> specify the execution environment on an abstract level. Important performance-related information includes processing rates etc. (Infrastructure Model)</li>
<li><strong>Service customers</strong> indicate the intended service usage (e.g., the maximal number of requests per minute). From this information, a model capturing the system usage profile (Usage Model) can be derived.</li>
<li><strong>Service Providers</strong> integrate the separate models and provide the prediction service with an initial allocation of components to nodes (Allocation Model)</li>
</ul>
<h3>And how does the actual prediction work?</h3>
<p>Design time prediction is based on the modeled service / usage properties only, i.e. it can be performed before the service is actually deployed and running. The various models are transformed into a format that can be processed by the Palladio Component Model (PCM) framework [1]. This comprehensive framework allows for generation of different analysis models such as stochastic regular expressions or a queuing network, which in turn provide capabilities to derive the desired performance metrics.</p>
<h3>What’s the use of QoS prediction in <em>SLA@SOI</em>?</h3>
<p>Both the provider and the customer of a service will benefit from the integration of design-time prediction into the SLA management framework.</p>
<ul>
<li><strong>Transparency</strong>: A priori simulation based on multiple scenarios (allocation / infrastructure / usage) allows the service provider to offer clear and concise statements about the service parameters in an SLA. This helps the customer during the selection process and promotes the negotiation process.</li>
<li><strong>Flexibility:</strong> Multi-round negotiation of an SLA can be assisted by iteratively calling the prediction service with modified inputs. This applies in particular to different usage scenarios provided by the service customer.</li>
<li><strong>Efficiency:</strong> Based on the simulated resource demands, infrastructures can be dimensioned efficiently balancing costs and QoS levels.</li>
<li><strong>Dependability</strong>: Careful modeling of the architecture under study leads to high-quality predictions of its performance and reliability.</li>
</ul>
<p><strong>Martin Küster, FZI Forschungszentrum Informatik, Karlsruhe</strong></p>
<p>[1] Becker, Koziolek, Reussner: <em>The Palladio component model for model-driven performance prediction.</em> Journal of Systems and Software Vol. 82 (1): 3-22 (2009)</p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2010/02/design-time-prediction-of-qos-properties/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2010/02/QoS_Model-150x150.png" />
		<media:content url="http://sla-at-soi.eu/wp-content/uploads/2010/02/QoS_Model.png" medium="image">
			<media:title type="html">QoS Model</media:title>
			<media:description type="html">QoS Model and involved roles</media:description>
			<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2010/02/QoS_Model-150x150.png" />
		</media:content>
	</item>
		<item>
		<title>Dynamic set-up of Monitoring Infrastructures for SLA Management</title>
		<link>http://sla-at-soi.eu/2010/01/dynamic-set-up-of-monitoring-infrastructures-for-sla-management/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2010/01/dynamic-set-up-of-monitoring-infrastructures-for-sla-management/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 16:38:56 +0000</pubDate>
		<dc:creator>John Kennedy</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Latest News]]></category>
		<category><![CDATA[dynamic monitoring infrastructures]]></category>
		<category><![CDATA[hierarchical monitoring infrastructures]]></category>
		<category><![CDATA[Service Monitoring]]></category>
		<category><![CDATA[sla]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=1170</guid>
		<description><![CDATA[Over the last few years, several approaches have been developed to support the monitoring of SLAs. Typically, these approaches collect events during service executions and use them to check whether the properties of service provision as specified in an SLA are satisfied. Such approaches provide state of the art mechanisms for performing the basic checks [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last few years, several approaches have been developed to support the monitoring of SLAs. Typically, these approaches collect events during service executions and use them to check whether the properties of service provision as specified in an SLA are satisfied. Such approaches provide state of the art mechanisms for performing the basic checks of service compliance with SLAs but fall short of providing adequate support when replacements of the services deployed in a service based system (SBS) occur at runtime, or the terms of the SLA under which a service is provided change dynamically.</p>
<p>To provide effective monitoring support when such changes happen it is necessary to be able not only to check whether the monitorability of the required SLA terms and conditions is affected by the changes but also to modify the deployed monitoring infrastructure in order to ensure the continuous execution of the required runtime checks. These capabilities, however, are not offered by existing monitoring environments and approaches. To address this gap, SLA@SOI is developing a novel SLA monitoring framework, called “SLA Management for Monitoring” (SLAM4M). A key characteristic of this framework is the separation of the actual service monitoring from the assessment of SLA monitorability, and the dynamic set up of the monitoring resources (i.e., event captors and monitors) for checking an SLA.</p>
<h2>SLA Management for Monitoring: Overview of the new architecture</h2>
<p>A key characteristic of the approach underpinning the design of SLAM4M is the distinction between two key layers in service provision, namely the SLA management and service management layers as illustrated in Figure 1. The SLA management layer is concerned with SLA management activities (e.g. SLA specification, negotiation, modification) and the service management layer is concerned with the software stack required for making a service manageable according to an SLA. From a monitoring perspective, the SLA management layer incorporates the mechanisms required for performing the SLA monitorability checks and the dynamic set up of monitoring infrastructures that can enable the monitoring of an SLA whilst the service management layer incorporates the Event Captors and Monitors required for service event capturing and performing the actual SLA checks, respectively. Given this distinction, SLAM4M belongs to the SLA Management layer, as shown in Figure 1.</p>
<div id="attachment_1186" class="wp-caption aligncenter" style="width: 727px"><a href="http://sla-at-soi.eu/wp-content/uploads/2010/01/SLAM4M1.jpg"><img class="size-full wp-image-1186 " title="SLAM4M" src="http://sla-at-soi.eu/wp-content/uploads/2010/01/SLAM4M1.jpg" alt="Scenarios for dynamic setup of monitoring infrastructures" width="717" height="228" /></a><p class="wp-caption-text">Fig 1: Scenarios for dynamic setup of monitoring infrastructures</p></div>
<p>Figure 1 shows the two scenarios for dynamic service monitoring setup in SLAM4M. In the first scenario (see Figure 1a), the managed service is provided with both Event Captor(s) and a local Monitor and has, therefore, both event reporting and SLA checking capabilities. Thus, when it receives an SLA, SLAM4M checks if each guarantee term in it can be monitored locally, according to the capabilities exposed by the Event Captor and the Monitor. In particular, in order for a Guarantee Term to be locally monitored, the Event Captor should be able to provide the required events, while the Monitor should support the language used for expressing the Guarantee Term.</p>
<p>The second scenario (see Figure 1b) applies to the following two cases:</p>
<ol>
<li> The Event captor provides the events required for monitoring a Guarantee Term, but the Monitor does not support the Guarantee Term language; and</li>
<li>the managed service has only an Event Captor but no associated local Monitor.</li>
</ol>
<p>In the second scenario, SLAM4M first assesses if the required events are available from the local event captor of the service and then tries to identify an external monitor that can support the Guarantee Term language. This identification takes place through a monitor registry that is accessible to SLAM4M and, if an appropriate external monitor can be found, SLAM4M submits the guarantee term to the external monitor and instructs the event captor of the service to provide events to this monitor. It should be noted that the external monitor may be available at some URI on the network and, therefore, an engagement protocol and an event communication infrastructure are required for establishing and realizing the communication of events between the service event captor and the external monitor.</p>
<p>In the prototype implementation of SLAM4M, we use a “publish/subscribe” event communication infrastructure designated as “Event Bus” in Figure 1b. More specifically, after locating a Monitor, SLAM4M gets from it a token designating an event channel of interest and uses this token to subscribe the monitor to the Event Bus. The same token is passed to the Event Captor to be used when it publishes events to the bus so that these events can be forwarded to the appropriate monitor.</p>
<p>For more information on our monitoring architecture, please see the accompanying <a rel="attachment wp-att-1193" href="http://sla-at-soi.eu/2010/01/dynamic-set-up-of-monitoring-infrastructures-for-sla-management/slasoitechpaper_dynamicmonitoring/">SLA@SOI Technical Article</a>. Additionally, further details including a discussion of the implementation of SLAM4M and some initial experiences are being published in &#8220;Dynamic Set Up of Monitoring Infrastructures for Service Based Systems&#8221;, at the track on Service Oriented Architectures and Programming at the 25th Annual ACM Symposium on Applied Computing to be held in March 2010.</p>
<p><strong>George Spanoudakis, School of Informatics, City University London</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2010/01/dynamic-set-up-of-monitoring-infrastructures-for-sla-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2010/01/SLAM4M1-150x150.jpg" />
		<media:content url="http://sla-at-soi.eu/wp-content/uploads/2010/01/SLAM4M1.jpg" medium="image">
			<media:title type="html">SLAM4M</media:title>
			<media:description type="html">Scenarios for dynamic setup of monitoring infrastructures</media:description>
			<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2010/01/SLAM4M1-150x150.jpg" />
		</media:content>
	</item>
		<item>
		<title>Business Fundamentals of SLAs</title>
		<link>http://sla-at-soi.eu/2009/12/business-fundamentals-of-slas/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2009/12/business-fundamentals-of-slas/#comments</comments>
		<pubDate>Mon, 21 Dec 2009 12:12:19 +0000</pubDate>
		<dc:creator>John Kennedy</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[sla]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=1082</guid>
		<description><![CDATA[In recent years, significant advances have been made in SLA management. This progress has largely focused on the building pieces necessary to create the communications, interactions and corresponding flows required for SLA management. However, to be truly useful, support for the business aspects and terms required in the real business world also need to be [...]]]></description>
			<content:encoded><![CDATA[<p>In recent years, significant advances have been made in SLA management. This progress has largely focused on the building pieces necessary to create the communications, interactions and corresponding flows required for SLA management. However, to be truly useful, support for the business aspects and terms required in the real business world also need to be addressed.</p>
<p>In SLA@SOI we have identified the following aspects of business that need to be addressed within SLAs:</p>
<p><strong>Functional description: </strong>The offered service must be detailed in terms of the features and functionality supported and available to customers.</p>
<p><strong>Business model supported: </strong>All the information referring to the selling process must be defined and described in detail, to avoid ambiguity for the customer. The business model description should detail:</p>
<ul>
<li>Offer types associated with the Quality of Service supported</li>
<li>Pricing model</li>
<li>Billing and payment constraints</li>
<li>Modification and alteration of prices  if applicable</li>
<li>Restrictions and constraints</li>
</ul>
<p><strong>Penalties: </strong>Detailed specifications about the penalties incurred when problems arise in the consumption of the service. This information is attached to the guarantee terms definitions that explain in detail how the different agreed terms are used.</p>
<p><strong>Termination clauses:</strong> The termination clauses have to be automated and they have to accommodate both parties in the contract. The termination of the SLA can be triggered by certain customer aspects as well as by certain service provider constraints.</p>
<p><strong>Service information events and reports:</strong> It must be possible for the final customer to select the kind of information that they wish to obtain automatically. This information is defined in terms of events monitored as well as reports associated with the customer&#8217;s service. For instance a customer that uses a storage service may want to know how large their storage consumption is per day. These Key Performance Indicators (KPIs) may not be related to the guarantee terms fulfilled by the SLA.</p>
<p><strong>Support mechanism and contact details:</strong> It must be possible to specify the kind of support offered to the customer should they have a problem or inquiry. The support information provided should include timetable details as well as details of the different support channels available.</p>
<p><strong>Disaster recovery and data security in IT Systems:</strong> It must be possible to define Backup/Restore policies in order to guarantee the persistence of information, if the service offered to the customer manages and stores data. Also it must be possible to define the security mechanisms that are employed by the service.</p>
<p><strong>Changes to terms in the service:</strong> The process to update the service conditions or characteristics must also be considered. It must also be possible to define the mechanism used to inform the customer about such changes.</p>
<p><strong>Customer/Provider requirements and constraints: </strong>In many cases, it is necessary for the customers or providers to express some requirements in terms of limits or constraints in the service consumption. Usually these aspects are related to legal constraints to be followed by the customers or providers of one specific country, because they are imposed by the relevant Regulatory Authority. Example constraints include:</p>
<ul>
<li>Personal data storage cannot to be stored outside the country</li>
<li>Maximum prices and/or quality shall apply</li>
<li>Restrictions in sharing of personal data with third parties associated with the service provider</li>
<li>The prohibition of delivery advertisement</li>
<li>Personal data usage restrictions for specific tasks (e.g. data mining)</li>
</ul>
<p>As we can see, the variety and complexity of business  concerns is both broad and deep. However, we have found that each specific business has their own kind of restrictions and bounds.</p>
<p>In the SLA@SOI project, one of our main aims is to create a business framework that supports the realities of the business world. In our <a title="Business Management" href="http://sla-at-soi.eu/research/focus-areas/business-management/" target="_self">Business Management </a>focus area we are actively researching these aspects, building a strong foundation to support a wide range of grounded, industry-driven use-cases.</p>
<p><strong>Juan Lambea Rueda, Telefónica Investigación y Desarrollo</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2009/12/business-fundamentals-of-slas/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
	</item>
		<item>
		<title>Challenges in SLA Translation</title>
		<link>http://sla-at-soi.eu/2009/12/challenges-in-sla-translation/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2009/12/challenges-in-sla-translation/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 12:16:30 +0000</pubDate>
		<dc:creator>John Kennedy</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Latest News]]></category>
		<category><![CDATA[Conceptual Architecture]]></category>
		<category><![CDATA[Research Challenges]]></category>
		<category><![CDATA[sla]]></category>
		<category><![CDATA[Translation]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=829</guid>
		<description><![CDATA[Service-Oriented Architecture (SOA) represents an architectural shift for building business applications based on loosely coupled services. In a multi-layered SOA environment the exact conditions under which services are to be delivered can be formally specified by Service Level Agreements (SLAs). However, typical SLAs are just specified at the top-level and do not allow service providers [...]]]></description>
			<content:encoded><![CDATA[<p>Service-Oriented Architecture (SOA) represents an architectural shift for building business applications based on loosely coupled services. In a multi-layered SOA environment the exact conditions under which services are to be delivered can be formally specified by Service Level Agreements (SLAs). However, typical SLAs are just specified at the top-level and do not allow service providers to manage their IT stack accordingly as they have no insight on how top-level SLAs translate to metrics or parameters at the various layers of the IT stack. SLA@SOI has recently proposed a conceptual framework for the precise definition and classification of SLA translations in SOA.</p>
<p>The full details are presented in an accompanying technical paper,  <a rel="attachment wp-att-1063" href="http://sla-at-soi.eu/2009/12/challenges-in-sla-translation/challengesinslatranslation/">Challenges in SLA Translation</a>, but the overall framework is illustrated here in Figure 1.</p>
<div id="attachment_831" class="wp-caption aligncenter" style="width: 609px"><a rel="attachment wp-att-831" href="http://sla-at-soi.eu/2009/12/challenges-in-sla-translation/translationchallenges/"><img class="size-full wp-image-831" title="Translation in and between SOA layers" src="http://sla-at-soi.eu/wp-content/uploads/2009/10/TranslationChallenges.jpg" alt="Figure 1: Observables (metrics) and configurables (parameters) in SOA layers, with different types of translations." width="599" height="471" /></a><p class="wp-caption-text">Figure 1: Observables (metrics) and configurables (parameters) in SOA layers, with different types of translations.</p></div>
<p>The framework distinguishes four main translation types:</p>
<ul>
<li>C2C (Configuration to Configuration): this type of translation mostly relates to the dependencies within a layer or between layers. Such dependency graphs are useful in configuration management and problem diagnosis.</li>
<li>M2C (Metric to Configuration): this type of translation translates higher-level objectives to lower-level system parameters. It can also be referred as &#8220;top-down&#8221; translation or SLA decomposition. It is useful for sizing and capacity planning, mostly at design time.</li>
<li>C2M (Configuration to Metric): this type of translation predicts higher-level objectives from lower-level system parameters. It can also be referred as &#8220;bottom-up&#8221; translation or performance prediction. It is useful both what-if analysis at design time and predictive management at run time.</li>
<li>M2M (Metric to Metric): this type of translation correlates a high-level metric with lower-level metrics. The translation can go both directions, namely decomposition or prediction, depending on the usage scenario. It is useful for forecasting and problem diagnosis at run time.</li>
</ul>
<p>Additionally, we have also identified and described the fundamental research challenges that need to be addressed to turn the vision of holistic and transparent SLA translation into reality. These research challenges are</p>
<ul>
<li>Realistic workloads and usage patterns</li>
<li>Tradeoff-analysis for scalable approaches</li>
<li>Innovation and integration of methodologies</li>
<li>Model integration and transformation</li>
<li>The definition of layers and layer interfaces</li>
<li>Business values and reference benchmarks</li>
</ul>
<p>To found out more about this proposed conceptual framework and these research challenges, please see the accompanying technical paper, <a rel="attachment wp-att-1063" href="http://sla-at-soi.eu/2009/12/challenges-in-sla-translation/challengesinslatranslation/">Challenges in SLA Translation</a>.</p>
<p><strong>Hui Li, SAP Research</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2009/12/challenges-in-sla-translation/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2009/10/TranslationChallenges-150x150.jpg" />
		<media:content url="http://sla-at-soi.eu/wp-content/uploads/2009/10/TranslationChallenges.jpg" medium="image">
			<media:title type="html">Translation in and between SOA layers</media:title>
			<media:description type="html">Figure 1: Observables (metrics) and configurables (parameters) in SOA layers, with different types of translations.</media:description>
			<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2009/10/TranslationChallenges-150x150.jpg" />
		</media:content>
	</item>
		<item>
		<title>SLA Focused Financial Grids</title>
		<link>http://sla-at-soi.eu/2009/08/sla-focused-financial-grids/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2009/08/sla-focused-financial-grids/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 15:34:24 +0000</pubDate>
		<dc:creator>Yih Leong Sun</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Latest News]]></category>
		<category><![CDATA[advantage]]></category>
		<category><![CDATA[availability]]></category>
		<category><![CDATA[competitive advantage]]></category>
		<category><![CDATA[financial]]></category>
		<category><![CDATA[Financial applications]]></category>
		<category><![CDATA[Financial Grids]]></category>
		<category><![CDATA[Financial Live Trading System]]></category>
		<category><![CDATA[financial service provider]]></category>
		<category><![CDATA[grid infrastructure]]></category>
		<category><![CDATA[grids]]></category>
		<category><![CDATA[sla]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[trading]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=678</guid>
		<description><![CDATA[The financial sector depends heavily on process and data intensive computations to deliver competitive advantage. Financial applications are particularly suited to grid-based experimentation and research. A Financial Live Trading System is used an exemplar in this article. The emerging growth of worldwide trading and the reliance on automated processing has increased the complexity and volatility [...]]]></description>
			<content:encoded><![CDATA[<p>The financial sector depends heavily on process and data intensive computations to deliver competitive advantage. Financial applications are particularly suited to grid-based experimentation and research. A Financial Live Trading System is used an exemplar in this article. The emerging growth of worldwide trading and the reliance on automated processing has increased the complexity and volatility of the computational demand which generally exceeds the resource available at the financial customer site. SOA-based grid infrastructure has emerged as a viable commercial alternatives to meet this demand. However, grid infrastructures can only become viable solution to the financial sector if they can provide stable service level assurance.</p>
<p>The scenario that presented in this article assumes that a client company has a contract with a financial service provider to provide processed market data for the company’s internal use; this may be in the provision of additional services to other users.</p>
<p>In the Financial Live Trading System scenario there are five actors:</p>
<ol>
<li>the Financial Service Customer who is the consumer of the processed market data;</li>
<li>the Financial Service Provider who sells processed financial or market data to a collection of customers;</li>
<li>the Software Provider that provides software via a licensing agreement to business organisations;</li>
<li>the Compute Provider that provides hosting and compute capabilities to customers; and</li>
<li>the Data Provider that provides a feed of up-to-date market data and financial information.</li>
</ol>
<p><a href="http://sla-at-soi.eu/wp-content/uploads/2009/08/SLA-Focused-Financial-Grids_pic.JPG"><img class="alignnone size-full wp-image-689" title="SLA Focused Financial Grids_pic" src="http://sla-at-soi.eu/wp-content/uploads/2009/08/SLA-Focused-Financial-Grids_pic.JPG" alt="SLA Focused Financial Grids_pic" width="604" height="378" /></a></p>
<p>A Live Trading System processes live market data from the Data Provider using compute resources hosted by the Compute Provider, running software from the Software Provider to supply processed data to the customer. A Trading System demands a high availability of resources. Non-availability of resources means an absence in market trading which, in turn, can lead to missed opportunities. Security is of paramount importance. In addition, regulatory issues exist within institutions that place restrictions on the accessibility of spatial information across their distributed enterprises.</p>
<p>As described in the above figure, Financial Service Provider supplies the trade data from the Live Trading System to the Financial Service Customer. The business SLA is agreed offline between the Financial Service Customer and Financial Service Provider. In order to meet the business SLA requirements, the Financial Service Provider need to establish separate SLAs with the Software Provider, Compute Provider and Data Provider. These SLAs need to be monitored and observed carefully.</p>
<p>Two of the critical customer requirements in the above scenario are the high availability of compute resource and legislation compliances. If one of the compute resources provided by the Compute Provider fails, the Financial Service Provider has to switch to a backup resource or look for another computer provider which must also satisfy other regulatory requirements in a fast, efficient and accurate manner.</p>
<p>In the current implementation, this usually means a significant down time and potentially a breach of the SLA agreements with the Financial Service Customer. In our proposed SLA-focus solution, the failure of the compute resource will be detected and the discovery of new compute resource that satisfy the regulatory requirements will be performed automatically. A new SLA with the new Computer Provider is established and the software is deployed in a very fast and automated manner. The data feed or necessary calculation may then be restarted at the new compute resource. From the SLA point of view, this would only affect the customers in terms of a very short delay. Potential penalties due to the violation or breaching of SLA are reduced significantly.</p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2009/08/sla-focused-financial-grids/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2009/08/SLA-Focused-Financial-Grids_pic-150x150.jpg" />
		<media:content url="http://sla-at-soi.eu/wp-content/uploads/2009/08/SLA-Focused-Financial-Grids_pic.JPG" medium="image">
			<media:title type="html">SLA Focused Financial Grids_pic</media:title>
			<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2009/08/SLA-Focused-Financial-Grids_pic-150x150.jpg" />
		</media:content>
	</item>
		<item>
		<title>Complex Service Management</title>
		<link>http://sla-at-soi.eu/2009/08/complex-service-management/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2009/08/complex-service-management/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 14:04:17 +0000</pubDate>
		<dc:creator>Luciano Baresi</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Latest News]]></category>
		<category><![CDATA[complex]]></category>
		<category><![CDATA[Complex  Service Management]]></category>
		<category><![CDATA[composition]]></category>
		<category><![CDATA[distributed]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[services]]></category>
		<category><![CDATA[sla]]></category>
		<category><![CDATA[Web services]]></category>
		<category><![CDATA[ws-dm]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=668</guid>
		<description><![CDATA[Originally, (Web) services were deployed and used with almost no actual control by the different parties. The simplistic assumption that their behavior was correct and everyone had to be happy with the functionality provided was unrealistic. The actual exploitation of services, imposed us to start conceiving different methods and tools to manage the complete life-cycle of deployed and running services with special emphasis on the actual run-time behavior.]]></description>
			<content:encoded><![CDATA[<p>Originally, (Web) services were deployed and used with almost no actual control by the different parties. The simplistic assumption that their behavior was correct and everyone had to be happy with the functionality provided was unrealistic. The actual exploitation of services, imposed us to start conceiving different methods and tools to manage the complete life-cycle of deployed and running services with special emphasis on the actual run-time behavior.</p>
<p>Differently from other software systems, the problem is not the capability of controlling how the different service instances are activated and deactivated, but it is about the non-functional issues and the supervision of the service level agreements (SLAs) established with the different partners.<br />
This problem has some key peculiarities. In many cases, the services we would like to utilize are not (fully) under our control. We may have cases in which we own the composition, which is the actual service we want to manage, but we have no complete access to (some of) the partner services. Moreover, the multi-tenancy implicit in service-centric applications requires that the same service (or service composition) be managed in different ways for the different users. The problem is intrinsically hierarchical: the effects on complete processes (i.e., service compositions) must be properly reflected on the single services that constitute the assembly, and also on the infrastructure on which they both &#8212;single services and compositions&#8212; are executed.</p>
<p>These characteristics have already motivated significant research efforts and standards (like Web Service Distributed Management), but we claim that none of provided solutions is able to address the problem completely and homogeneously. Our proposal is to build on top of existing standards and try to provide a holistic solution to distributed service management. First of all, we think that the interfaces provided to fully control the behavior of services must be extremely rich, and allow users to control the inner details of the services. We assume that some key features must be mandatory, while others could be optional. For example, mandatory features may be the possibility to start, stop, and suspend the execution of a given service instance, or even to monitor its basic behavior. On the other hand, more advanced capabilities, like security issues, SLA enforcement, fine-grained annotations and probing, and deep control of associated physical resources, may be optional and provided by some services in particular contexts (e.g., the services in the same domain as the user’s one).</p>
<p>This distinction between mandatory and optional features allows us to distinguish among at least three types of services (w.r.t. to management). Black-box services are those that only provide the basic features and allow the user to interact with them as if they were black boxes. Grey-box services provide some optional capabilities, but they do not provide complete access and freedom to the user, while white-box services implement the complete management API and allow the user to fully oversee and control the execution of service instances.</p>
<p>Since services can be composed, another important aspect is the composition of the different management capabilities. When we think of management features, the capabilities offered by the composition must be suitably supported by those provided by the single services. This is why the actual composition of the management APIs seems to be a promising research problem.</p>
<p>All these elements must be provided to the user seamlessly and homogeneously. Since some of the management capabilities offered by the different services may have a big impact on their performance, we also need the capability to switch them on and off on demand. Indeed, the more management is required, the slower a service becomes. Thus the fine-tuning of these additional features, w.r.t. their actual behavior, is mandatory to offer a usable solution.<br />
These are some of the key challenges we foresee for the complete and effective management of services and service compositions. These are also the underpinnings of our work in the project and we hope to be able to provide useful solutions that fit well in the global SLA@SOI infrastructure.<br />
<strong><em>Luciano Baresi and Sam Guinea</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2009/08/complex-service-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Hierarchical Monitoring Services for Efficient Distributed System Management</title>
		<link>http://sla-at-soi.eu/2009/07/hierarchical-monitoring-services-for-efficient-distributed-system-management/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2009/07/hierarchical-monitoring-services-for-efficient-distributed-system-management/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 11:01:46 +0000</pubDate>
		<dc:creator>Gregor Berginc</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Latest News]]></category>
		<category><![CDATA[Architesture]]></category>
		<category><![CDATA[Data collection layer]]></category>
		<category><![CDATA[Evaluation layer]]></category>
		<category><![CDATA[Infrastructure monitoring]]></category>
		<category><![CDATA[Multi-layer monitoring]]></category>
		<category><![CDATA[Service layer]]></category>
		<category><![CDATA[Service Level Agreement]]></category>
		<category><![CDATA[sla]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=523</guid>
		<description><![CDATA[An essential part of an SLA-aware infrastructure is a scalable and self-sufficient monitoring system capable of monitoring large distributed systems, in real-time. The monitoring system must support two mutually exclusive perspectives arising from the Service Level Agreement, namely the customer’s perspective and the infrastructure/service provider’s perspective. The former is interested in the SLA alone, while [...]]]></description>
			<content:encoded><![CDATA[<p>An essential part of an SLA-aware infrastructure is a scalable and self-sufficient monitoring system capable of monitoring large distributed systems, in real-time. The monitoring system must support two mutually exclusive perspectives arising from the Service Level Agreement, namely the customer’s perspective and the infrastructure/service provider’s perspective. The former is interested in the SLA alone, while the latter needs to be able to optimize the utilization of the infrastructure. To help process and manage the volume and variety of monitoring data, a multi-layer monitoring architecture has been proposed by Infrastructure Management.</p>
<h2>Multi-Layer Monitoring Architecture</h2>
<p>The distributed multi-layer monitoring architecture may be comprised of as many layers as necessary to support the monitoring of the underlying infrastructure. However, these layers have been divided into three logical layers, according to their primary purpose, amount of input and output events, and degree of processing. The lowest layer of the hierarchy, the data collection layer (L0), is mainly used for the collection of raw input data. Basic filtering and pre-processing of collected information can also be applied at L0 to reduce network traffic. However, processing on Layer 0 should be kept to a minimum to limit the monitoring resource usage. The second logical layer is the event evaluation layer (L1) that supports the integration of monitors into a cascade of increasingly more complex monitors, ranging from simple metric checks to composed monitors. Composed monitors re-use other monitoring agents to process complex rules, e.g. monitoring of an entire cluster, taking the relationship between nodes in a cluster into account. The top-most layer, named the service layer (L2), configures as well as defines the meaning of monitoring events generated in lower layers of the architecture. The architecture prevents top-level monitors from connecting to data collection layer and bypassing the event evaluation layer. L2 layer is a collection of conceptually similar functions that provide services used by any service dealing with infrastructure and receives inputs from layers below it.</p>
<p><img class="alignnone size-full wp-image-531" src="http://sla-at-soi.eu/wp-content/uploads/2009/07/monitoring-architecture_illustration.bmp" alt="monitoring-architecture_illustration" /></p>
<p>The following subsections describe the logical layers of the architecture in further detail.</p>
<h3>Data Collection Layer (L0)</h3>
<p>Layer 0 represents the data-collecting monitoring agents producing low-level and (mostly) unprocessed events. These agents are wrappers around specialized data collectors, like Ganglia 4 or Munin 4 at the infrastructure layer. They can even use probes into Virtual Machine Monitor (xentop), /proc, kernel, or middleware components (web server, application server, database). Data collection monitors support three types of operation, timed push, conditional push and pull. Timed push publishes configured metrics in uniformly timed intervals regardless of the value change since the last published value. Agents support an arbitrary number of timed pushes, i.e. different metrics can be requested at different intervals. Conditional push provides a basic mechanism for the reduction of network load. Metric values are pushed on the channel only when the last published value is exceeded by specified threshold value or percentage. Agents from higher layers can also opt to query metrics from data collectors only when needed in their own calculations. For this purpose, L0 agents also support metrics to be pulled on request. Each agent can be configured to work in one or more of these modes simultaneously.</p>
<h3>Evaluation Layer (L1)</h3>
<p>The event evaluation layer is a dynamic network of distributed agents. A dedicated infrastructure node may be used to deploy these agents to reduce the overhead of nodes offered to customers/users. Agents are all subscribed to a single configuration channel to which monitoring requests are published by service layer monitors. Monitoring requests are represented as rules that L1 monitors are expected to validate. Every L1 monitor can verify whether it supports validation of requested rules and whether it has sufficient resources to accept additional monitoring. Agents willing to start monitoring solicited rules notify the requester that, based on these responses, decides which monitor to send configuration to. It is also possible to select several monitors for the same validation rule.</p>
<h3>Service Layer (L2)</h3>
<p>Every request for monitoring has to enter through one or more service layer (L2) monitors that form the boundary of the entire monitoring architecture. These monitors’ activities are composed according to the users’ requests. Each L2 monitor implies a certain configurations of the L1 monitors, which are managed dynamically. Users of L2 monitors may be infrastructure providers, service providers or even service customers requiring immediate notification that the agreement was breached. Events from L1 monitors are used as triggers for execution of required actions. Examples of service layer tasks are:</p>
<ul>
<li>Auditing task &#8211; logging and monitoring customer’s usage of resources.</li>
<li>Accounting task &#8211; producing information used for billing.</li>
<li>Autonomous management &#8211; providing self re-organization of the infrastructure in order to improve the utilization without breaking any SLA.</li>
<li>Notification task &#8211; may be used to notify various stakeholders (service provider, customer) of a broken rule.</li>
<li>Historical information repository task &#8211; is used to store various monitoring information, ranging from raw data about infrastructure and/or services to events raised by different monitors.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2009/07/hierarchical-monitoring-services-for-efficient-distributed-system-management/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:thumbnail url="http://sla-at-soi.eu/wp-content/uploads/2009/07/monitoring-architecture_illustration.bmp" />
		<media:content url="http://sla-at-soi.eu/wp-content/uploads/2009/07/monitoring-architecture_illustration.bmp" medium="image">
			<media:title type="html">monitoring-architecture_illustration</media:title>
		</media:content>
	</item>
		<item>
		<title>So What&#8217;s in OVF?</title>
		<link>http://sla-at-soi.eu/2009/04/so-whats-in-ovf/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2009/04/so-whats-in-ovf/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 08:10:34 +0000</pubDate>
		<dc:creator>Andy Edmonds</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Latest News]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[dmtf]]></category>
		<category><![CDATA[format]]></category>
		<category><![CDATA[infrastructure]]></category>
		<category><![CDATA[model]]></category>
		<category><![CDATA[ovf]]></category>
		<category><![CDATA[schema]]></category>
		<category><![CDATA[standards]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=403</guid>
		<description><![CDATA[The Open Virtualisation Format (OVF) is a schema for describing a virtual machine or a collection of virtual machines. The initiative is the results of efforts by the Distributed Management Task Force (DMTF) who, amongst other standards, are responsible for the Common Information Model (CIM).]]></description>
			<content:encoded><![CDATA[<p>The Open Virtualisation Format (OVF; <a href="http://www.dmtf.org/standards/published_documents/DSP0243_1.0.0.pdf">DSP0243</a>, <a href="http://schemas.dmtf.org/ovf/envelope/1/dsp8023.xsd">XSD</a>) is a schema for describing a virtual machine or a collection of virtual machines. The initiative is the results of efforts by the <a href="http://www.dmtf.org">Distributed Management Task Force</a> (DMTF) who, amongst other standards, are responsible for the Common Information Model (CIM). Recently OVF version 1.0 was released and with a number of products (<a href="http://community.citrix.com/display/xs/Kensho">Kensho</a>, <a href="http://www.vmware.com/appliances/learn/ovf.html">VMware</a>, <a href="http://www.virtualbox.org/wiki/Changelog">Virtualbox</a>) supporting the standard, as well as backing from large vendors (<a href="http://www.citrix.com">Citrix</a>, <a href="http://www.vmware.com">VMware</a>, <a href="http://www.intel.com">Intel</a>], it is looking like a promising specification in an area that is quite barren of standards, namely cloud infrastructure as a service providers. OVF can be used as a means for customers of an IaaS provider to express their infrastructural needs. Currently within <a href="http://www.sla-at-soi.eu">SLA@SOI</a> we use our own schema for making requests against our infrastructure service which then in turn is translated into an internal representation. What this allows us to do is to support multiple schemas and we aim to support the OVF specification. In order to support the OVF specification, we&#8217;ve had to dig deep into OVF to assure ourselves that it can accommodate one important requirement of ours &#8211; non-functional requirements. By default, OVF does not support this but if you read section 7.3 of the specification you will find that the specification has made it possible to easily extend OVF.</p>
<p>So what&#8217;s in OVF? First of all, OVF is XML, so obviously hierarchical in nature. At the core of OVF is the <strong>Envelope</strong> element and it is this element that contains:</p>
<ul>
<li><strong>References</strong> &#8211; this is a list of external files that are required to satisfy the OVF package. An OVF package does not need local virtual disks or remote ISO files to operate. They can be supplied within the OVF document by using the &#8220;ovf:href&#8221; attribute of a File element within the Reference section.</li>
<li>Core Meta-data &#8211; this is a list of what are known as <strong>Sections</strong>. Section elements that are allowed at this level are:
<ul>
<li><strong>NetworkSection</strong> &#8211; each OVF envelope can have only one or opt not to include the section (zero-or-one).<strong> </strong>It is here where textual names are given to networks. These work as logical grouping identifiers.<strong> </strong>Here the attribute of Network, name is required.<strong><br />
</strong></li>
<li><strong>DiskSection</strong> &#8211; each OVF envelope can have only one or opt not to include the section (zero-or-one).<strong> </strong>This is a listing of disks used within the OVF document. Each disk can be referred throughout an OVF document by the mandatory &#8220;diskId&#8221; attribute. Here other attributes include:
<ul>
<li><em>fileRef</em> &#8211; this is an optional reference to virtual disk content</li>
<li><em>capacity</em> &#8211; this is required and is the virtual disks maximum capacity</li>
<li><em>capacityAllocationUnits</em> &#8211; units in which space is allocated and is optional. By default it is bytes but this can be specified to any unit as listed in the <a href="http://www.dmtf.org/standards/documents/CIM/DSP0004.pdf">DMTF DSP0004</a> specification.</li>
<li><em>format</em> &#8211; this is a URI that points to a description of the virtual disk format in use</li>
<li><em>populatedSize</em> &#8211; this is the estimated populated (space used) size of disk in bytes and is optional</li>
<li><em>parentRef</em> &#8211; a reference to a parent disk and is optional</li>
</ul>
</li>
<li><strong>DeploymentOptionSection</strong> &#8211; each OVF envelope can have only one or opt not to include the section (zero-or-one).<strong> </strong>This section lists a set of configuration options for the contained resources within the OVF document. Each configuration has a textual identifier (e.g. ovf:id&#8221;large VM&#8221;) which can be related to a particular configuration within the <strong>VirtualHardwareSection</strong>. A default configuration can be specified by setting &#8216;ovf:default=&#8221;true&#8221;<strong>&#8216;.<br />
</strong></li>
</ul>
</li>
<li>Virtual Machine Specification &#8211; the specification of virtual machines in OVF can be presented either as singular or multiple virtual machine specifications. This allows for not only the simple but complex multi-tier applications. A <strong>VirtualSystem</strong> element represents one virtual machine. A <strong>VirtualSystemCollection</strong> element represents a list of both <strong>VirtualSystem</strong>s and <strong>VirtualSystemCollection</strong>s. We&#8217;ll look further into these two types later.</li>
<li>Message Bundles &#8211; this is a list of message resource bundles for zero or more locales, used for the purpose of localisation and is denoted by the element of <strong>Strings</strong></li>
</ul>
<h2>Common Sections of VirtualSystem and VirtualSystemCollection</h2>
<p>There are three common Sections used in both VirtualSystem and VirtualSystemCollection:</p>
<ul>
<li><strong>AnnotationSection</strong> &#8211; this section contains any number of user-defined annotations that are relevent to the particular entity. These can be pieces of information that are displayed when opening an OVF document.</li>
<li><strong>ProductSection</strong> &#8211; this section specifies product information for an appliance, such as:
<ul>
<li><em>Product</em> &#8211; name of product</li>
<li><em>Vendor</em> &#8211; name of product vendor</li>
<li><em>Version</em> &#8211; product version, short form</li>
<li><em>FullVersion</em> &#8211; product version, long form</li>
<li><em>ProductUrl</em> &#8211; URL resolving to product description</li>
<li><em>VendorUrl</em> &#8211; URL resolving to vendor description</li>
<li><em>AppUrl</em> &#8211; <span style="text-decoration: underline;">experimental</span>: URL resolving to deployed product instance</li>
<li><em>Icon</em> &#8211; <span style="text-decoration: underline;">experimental</span>: display icon for product</li>
<li><em>Property</em> &#8211; this is a property bag of name/value pairs that allow for additional configuration parameters specific to the particular product. These entries are required to specify the type of the value entered (using CIM types <a href="http://www.dmtf.org/standards/documents/CIM/DSP0004.pdf">DSP0004</a>) and can be flagged if they can be configured by the user at installation time (using the &#8220;userConfigurable&#8221; boolean attribute).</li>
</ul>
</li>
<li><strong>EulaSection</strong> &#8211; this section contains the legal terms for using VirtualSystem/VirtualSystemCollection. This license should be shown during the deployment of the OVF package.</li>
</ul>
<h2>VirtualSystem</h2>
<p>A <strong>VirtualSystem</strong> is the element that describes one virtual machine. Contained in the VirtualSystem are a number of Sections, including the shared Sections of VirtualSytem and VirtualSystemCollection, that are specific to the element:</p>
<ul>
<li><strong>VirtualHardwareSection</strong> &#8211; each <strong>VirtualSystem</strong> can have only one or opt not to include the section (zero-or-one). The VirtualHardwareSection has an attribute &#8220;ovf:transport&#8221; that is required. This attribute describes how environment document information can be communicated to the guest software. A VirtualHardwareSection consists of the following elements:
<ul>
<li><em>System</em> &#8211; this element identifies the hypervisor/virtualisation technology that is to be used with the particular VirtualSystem. An enumeration of these types can be found in <a href="http://www.dmtf.org/standards/published_documents/DSP1042.pdf">DSP1042</a> (for example vmx-4 corresponds to VMWare&#8217;s 4th generation virtual hardware).</li>
<li><em>Item</em>s &#8211; there can be multiple Items in this section. Each item represents a virtual hardware component (e.g. Memory, CPU). The actual type information for each virtual hardware component can be found in DSP1042 in the <em>CIM_ResourceAllocationSettingData</em> class.</li>
</ul>
<p>A very interesting aspect is use of <strong>Ranges</strong> within the <strong>VirtualHardwareSection</strong>. This allows for minimum and maximum ranges for hardware specifications. For example using Ranges an OVF document can describe that a provider should run a particular appliance with a minimum of 1GB of RAM yet allow the usage of RAM expand and grow to a maximum of 4GB. This allows OVF explicitly capture aspects of elasticity that is core to cloud infrastructure.</li>
<li><strong>OperatingSystemSection</strong> &#8211; each <strong>VirtualSystem</strong> can have only one or opt not to include the section (zero-or-one). This section details the type of operating system installed on the virtual system. The valid operating systems that can be specified here can be found in the <em>CIM_OperatingSystem.OsType</em>.</li>
<li><strong>InstallSection</strong> &#8211; each <strong>VirtualSystem</strong> can have only one or opt not to include the section (zero-or-one). If this section is specified then it signals that the virtual machine needs to be booted once in order to install and/or configure the guest software. The attribute &#8220;ovf:initialBootStopDelay&#8221; specifies a delay to wait before stopping the machine after configuration is complete. If there are many VirtualSystems with this section it is allowable to run these boot phases concurrently.</li>
</ul>
<h2>VirtualSystemCollection</h2>
<p>A <strong>VirtualSystemCollection</strong> is the element that allows one or many virtual machines in different logical grouping. This element is a list of <strong>VirtualSystem</strong>s and/or <strong>VirtualSystemCollection</strong>s, supporting multi-tier applications and allowing for flexible grouping. Contained in the VirtualSystemCollection are a number of Sections, including the shared Sections of VirtualSytem and VirtualSystemCollection, that are specific to the element:</p>
<ul>
<li><strong>VirtualSystemCollection</strong> &#8211; each <strong>VirtualSystemCollection</strong> can have many or opt not to include the section (zero-or-many).
<ul>
<li>Or:</li>
</ul>
</li>
<li><strong>VirtualSystem</strong> &#8211; each <strong>VirtualSystemCollection</strong> can have many or opt not to include the section (zero-or-many).</li>
<li><strong>ResourceAllocationSection</strong> &#8211; each <strong>VirtualSystemCollection</strong> can have only one or opt not to include the section (zero-or-one). This describes all resource allocation requirements of a VirtualSystemCollection. This could be used perhaps where a number of appliances are to be executed on the same physical host.</li>
<li><strong>StartupSection</strong> &#8211; each <strong>VirtualSystemCollection</strong> can have only one or opt not to include the section (zero-or-one). This section specifies how a virtual machine collection is powered on and off and the sequence in which each VM should be powered on/off.</li>
</ul>
<h2>Summary</h2>
<p>The Open Virtualisation Format is a great step forward in beginning to provide standards in the area of virtualisation. It defines a means to fully describe single or multiple virtual machines. It is also extensible, a very important aspect for SLA@SOI and supports multi-tier applications and the declarative ordering of machines within a multi-tier configuration.</p>
<p>OVF does not however define a standard means in which the virtual disk should be formatted as and the layout of such disks, their endian-ness etc. This requires some recipients of OVF packages to carry out a lengthy process of disk image conversion before the disk images can be utilised. Although, virtual disks, ISO images and other File types can only be pointed using &#8220;http&#8221; or &#8220;https&#8221;. This might work for many cases but for infrastructure providers wanting to integrate OVF into their provisioning system, this may require an extension as it might be the case (e.g. in the case of Amazon EC2 AMI identifiers) that appliances and ISOs are pointed to by a unique identifier.</p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2009/04/so-whats-in-ovf/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
	</item>
		<item>
		<title>What’s in a Service Level Agreement?</title>
		<link>http://sla-at-soi.eu/2009/03/what%e2%80%99s-in-a-service-level-agreement/?utm_source=subscriber&amp;utm_medium=rss&amp;utm_campaign=rss</link>
		<comments>http://sla-at-soi.eu/2009/03/what%e2%80%99s-in-a-service-level-agreement/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 16:15:24 +0000</pubDate>
		<dc:creator>Costas Kotsokalis</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Latest News]]></category>
		<category><![CDATA[contract]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[sla]]></category>

		<guid isPermaLink="false">http://sla-at-soi.eu/?p=356</guid>
		<description><![CDATA[Our project is about managing Service Level Agreements, so in this post it is a good opportunity to discuss them in general and see some aspects of their management.]]></description>
			<content:encoded><![CDATA[<p>Our project is about managing Service Level Agreements, so in this post it is a good opportunity to discuss them in general and see some aspects of their management.</p>
<p>A Service Level Agreement (SLA) is a representation of all those features that a user should expect to receive by a service. By features here we refer not only to the functionality delivered by the service, but also to the quality that the user experiences. As a matter of fact, SLAs are typically associated with Quality of Service (QoS), but in a formal representation it is reasonably expected to find the service description as well.</p>
<p>Given the definition above, SLAs may be represented in various ways; SLA@SOI considers only their electronic representation for purposes of automated management by means of machine-readable documents. In a direct analogy with contracts as known from traditional business, we commonly refer to SLAs in our context as electronic contracts. As a consequence of this analogy, the following important questions come up:</p>
<ol>
<li>What are the legal implications of electronic contracts, when it is software that is making the decisions?</li>
<li>What is the language that an electronic contract is written?</li>
<li>How is electronic contract negotiation happening?</li>
<li>How can the terms of the contract be expressed in uniform, commonly understood ways?</li>
</ol>
<p>With regard to legal implications, it is clear that machines and software cannot be held accountable in the case of penalties, or more severe breach of contract. Therefore, it is commonly accepted that a formal (non-electronic) contract negotiated between humans needs to be in place, governing all automated interactions between software entities. This contract will have to define what are the purposes of the automated SLAs, the capabilities and administrative boundaries of the negotiating software entities, acceptable terms and penalties, and in general all those business and technical characteristics that apply to the automated interactions. Therefore, a framework contract must be in place to reflect accountability and responsibilities of involved business parties.</p>
<p>This contract will probably have to also define the language in which SLAs are negotiated and established. Just like typical business contracts which may be written in English, German, French or any other language, electronic contracts have to be expressed unambiguously in a commonly agreed machine-readable language. A few efforts on this front have taken place in the past, such as WSLA [1] and SLAng [2], but the only standardised such language which is also actively maintained, is WS-Agreement [3]. WS-Agreement is developed by the Open Grid Forum’s [4] GRAAP Working Group [5]. It defines the necessary building blocks for establishing a contract, currently in the form of a single-round negotiation without counter-offers: One party makes an offer, and the other party simply accepts or rejects it.</p>
<p>Although currently not a part of the standardised protocol, multi-round negotiation is in the works and will be made available soon in an amendment of the standard. This extension is a simple series of agreement template exchanges, each template defining candidate terms to be agreed and the acceptable ranges for these terms. When both involved parties agree on a template, then an offer is made by one of the two parties. Renegotiation is still not addressed but will probably take the same form.</p>
<p>Having defined in complete a signalling protocol for the establishment of SLAs, the question of proper definitions for terms comes up. WS-Agreement does not go into this area, which is domain-specific and cannot be addressed uniformly except for specific common definitions for terms such as cost/price, re-negotiation policies, etc. Therefore, domain-specific languages have to be agreed and implemented by WS-Agreement users, or existing languages can be reused. For instance, infrastructure provisioning requests may be addressed by embedding OVF [6] requests in WS-Agreement offers; for Grid storage reservations, SRM [7] can be used as a term language; for job submission, JSDL [8] is a typical candidate. WS-Agreement’s extensible characteristics allow the inclusion of any language deemed appropriate.</p>
<p>The above points address SLAs as documents/contracts. In next posts of the SLA@SOI blog, we will address in more detail the business-logic side of establishing agreements, such as offer optimisation, service provisioning, agreement persistency, monitoring, violation management, etc.</p>
<p><span><span>[1] <a href="http://www.research.ibm.com/wsla">http://www.research.ibm.com/wsla</a>/</span></span><br />
<span><span>[2] <a href="http://doi.ieeecomputersociety.org/10.1109/FTDCS.2003.1204317">http://doi.ieeecomputersociety.org/10.1109/FTDCS.2003.1204317</a></span></span><br />
<span><span>[3] <a href="http://www.ogf.org/documents/GFD.107.pdf">http://www.ogf.org/documents/GFD.107.pdf</a></span></span><br />
<span><span>[4] <a href="http://www.ogf.org">http://www.ogf.org/</a></span></span><br />
<span><span>[5] <a href="https://forge.gridforum.org/projects/graap-wg">https://forge.gridforum.org/projects/graap-wg</a></span></span><br />
<span><span>[6] <a href="http://en.wikipedia.org/wiki/Open_Virtualization_Format">http://en.wikipedia.org/wiki/Open_Virtualization_Format</a></span></span><br />
<span><span>[7] <a href="http://en.wikipedia.org/wiki/Storage_Resource_Manager">http://en.wikipedia.org/wiki/Storage_Resource_Manager</a></span></span><br />
<span><span>[8] <a href="http://www.gridforum.org/documents/GFD.56.pdf">http://www.gridforum.org/documents/GFD.56.pdf</a></span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://sla-at-soi.eu/2009/03/what%e2%80%99s-in-a-service-level-agreement/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
	</item>
	</channel>
</rss>
