Modelling Cloud Environments

  • Type: Bachelor Thesis
  • Status: Current
  • ID: 2021-011
  • Student: Ferit Tohidi Far

Thesis project abstract

In our experience, the usage of cloud computing resources like on demand virtual machines and specialized services is widely considered and adopted by practioneers. Cloud computing resources are increasingly used to relize new software services, but also existing software services transition to clouds in order to benefit from the flexibility of cloud resources in terms of cost and availability.

Comparing cloud resources and reasoning about cloud resource setups as well as their usage is difficult due to a strong heterogenity and diversity of the resources. For example, just the amount of different AWS EC2 virtual machine instance types can be overwhelming, not to speak of AWS' vast variety of software as a service offers.

Assuming that the cloud infrastructure's managed by organizations continue to grow in their size and complexity, we think that organizations will face increasing challanges regarding

  • keeping an overview about the used cloud resource setup,
  • minimizing the cloud resource usage (e.g. by a better scheduling),
  • simulating the effects of setup changes prior to making them (e.g. cost optimal choice of resources).

However, we think that a clearly specified formalized cloud resource model could help to research and develop solutions that help with the aforementioned challenges. Models for cloud setups already exist but either have a very narrow scope (e.g. focus on cost computations only) or there is only an implicit rather than a clearly specified explicit model. Implicit models were created when a model was needed in the course of solving a cloud resource related problem but the model itself was never in the focus of the work and thus was not clearly specified. Examples of implicit cloud and cloud resource model can be found in

  • the model-driven infrastructure provisioning tools ARGON,
  • the cloud topology and orchestration specification TOSCA,
  • cloud simulation software (e.g. CloudSim or CloudSim+),
  • infrastructure (as code) modelling tools (e.g. by¬†terraform, AWS CloudFormation, 1und1 IONOS Cloud Data Center Designer),
  • cloud provider's billing information / systems,
  • tools for drawing cloud infrastructure diagrams (e.g. and gliffy), and
  • hypervisors' managed resources and their properties (e.g. VMs and data stores, each with their respective properties),

The research question for this thesis is: What is a suitable cloud infrastructure resource model that can be used for

  • providing an overview of used cloud infrastructure resources,
  • minimizing cloud infrastructure resource usage, and
  • simulating the effects of changes to the cloud infrastructure resource setup.

The idea behind this thesis project is to come up with such a model by studying respective literature and examples of implicit cloud resource models and then unifying the discovered concepts into a cloud resource model for the aforementioned purposes.