Cloud Computing Concepts

From Thomas-Krenn-Wiki
Jump to navigation Jump to search

The term Cloud—actually cloud computing—is a term for various concepts related to the delivery of IT services. These can be broadly divided into three categories and classified using the cloud computing stack. This article provides an overview of these concepts.

Cloud Computing Stack

Cloud Computing Stack.[1]

This section describes the various cloud concepts using the cloud computing stack. The cloud computing stack illustrates these concepts through the components of externally managed services that are hosted services.

Infrastructure as a Service (IaaS)

In this concept, the server infrastructure is managed by the cloud service provider (CSP). All components (CPU, RAM, storage, network) are already virtualized and can be freely allocated by the user. The user has full control over resource usage, meaning that CPU cores, RAM, and storage can be adjusted at any time as needed. Since the infrastructure is a virtualized environment and is typically designed to be redundant, it is impossible to determine on which hardware within a data center the infrastructure is currently running (exceptions are Virtual Locations—not to be confused with VPCs).

The user is solely responsible for the maintenance and support of all software, including the operating system (this also includes proper licensing).

Many service providers operate multiple data centers, giving users the ability to choose the geographic location of their data.

Benefits

Since IaaS allows for the rapid migration of virtual machines and applications without refactoring[2] (see also Lift & Shift), it is a particularly good option for time-critical IT migrations to the cloud (for example, when discontinuing colocation in a data center). Using an IaaS platform can also be worthwhile for purpose-specific applications that do not require 24-hour operation.

Platform as a Service (PaaS)

In addition to the infrastructure, this cloud concept also provides the operating system and runtime environment. As a user, you are only responsible for managing the data within the applications. Specifically, this means that a database pre-installed by the service provider (MySQL, Oracle, Postgres, etc.) is used to develop and deploy your own applications. One advantage for developers is that performance can be scaled dynamically.

Unlike IaaS, there is no longer a need to create a virtual environment.

Benefits

This approach is particularly beneficial for web developers—such as those in the e-commerce sector or other service providers—as it allows them to focus on application development.


Software as a Service (SaaS)

SaaS is arguably the best-known model for online services. This is because it has also found its way into the consumer market and is used on a regular basis.

With SaaS, the entire stack—from the hardware to the finished application—is provided as a ready-made solution.

Benefits

SaaS offerings are a resource-efficient alternative, as they eliminate the need for personnel and time to manage hardware and software.

More information

References


Author: Stefan Bohn

Stefan Bohn has been employed at Thomas-Krenn.AG since 2020. Originally based in PreSales as a consultant for IT solutions, he moved to Product Management in 2022. There he dedicates himself to knowledge transfer and also drives the Thomas-Krenn Wiki.

Translator: Alina Ranzinger

Alina has been working at Thomas-Krenn.AG since 2024. After her training as multilingual business assistant, she got her job as assistant of the Product Management and is responsible for the translation of texts and for the organisation of the department.