A Container-as-a-Service (CaaS) provides container platforms as hosted, all-in-one solutions via the cloud. In this guide, we’ll explain what this service entails and introduce four of the most popular CaaS platforms. Ad­di­tion­al­ly, we’ll outline how to leverage cloud-based container services in a business context.

What is CaaS?

CaaS—short for Container-as-a-Service—is a business model in which cloud computing providers offer platforms for container-based vir­tu­al­iza­tion as a scalable online service. This allows busi­ness­es to utilize container services without the need to provide the required in­fra­struc­ture them­selves. The term is a marketing concept inspired by other cloud service models like In­fra­struc­ture-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS).

What are container services?

A container service refers to the offering from a cloud computing provider that allows users to develop, test, run, or dis­trib­ute software within ap­pli­ca­tion con­tain­ers across IT in­fra­struc­tures. This concept orig­i­nates from the Linux ecosystem and enables vir­tu­al­iza­tion at the operating system level. In­di­vid­ual ap­pli­ca­tions, along with all their de­pen­den­cies such as libraries and con­fig­u­ra­tion files, are executed as en­cap­su­lat­ed instances. This approach allows for the parallel operation of multiple ap­pli­ca­tions with different re­quire­ments on the same operating system and enables de­ploy­ment across diverse systems.

CaaS typically includes a complete container en­vi­ron­ment, featuring or­ches­tra­tion tools, an image catalog (known as a registry), cluster man­age­ment software, as well as a suite of developer tools and APIs.

Compute Engine
The ideal IaaS for your workload
  • Cost-effective vCPUs and powerful dedicated cores
  • Flex­i­bil­i­ty with no minimum contract
  • 24/7 expert support included

How does CaaS differ from other cloud services?

Since the mid-2000s, cloud computing has provided busi­ness­es and in­di­vid­ual users with an al­ter­na­tive to hosting IT resources on their own premises (on-premises). Beyond CaaS, the following three service models have become par­tic­u­lar­ly popular:

  • IaaS: In­fra­struc­ture-as-a-Service provides virtual hardware resources such as computing power, storage space, and network capacity. IaaS vendors provide these basic IT in­fra­struc­ture building blocks in the form of virtual machines (VM) or virtual local area networks (VLANs).
  • PaaS: The middle tier of the cloud computing model is known as Platform-as-a-Service. Within the framework of PaaS, cloud providers provide pro­gram­ming platforms and de­vel­op­ment en­vi­ron­ments over the internet. PaaS is based on IaaS.
  • SaaS: The top level of the cloud computing model deals purely with ap­pli­ca­tions. Software-as-a-Service involves providing ap­pli­ca­tion software over the internet. The provided programs run on this service model on the provider’s own server, rather than on the customer’s hardware.
Image: Schematic representation of the cloud service models IaaS, PaaS, and SaaS
Com­par­i­son of cloud service models IaaS, PaaS, and SaaS on providing resources on their own premises.

In the tra­di­tion­al clas­si­fi­ca­tion of the three es­tab­lished cloud computing models, CaaS can be po­si­tioned between IaaS and PaaS. However, Container-as-a-Service dis­tin­guish­es itself from these service models through a fun­da­men­tal­ly different vir­tu­al­iza­tion approach: container tech­nol­o­gy.

De­f­i­n­i­tion

Container-as-a-Service is a form of container-based vir­tu­al­iza­tion that provides the runtime en­vi­ron­ment, or­ches­tra­tion tools, and all un­der­ly­ing in­fra­struc­ture resources through a cloud computing provider.

How does CaaS work?

Container-as-a-Service is a computer cluster that is available through the cloud and is used to upload, create, centrally manage, and run container-based ap­pli­ca­tions on the cloud platform. The in­ter­ac­tion with the cloud-based container en­vi­ron­ment takes place either through the graphical user interface (GUI) or in the form of API calls. The provider dictates what container tech­nolo­gies are available to users: However, the core of each CaaS platform is an or­ches­tra­tion tool (also known as or­ches­tra­tor) that allows complex container ar­chi­tec­tures to be managed.

