OpenStack Birthday Celebration

The OpenStack foundation is celebrating its 3rd birthday this year and the ICCLab will be, as always, helping out at this year’s OpenStack birthday celebration. The event will be held on Coast of Zurisee near China Gardens Bellerivestrasse 138 8008 Zürich  on the 19th of July at 19:00.

It is for everyone that is interested in OpenStack, beverages and barbecues and all are more than welcome to come along!
If you want more details and to sign up, checkout the Swiss OpenStack User Group meetup page.

Location: China Gardens Bellerivestrasse 138 8008 Zürich

FluidCloud presented at USENIX

The work on cloud service relocation that is being investigated by the ICCLab was presented at USENIX HotCloud13. In FluidCloud we ask the key question of

How to intrinsically enable and fully automate relocation of service instances between clouds?

and present an architecture to realise service relocation. Below you can have a look at the presentation (PDF here) and the paper itself (and eventually a video of the talk) is available at the HotCloud13 proceedings’ site.

Events: 30th birthday of the Swiss Informatics Society SI today at the HES-SO Fribourg.

As announced in previous posts, we report below the agenda of the  Cloud Computing in Switzerland workshop, chaired by ICCLab  from 8.45 AM to 10.45 AM today at the 30th birthday of the Swiss Informatics Society SI – the HES-SO Fribourg.

8:45 – 9:00  Intro by Christof Marti (ZHAW)

Workshop introduction, goals and activities on Cloud Computing at ZHAW.

9:00-09:20  Peter Kunszt  (Systemsx) 

The view of the scientific community on technological trends and the opportunities offered by Cloud Computing infrastructures.

Cloud computing services for research – first steps and recommendations”

9:20-09:40 Markus Brunner (Swisscom)

The view of the operators on how cloud computing is transforming the ecosystem and related risks & challenges.

9:40-10:00  Sergio Maffioletti (University of Zurich) 

The view of the scientific community on how cloud technology could be used as a foundation for building a national research support infrastructure.

“Roadmap for an Open Cloud Academic Research Infrastructure”

10:00-10:20 Michèal Higgins  (CloudSigma) - remote

The view of the industry on how cloud computing is transforming the ecosystem and related risks & challenges.

“CloudSigma and the Challenges of Big Science in the Cloud”

10:20-10:40 Muharem Hrnjadovic (RackSpace)

An overview of key capabilities of cloud based infrastructures like OpenStack and challenging scenarios.

10:40-10:45 All

Q&A session


Upcoming Events: 30th birthday of the Swiss Informatics Society SI on Tuesday, 25.06.2013 at the HES-SO Fribourg.


The SI represents the computer science profession in Switzerland: professionals with a university degree or equivalent qualification, educational and research institutes, and companies that contribute to computer science. It networks its members and represents their interests in politics, education, business and research.

The 30th birthday of the Swiss Informatics Society will be holding a celebration event this Tuesday () at HES-SO in Fribourg. The programme is available here.

Including the inaugural Meeting of the Swiss AIS Chapter, from 8.45 AM to 10.45 AM there will be six parallel workshops: Green IT, Open Government Data, Cloud Computing in CH, Usability in der Praxis and Entertainment Computing.

The Cloud Computing in CH workshop is chaired by ICCLab and it will cover the following track theme:

Cloud Computing is transforming the IT industry, and this concerns a high-tech country like Switzerland in particular. The resulting potentials and risks need to be well understood in order to be able to fully leverage the technical as well as economical advantages. This workshop will provide an overview of current technological and economical trends with a particular focus on Switzerland and its currently released Federal Cloud Computing strategy.

The speakers will be: Christof Marti (ZHAW, moderator),  Peter Kunszt  (Systemsx), Markus Brunner (Swisscom), Sergio Maffioletti (University of Zurich), Michèal Higgins  (CloudSigma) and  Muharem Hrnjadovic (RackSpace).

Final agenda of this workshop will be posted  soon.







Custom branding your OpenStack testbed

Of all the IaaS software stack available, the one gaining rapidly in popularity is OpenStack. It has a huge community behind it and it enjoys support from several large IT vendors therefore ensuring a clear and long development and support roadmap ahead. Naturally it makes a logical deployment choice by numerous cloud vendors across the globe.