The following functions are important:

  • Dis­tri­b­u­tion of con­tain­ers across multiple hosts
  • Grouping con­tain­ers into logical units
  • Container scaling
  • Load balancing
  • Storage capacity al­lo­ca­tion
  • Com­mu­ni­ca­tion interface between con­tain­ers
  • Service discovery

The choice of or­ches­tra­tor used within a CaaS framework directly impacts the features available to users of the cloud service. Currently, the market for container-based vir­tu­al­iza­tion is primarily dominated by the following or­ches­tra­tion tools: Docker Swarm, Ku­ber­netes, OpenShift, and Amazon Elastic Container Service (ECS).

Tip

You can find a detailed de­scrip­tion of the most popular or­ches­tra­tion tools and Docker tools as well as an in-depth com­par­i­son between OpenShift and Ku­ber­netes in separate Digital Guide articles.

What makes a Container-as-a-Service provider stand out?

When choosing a CaaS service for business use, it’s important for users to ask them­selves the following questions:

  • What or­ches­tra­tion tools are available?
  • Which file formats for container ap­pli­ca­tions are supported?
  • Is it possible to run multi-container ap­pli­ca­tions?
  • How are clusters for container op­er­a­tions managed?
  • What network and storage features are supported?
  • Does the provider offer a private registry for container images?
  • How well is the container runtime en­vi­ron­ment in­te­grat­ed with other cloud services provided by the vendor?
  • What billing models are available?

An overview of CaaS providers

Container tech­nol­o­gy is thriving, leading to a vast array of CaaS services. Vir­tu­al­iza­tion services at the operating system level can be found in the port­fo­lios of nearly all public cloud providers. Major players such as Amazon, Microsoft, Google, and IONOS—currently among the most in­flu­en­tial in the CaaS market—have expanded their cloud platforms to include Docker-based container solutions.

Note

Docker is the most popular container platform on the market. The container format developed by Docker – a further de­vel­op­ment of the Linux container (LXC) – is widely used and supported by all CaaS providers.

IONOS Cloud Managed Ku­ber­netes

Managed Ku­ber­netes is the ideal platform for high-per­for­mance and highly scalable container ap­pli­ca­tions. The service is directly ac­ces­si­ble through the IONOS Cloud Panel and combines the IONOS IaaS platform with leading container tech­nolo­gies, Docker and Ku­ber­netes.

Image: Product website of IONOS Managed Kubernetes
IONOS Cloud Managed Ku­ber­netes: Cluster-hosting, container de­ploy­ment and or­ches­tra­tion – all in one place.

The IONOS CaaS solution is designed for de­vel­op­ers and IT op­er­a­tions teams, enabling the pro­vi­sion­ing, man­age­ment, and scaling of container-based ap­pli­ca­tions in Ku­ber­netes clusters. Its feature set includes:

  • Managed cloud nodes with dedicated server resources
  • Cus­tomiz­able cluster man­age­ment
  • Full access to ap­pli­ca­tion con­tain­ers
  • User-defined or­ches­tra­tion
  • Pro­fes­sion­al support for using and creating container clusters in the Cloud Panel, provided by IONOS First Level Support
  • IONOS Cloud Community

The IONOS support covers pro­vi­sion­ing and managing container clusters. However, direct support for kubectl or the Ku­ber­netes dashboard is not provided. Through the IONOS Cloud Panel, users can access various third-party ap­pli­ca­tions such as Febrac8, Helm, GitLab, or Au­toscaler as one-click solutions. Ad­di­tion­al­ly, the DockerHub online service can be in­te­grat­ed as a registry for Docker images.

IONOS Cloud Managed Ku­ber­netes enables the fully automated setup of Ku­ber­netes clusters. The service itself is entirely free—users only pay for the un­der­ly­ing IONOS Cloud in­fra­struc­ture that is actually pro­vi­sioned.

Ad­van­tages Dis­ad­van­tages
Full Ku­ber­netes com­pat­i­bil­i­ty No software support for kubectl and Ku­ber­netes
Wide selection of pre-installed third-party solutions
High porta­bil­i­ty
IONOS Cloud Managed Ku­ber­netes
Container workloads in expert hands

The ideal platform for demanding, highly scalable container ap­pli­ca­tions. Managed Ku­ber­netes works with many cloud-native solutions and includes 24/7 expert support.

Amazon Elastic Container Service (ECS)

Since April 2015, the online retailer Amazon has been offering container-based vir­tu­al­iza­tion solutions under the name Amazon Elastic Container Service (ECS) as part of its AWS (Amazon Web Services) cloud computing platform. Like the IONOS service, ECS ex­clu­sive­ly supports con­tain­ers in the Docker format.

FnFvpIsBrog.jpg To display this video, third-party cookies are required. You can access and change your cookie settings here.

Amazon ECS provides users with various in­ter­faces to run isolated ap­pli­ca­tions in Docker con­tain­ers within the Amazon Elastic Compute Cloud (EC2). Tech­ni­cal­ly, the CaaS service is based on the following cloud resources:

  • Amazon EC2 Instances (Elastic Compute Cloud Instances): Scalable compute capacity from Amazon’s cloud computing service, available as rentable instances.
  • Amazon S3 (Simple Storage Service): A cloud-based object storage platform.
  • Amazon EBS (Elastic Block Store): High-avail­abil­i­ty block storage volumes for EC2 instances.
  • Amazon RDS (Re­la­tion­al Database Service): A database service sup­port­ing re­la­tion­al engines like Amazon Aurora, Post­greSQL, MySQL, MariaDB, Oracle, and Microsoft SQL Server.

Container man­age­ment in ECS is handled by a pro­pri­etary or­ches­tra­tor by default, acting as the master and com­mu­ni­cat­ing with an agent on each node of the managed cluster. Al­ter­na­tive­ly, the open-source module Blox allows for custom sched­ulers and third-party tools like Mesos to be in­te­grat­ed into ECS.

A key strength of Amazon ECS is its in­te­gra­tion with other Amazon services, such as the per­mis­sion man­age­ment tool “AWS Identity and Access Man­age­ment (IAM),” the cloud load balancer “Elastic Load Balancing,” and the mon­i­tor­ing service “Amazon Cloud­Watch.”

However, a notable drawback is the re­stric­tion to EC2 instances. Amazon’s CaaS service does not support IT in­fra­struc­tures outside of AWS—neither physical nor virtual. This means hybrid-cloud scenarios and combining resources from various public cloud providers (multi-cloud) are not possible. This lim­i­ta­tion aligns with Amazon’s business model: ECS is tech­ni­cal­ly free to use through AWS, with costs only incurred for the cloud in­fra­struc­ture, such as an EC2 instance cluster that supports container ap­pli­ca­tions.

Ad­van­tages Dis­ad­van­tages
In­te­gra­tion with other AWS products Container de­ploy­ment limited to EC2 instances
Free to use (in­fra­struc­ture costs apply) Pro­pri­etary or­ches­tra­tor

Google Ku­ber­netes Engine (GKE)

Google also offers a hosted container service in­te­grat­ed into its public cloud, known as the Google Ku­ber­netes Engine (GKE). The core component of this CaaS service is the or­ches­tra­tion tool Ku­ber­netes.

pQ87vVMZK-A.jpg To display this video, third-party cookies are required. You can access and change your cookie settings here.

GKE uses resources from the Google Compute Engine (GCE) and enables users to run con­tainer­ized ap­pli­ca­tions on clusters in the Google Cloud. However, GKE is not limited to Google’s in­fra­struc­ture: Ku­ber­netes’ Cluster Fed­er­a­tion System allows resources from multiple computer clusters to be combined into a logical compute fed­er­a­tion, enabling hybrid- and multi-cloud scenarios.

Each cluster created with GKE consists of a Ku­ber­netes master endpoint running the Ku­ber­netes API server and a con­fig­urable number of worker nodes. These nodes handle REST requests from the API server and execute services required to support Docker con­tain­ers. GKE also supports the widely adopted Docker container format. Users can deploy Docker images through a private container registry and define container services using JSON-based templates.