If you have your own OpenStack deployment, in this guide I will show you how to quickly perform a custom rebranding using some minor configuration tweaks.

If you have a OpenStack Grizzly testbed, then most likely your Horizon dashboard looks something like this:
Default OpenStack Grizzly dashboard on Ubuntu

First of all you should remove the default Ubuntu theme. Perform the steps below as superuser.

sudo su
dpkg –purge openstack-dashboard-ubuntu-theme

Next you should prepare two transparent logos, ideally of dimensions 200×27 and 365×50, lets call them logo_small.png and logo_medium.png.

Upload these images to the OpenStack images folder on the node where Horizon is installed.


Next you should create a small custom css file that would bypass the OpenStack default rendering. You should put the custom css file under this directory on the Horizon node. Lets say that you name the css file as custom.css.


Here is the example css file content that I have used:

* New theme colors for dashboard that override the defaults:
* By Preston Lee
h1.brand {
background: #DAEDE9 repeat-x top left;
border-bottom: 2px solid #BAD3E1;
h1.brand a {
background: url(../img/logo_small.png) top left no-repeat;
#splash .login {
background: #DAEDE9 url(../img/logo_medium.png) no-repeat center 35px;
#splash .login .modal-header {
border-top: 1px solid #BAD3E1;
.btn-primary {
background-image: none !important;
background-color: #7EC4B7 !important;
border: none !important;
box-shadow: none;
.btn-primary:active {
border: none;
box-shadow: none;
background-color: #66AB9F !important;
text-decoration: none;

Next edit the file using the text editor of your choice:


Simply add this line at the end of the file


And finally restart your httpd service and see the change in the dashboard page. For ubuntu use this command:

service apache2 restart; service memcached restart

Here is how the transformed dashboard page looks for our lab’s testbed setup:

New Horizon dashboard page

Adapted from a blog post by Preston Lee.

Automated Vagrant installation of MySQL HA using DRBD, Corosync and Pacemaker

Fig. 1: Redundant MySQL Server nodes using Pacemaker, Corosync and DRBD.

Fig. 1: Redundant MySQL Server nodes using Pacemaker, Corosync and DRBD.

If automation is required, Vagrant and Puppet seem to be the most adequate tools to implement it. What about automatic installation of High Availability database servers? As part of  our Cloud Dependability efforts, the ICCLab works on automatic installation of High Availability systems. One such HA system is a MySQL Server – combined with DRBD, Corosync and Pacemaker.

In this system the server-logic of the MySQL Server runs locally on different virtual machine nodes, while all database files are stored on a clustered DRBD-device which is distributed on all the nodes. The DRBD resource is used by Corosync which acts as resource layer for Pacemaker. If one of the nodes fails, Pacemaker automagically restarts the MySQL server on another node and synchronizes the data on the DRBD device. This combined DRBD and Pacemaker approach is best practice in the IT industry.

At ICCLab we have developed an automatic installation script which creates 2 virtual machines and configures MySQL, DRBD, Corosync and Pacemaker on both machines. The automated installation script can be downloaded from Github.

Making money from your cloud services – Part 2

A thoughtful pricing strategy goes a long way!

In my previous post, I tried to explain in brief the various steps that makes (or ought to make) up a general business accounting workflow. The process described in that post was adapted for the cloud service business context. Staying with the same theme, in this post I will try to show some light on the next logical step in the service monetization process.

The holy grail – the optimal pricing strategy

It is very important to have the correct pricing strategy in place. In an arena which is getting increasingly crowded, it is very important to stand out from the rest. You can either create a cloud service offering which is truly outstanding in nature, but in this era of fast technology changes and cutthroat competition, very soon you will find your innovative space being encroached by copycats and other competitors. You will have to keep on innovating, and in step – you must also differentiate your service in terms of an attractive pricing for end users. This does not necessarily imply offering lower prices, but having a smarter pricing model in place for the full spectrum of consumers you cater to (enterprises, individuals, public organizations, governments, not-for-profit groups, etc.). The design of your optimal pricing strategy will be very much service model dependent, so I will not try to prophesize a universal pricing strategy. If I dare say that I have a universal strategy in place – I would be lying. Therefore in this post I will cover the various pricing strategies to help you design a custom strategy most suitable for your cloud service offerings.

Types of pricing strategies

A carefully thought out pricing strategy would help a provider differentiate themselves from their competitors. One must conduct periodic reviews of their pricing model to take into account the ever changing business environment and changing customer expectations. With that in mind I will list the different strategies that you could adopt in your financial processes.

  • Time based pricing – you charge your consumers based on how long they have been using your services
  • Volume based pricing – you charge your consumers based on the volume of the metric that has been consumed (for ex. amount of bytes sent/received over the network)
  • Quality of Service (QoS) based pricing – if you offer differentiated services to your end users, then you could have differentiated pricing based on the different QoS offered
  • Flat rate pricing – you offer your services at a fixed rate for a fixed duration of time regardless of the volume of consumption.
  • Paris-metro pricing – in this pricing strategy you offer two or more different services offering the exact same service configuration and exact same QoS guarantees but with different pricing levels. But you reserve dedicated resources for the two offerings. The idea behind the strategy is that the higher priced service will be used less and therefore whoever is using the higher priced service will have a better experience due to low load.
  • Priority pricing – in this you charge differently depending on the levels of priority assigned to end-users’ tasks. Normally a higher priority request will get charged at an elevated rate.
  • Smart market pricing – in this model you let the market demand and supply decide the prices. In other words – your services will be priced on auctioning. This model is similar to Amazon spot pricing.
  • Edge pricing – the service pricing depends on the distance of the user from the service.
  • Responsive pricing – in this model, the pricing is activated only when there is congestion in the system.
  • Proportional fairness pricing – in this model the service prices are set keeping in mind the users’ willingness to pay and costs involved in service optimization.
  • Cumulus pricing – in this model, the user agrees to pay a flat rate for service consumption upto a certain limit, over which an added charge is levied on the extra consumption. In some sense it is similar to a dynamic pricing using a credit point system.
  • Session oriented pricing – the price is determined based on the nature of the task being conducted in a particular session.
  • One-off pricing – in this model, you charge a small amount for each session, for example – this could include the cost to perform inter-domain network orchestration for each service instantiation/setup.
  • Time of day based pricing – in this model, you set a different price for your service depending on different hours the service is being consumed (for example – daytime vs. nighttime rates charged by various utility companies around the world).

Of course, there is no one correct model. You should feel free to devise your own pricing strategy using any one or even a combination of several models described above. Since pricing is an important piece in the overall puzzle, this decision is not to be made hastingly. Let me also list the various variations in the pricing strategies that I have already listed above. Many of these are self-explanatory so I will simply list those.

  • Free of charge model
  • Periodical fees model
  • Discounts
  • Pre-paid pricing model – in fact implementing a pre-paid pricing scheme for a cloud services can prove a bit challenging (more on that will be covered in a future blog post).
  • Post-paid pricing model
  • Online accounting – in this model, you do customer accounting in a real-time basis, this could be beneficial in the sense that as a provider, you have a real time view of your resources utilization pattern and you can react to demand variations quickly.
  • Offline accounting – You store your consumers usage metrics and process them periodically at a later time. This style of operation is simpler but you lose the ability to view your users’ real time consumption behavior.
  • Static pricing – in this model, you fix the pricing function (refer to my previous blog) for the computation of charge records.
  • Dynamic pricing – as the name suggest, the pricing function is not static but changes depending on the operating environment trigger conditions and is more suitable to react to congestion in your system as the prices of your service will adjust accordingly.

So where do we go from here? Now that you are aware of the basic accounting process and various pricing strategies / models, hopefully you are more equipped now to differentiate your cloud services from your competition. Of course – you must keep yourself aware of the market situations and your consumers’ expectations. And as a general rule – never stop innovating!

So moving ahead I will try to put together a general architecture that will throw some light on how to provision a system to bill your end users and have a cash-inflow to support your business. Until then – ciao!

Open Cloud Day 2013

Open Cloud Day 2013

Another successful  Open Cloud Day 2013 held on 11-Jun-2013 in Winterthur in cooperation with  /ch/open and  ICCLab.

Over one hundred participants from academies, operators, industries, SMEs and open source organisations attended the plenary, the two parallel sessions and panel discussion. Relevant presentations on OpenStack and CloudStack architectures were discussed by Muharem Hrnjadovic and Sebastien Goasguen, respectively, and was complemented by other speeches by companies and providers that base their business of these platforms and other open platforms like CloudSigma, Anolim, EveryWare, Citrix and Cisco. Specific topics and architectures like Cloud/SDN, PaaS (Christof Marti), Elasticity and Automation were presented with in-dept discussions.

The plenary session gave the opportunity to introduce strategies for the cloud infrastructures and in particular for the Swiss Government and  Swiss Academic Open Cloud. In the first session Willy Müller (ISB) gave an update on the state of the cloud strategy of the Swiss Federal Government. This raised the discussion on the importance of security and privacy aspects for data stored in the cloud and the needs for a governmental cloud strategy. Next, Dr. Jens Piesbergen (Netcetera) presented the Swiss Governance Cloud (SGC) offering of Netcetera and partners and the challenges bringing eGovernment applications to the cloud. The 3d presentation “Open source goes Cloud” introduced the “Die Deutsche Wolke” an initiative to build a federal cloud infrastructure in cooperation with several OSB Alliance members (100% sites in Germany and under German jurisdiction).  The plenary also covered the positions of industries like Cisco (server architectures, virtualisation, automation and new configuration of data centres), Red Hat (OpenShift as PaaS infrastructure to meet the IT challenges needs to accelerate, automate, and standardise developer workflows) and CloudSigma detailing the challenges in delivering reliable and scalable performance to customers and the role of SDN for SLAs requirements.

The afternoon was dedicated to two parallel tracks for specific presentations by actors involved in the business of the Cloud mainly. Below are summaries of some of the presentations.

Track1 – Open stacks and independence

  • EveryWare AG – “Cloud provider Independence with Chef“: Features and capabilities of the automation platform CHEF can be used to realise independency for moving from a cloud operator to another. Key aspects of configuration management adaptation have been developed as well.
  • Rackspace – “Elasticity in the OpenStack cloud“:  After having introduced a graph describing the elasticity and benefits in the cloud, the interesting presentation had a special focus on the automation of the scaling and triggers to activate scaling actions within the framework of the OpenStack architecture. Elasticity using OpenStack Heat was shown with a note that the autoscaling functionality was just contributed by Rackspace through the Otter project.
  • ICCLab, ZHAW – “Provide your own PaaS environment (on OpenStack)“: The goal of PaaS is to provide developers an easy to use flexible, scalable and stable environment for their applications and let the provider do the operations of the underlying infrastructure and services. Providing your own PaaS system puts you in charge of this demanding task. The presentations gives a brief overview on how complex and challenging these systems are, using the example of CloudFoundry and BOSH.
  • Anolim – “Hand on experience with CloudStack“: This presentation provided a good B2B vision of the CloudStack from the perspective of a provider. In particular regarding the aspects of NaaS, Multi-Tenancy, Self Service Portal and utilisation of Amazon APIs.
  • Citrix, Apache CloudStack – “The Apache Cloud Ecosystem“: CloudStack together with other Apache projects helps to build a real open source cloud infrastructure. The utilisation of API wrappers allows connectivity of multiple cloud providers to data storage infrastructures. The presentation was useful to understand how Apache projects can deploy public or private cloud.

Track2 – Management, security for open clouds.

  • Stepping stone – “Automation in the Cloud – Using Open Source Software“: The stoneycloud service was presented as the foundation of their public cloud offer to thin provision new servers of customers. The Zabbix software was presented for the monitoring and configuration management based on Puppet software. The entire process was nicely shown with an example.
  • Bundesamt fur Landestopografie Swisstopo – “Load testing in the Cloud“: Mapping applications and those using satellite data are extreme bandwidth consuming. The presentation introduced the Federal Spatial Geodata Infrastructure (FSDI), launched on Jan.2013. In the presentation, how the cloud service’s load impact was detailed which was essential work used to prepare the large official go-live of their service.
  • Grid Computing Competence Centre, University of Zurich – “Roadmap for a Swiss Academic Open Cloud Infrastructure“: SwiNG roadmap presentation for promoting the adoption of Open Cloud Infrastructure for supporting scientific computing research on a Swiss wide academic scale.
  • Swisscom – “Cloud/SDN in Service Provider Networks“: The relevant focus was the paradigm called Network Function Virtualisation (NfV) and its relations with the Cloud, software defined networking and open innovation.

The conference was concluded with the panel discussion moderated by Pietro Brossi (ZHAW) involving Willy Muller, Sergio Maffioletti, Muharem Hrnjadovic and Sebastien Goasguen with relevant questions like “Where is the cloud computing today in Switzerland?” and “Where is the heading in next 2 years?” In all, the day was an excellent one, with excellent talks and organisation.






/* Style Definitions */
{mso-style-name:”Table Normal”;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;

Making money from your cloud services

Step 1 – Careful financial planning and understanding the financial process

Here at ICCLab, we do applied research covering the full spectrum of cloud services stack – Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and also Software as a Service (SaaS). Our researchers have been doing extensive research in automating the cloud stack installation and management, making your services highly available and dependable by identifying critical services in your offering. At the end of the day – everyone requires sufficient financial flow to keep their services up and running. All of us love doing ground-breaking, challenging applied research involving cutting-edge technologies, but it is also important to differentiate our service offerings from potential competition. Given the huge interest that cloud computing has generated among all stakeholders in any economic setting – it is not farfetched to assume that any novel cloud service you can come up with, very soon you will have to deal with potential competition in your service space. So the question naturally arise – how do I differentiate my service from my competitors? In this first post of a several part series we will try to take a baby step towards just that!

Understanding the business accounting process

Since most of us are pure technologists, we tend to overlook the importance of careful financial planning. Having a general understanding of the accounting process could help us create a sustainable business model for the cloud service offerings. So let us very briefly take a peek into a typical accounting process.

A typical financial process can be nicely explained using the flow diagram shown below.
Accounting process

The key elements of the accounting process are –

  • Metering – this refers to the process of collecting resource usage metrics of your customers. This step is critical and must be planned carefully as these metrics provides you the basis on which you bill your end users.
  • Mediation – it refers to the process of assimilating different metering records from various meters into a general meter-agnostic accounting records. This step helps transform disparate data into a form which is somewhat uniform and makes the rest of the elements of the accounting process metering strategy agnostic.
  • Accounting – within the overall accounting process, the accounting box task includes long term storage of the accounting records. It also houses the logic to combine several accounting records into a session record – which would entail identifying all accounting records belonging to the same customer session and then aggregating them into one or several session records.
  • Pricing – it refers to the various strategies that in the end generates the appropriate pricing function that would be applied to different session records. The pricing module needs a bit of thought to implement, and we will cover a bit more about it later in the series.
  • Charging – this is simply the process of applying the pricing functions to the session records in order to generate the charge records. This is the process that ultimately assigns the monetary values to end users’ consumption of your cloud services.
  • Cloud Bursting – in case you have agreements with other cloud service providers to migrate their peak load into our own environment, you will at some point in time bill them for the use of your resources. Depending on special agreements that could be in place between the two providers, the interdomain billing process will be different. The translation of session records into an interdomain format and handling of inter-domain bills is done in this module.
  • Billing – this refers to the process of combining the various charge units of the consumer since the last billing cycle into an easily comprehensible bill that will be sent to the users for payment. The final bill format could depend on the billing preferences such as consolidated view vs. itemized view and possibly other parameters.
  • Financial Clearing – it refers to the actual money collection from the customers, it could include processes such as handling of automatic clearing house (ACH), credit card transactions, direct banking channels, etc. Once the customer pays the bill, the billing cycle is considered closed.

Now that we have learned the high level view of a general accounting process, in the next post of the series we will focus on one of the more critical elements of the whole process – pricing!

Open Cloud Day 2013, hosted by Zurich University of Applied Sciences

Open Cloud Day 2013

The ICCLab here in ZHAW will be co-organising the Open Cloud Day 2013: 11th June 2013 here in Winterthur. /ch/open understands the importance of Cloud Computing, as does the ICCLab. To get the full power of clouds in the view of /ch/open these clouds should be open according of the principles open cloud initiative.  The goal is to foster open clouds and interoperability of clouds. Especially taking into account the requirements of public administrations and large as well as small and medium-sized businesses. In this conference concrete solutions and stacks will be discussed. At least one of the afternoon tracks will explicitly be technical. Another key focus area is in the creation of simple to use and open source GovClouds.

Conference link :

Overall Programme