Ku­ber­netes in­te­gra­tion in GKE provides the following features for container ap­pli­ca­tion or­ches­tra­tion:

  • Automatic bin­pack­ing: Ku­ber­netes ef­fi­cient­ly schedules con­tain­ers by au­to­mat­i­cal­ly assigning them to nodes based on their resource re­quire­ments and con­straints, ensuring optimal cluster uti­liza­tion.
  • Health checks with auto-repair: Ku­ber­netes performs automated health checks to ensure all nodes and con­tain­ers function properly.
  • Hor­i­zon­tal scaling: Ku­ber­netes allows ap­pli­ca­tions to scale up or down seam­less­ly.
  • Service discovery and load balancing: Ku­ber­netes supports service discovery via en­vi­ron­ment variables and DNS records. Load balancing is achieved using IP addresses and DNS names.
  • Storage or­ches­tra­tion: Ku­ber­netes enables automatic mounting of various storage systems.

Google adopts a different pricing model for its CaaS service compared to Amazon. In the free basic edition, users receive a monthly credit of $74.40 per billing account, ap­plic­a­ble to zonal and Autopilot clusters. In the Ku­ber­netes editions, costs are based on hourly usage per vCPU or cluster. Pricing for the “Compute” edition follows the rates of the Compute Engine.

Ad­van­tages Dis­ad­van­tages
In­te­gra­tion with other Google products Steep learning curve
In­ter­op­er­abil­i­ty Can become expensive quickly

Microsoft Azure Ku­ber­netes Service (AKS)

Azure Ku­ber­netes Service (AKS) is a hosting en­vi­ron­ment optimized for Microsoft’s cloud computing platform, Azure. It enables users to develop container-based ap­pli­ca­tions and deploy them in scalable compute clusters. AKS utilizes an Azure-optimized version of open-source container tools and supports running both Linux and Windows con­tain­ers in Docker format.

Image: Microsoft Azure Kubernetes Service (AKS) Product Website
Screen­shot of the Azure Ku­ber­netes Service (AKS) website; Source: https://azure.microsoft.com/en-us/products/ku­ber­netes-service/

The features available to AKS users for running con­tainer­ized ap­pli­ca­tions in the Azure cloud depend primarily on the choice of or­ches­tra­tor. Popular supported or­ches­tra­tors include Ku­ber­netes, DC/OS, and Docker Swarm. In its Docker Swarm version, AKS relies on the Docker stack, using the same open-source tech­nolo­gies as Docker’s Universal Control Plane (a core component of Docker Dat­a­cen­ter). In­te­grat­ed into the Azure Container Service, Docker Swarm provides the following features for or­ches­trat­ing and scaling container ap­pli­ca­tions:

  • Docker Compose: Docker’s solution for multi-container ap­pli­ca­tions allows linking multiple con­tain­ers and managing them centrally with a single command.
  • Command-Line Control: The Docker CLI (Command Line Interface) and the multi-container tool Docker Compose enable direct man­age­ment of container clusters via the command line.
  • REST API: The Docker Remote API offers access to various third-party tools within the Docker ecosystem.
  • Rule-Based De­ploy­ment: The dis­tri­b­u­tion of Docker con­tain­ers within a cluster can be managed using labels and con­straints.
  • Service Discovery: Docker Swarm provides several service discovery func­tion­al­i­ties for users.

Ad­di­tion­al­ly, Microsoft has enhanced AKS with CI/CD features (con­tin­u­ous in­te­gra­tion and de­ploy­ment) for multi-container ap­pli­ca­tions developed using Visual Studio, Visual Studio Team Services, or the open-source tool Visual Studio Code. Identity and access man­age­ment is handled through Active Directory, whose core functions are free for users up to a limit of 500,000 directory objects. Similar to Amazon ECS, there are no fees for using container tools with the Azure Container Service. Charges only apply to the un­der­ly­ing in­fra­struc­ture usage.

Ad­van­tages Dis­ad­van­tages
Fully in­te­grat­ed with the Azure cloud platform Limited selection of operating systems
Supports all standard or­ches­tra­tion tools
Go to Main Menu