Open-source Cloud Computing

А highly scalable IaaS cloud computing platform used by service providers, enterprises, telecoms, and private cloud builders

apache cloudstack

Apache CloudStack - A Powerful Open-source Solution

Apache CloudStack is a highly scalable IaaS cloud computing platform that provides an orchestration layer, automating the creation, provisioning and configuration of IaaS components. It turns existing virtual infrastructure into a cloud-based Infrastructure as a Service (IaaS) platform. Because CloudStack leverages existing infrastructure, the costs and time for an organization to build a multi-tenant IaaS platform are greatly reduced.

CloudStack is a turnkey solution for MSPs, cloud providers, telcos and enterprises. It includes the entire “stack” of features you need: compute orchestration, Network-as-a-Service, user and account management, a full, open and stable native API, resource accounting, and a first-class User Interface.

Use Cases

CloudStack Architecture

CloudStack is an IaaS cloud computing platform that pools computing resources to build public, private and hybrid Infrastructure as a Service (IaaS) clouds. CloudStack manages the network, storage, and compute nodes that make up a cloud infrastructure.

A CloudStack cloud has a hierarchical structure which enables it to scale to manage tens of thousands of physical servers, all from a single management interface.

cloudstack architecture


A Zone is the largest organisational unit within a CloudStack deployment. Typically, a datacentre (DC) implementation will contain a single Zone, but there are no hard and fast rules, and a DC can contain multiple Zones. A Zone consists of at least one Pod, and Secondary Storage which is shared by all Pods in the Zone. CloudStack Edge Zones are a specific type of Zone, designed to deploy lightweight resources in Edge environments.


A Pod typically relates to a discrete rack in a datacentre. Pods contain one or more Clusters and a Layer 2 switch architecture which is shared by all Clusters in that Pod. End users are not aware of and have no visibility of Pods.


A Cluster is a group of identical Hosts running a common Hypervisor. It is the fourth-largest organizational unit within a CloudStack deployment. Clusters are contained within pods, and pods are contained within zones. The size of the cluster is limited by the underlying hypervisor, although CloudStack recommends smaller cluster size in most of the cases. A cluster consists of one or more hosts and one or more primary storage servers.

Primary Storage

Primary Storage is usually unique to each Cluster (although it could also be used Zone-wide) and is used to host the virtual machine instances. CloudStack is designed to work with all standards-compliant iSCSI and NFS Servers supported by the underlying Hypervisor, but many other storage solutions are also supported (SDS like Ceph, StorPool and LINBIT).

Secondary Storage

Secondary Storage stores virtual machine Templates, ISO images and Volume Snapshots. The storage is available to all PODs in a Zone. Secondary Storage uses the Network File System (NFS) to ensure it can be accessed by any Host in the Zone. For cross-zone secondary storage, S3 storage can be considered.

CloudStack Networking

CloudStack has an extremely versatile and powerful virtual networking model, and it supports different types of guest network setups for instances to communicate with each other and the public internet. Guest networks in CloudStack provide the services for instances (guests) to communicate with each other.

There are two main types of guest networks: Isolated networks and Shared networks. Also, there is the option to create a Virtual Private Cloud (VPC), grouping instances in separate tiers with their own IP subnet from a larger CIDR. It is possible to use VLAN-based segregation or Software-defined Network (SDN) to isolate guest traffic.


CloudStack is designed to work with various commodity and enterprise-rated storage systems. It can also leverage the local disks within the hypervisor hosts, if supported by the selected hypervisor. Storage type support for guest virtual disks differs based on hypervisor selection.

CloudStack defines two types of storage: primary and secondary. Primary storage can be accessed by either HBA, iSCSI, NFS[MS2] or supported SDS storage. Additionally, direct attached storage may be used for primary storage. Secondary storage is accessed using NFS or S3.

There is no ephemeral storage in CloudStack. All volumes on all nodes are persistent.

CloudStack also supports the usage of software-defined storage solutions, such as Ceph, StorPool, LINBIT and others.

Hypervisor Support

CloudStack is hypervisor agnostic, supporting VMware, KVM,  XenServer and XCP-ng. This gives CloudStack a unique position in the market: it is not proprietary technology and is not tied to any specific infrastructure.

User Interface

CloudStack offers an administrator’s web interface used for provisioning and managing the cloud, as well as an end-user’s Web interface used for running VMs and managing VM templates. The UI can be customised to reflect the desired service provider or enterprise look and feel and is decoupled from the CloudStack core. It relies on the API for managing CloudStack resources.

Restful API & CLI

Users can manage their cloud with an easy-to-use web interface, command line tools, and/or a full-featured RESTful API. The CloudStack API can be used to provision, view, and manage the cloud infrastructure, domains, user accounts, projects, and configuration settings.

In addition, Apache CloudStack is integrated with leading open-source cloud infrastructure automation projects such as Terraform, Ansible, Kubernetes ClusterAPI and Packer, enabling developers to easily integrate existing CI/CD workflows into the platform.


Apache CloudStack supports a wide range of integrations. Its global community constantly develops new features and supports new technologies with a clearly defined, evolving roadmap guided by users and the community. There are no different levels of support or versions, and no vendor has a dominant influence over the project and most organizations run the freely available, open-source version in production.


Deployment Scenarios

Apache CloudStack offers a comprehensive solution for the Public Cloud, allowing businesses to leverage scalable, on-demand resources. It streamlines the provisioning and management of virtualized environments, reducing both costs and complexity. Public Cloud deployment with CloudStack ensures a flexible and responsive infrastructure, enabling organizations to adapt quickly to market changes and customer demands. By embracing CloudStack’s Public Cloud solutions, businesses can enhance agility and drive innovation in a highly competitive landscape.

The Private Cloud deployment option with Apache CloudStack provides organisations with a dedicated and secure environment tailored to their specific needs. It offers unparalleled control over data, resources, and security policies, ensuring compliance with regulatory requirements. By employing CloudStack’s Private Cloud solutions, enterprises can enjoy the benefits of cloud computing while maintaining complete sovereignty over their infrastructure. This approach aligns perfectly with business objectives, optimising resource utilisation and fostering growth.

Hybrid Cloud deployment with Apache CloudStack bridges the gap between public and private clouds, offering the best of both worlds. It enables organisations to balance cost-efficiency and scalability with security and control. With CloudStack’s Hybrid Cloud solutions, businesses can effortlessly move workloads between private and public environments as demands shift, maintaining optimal performance and flexibility. This unique capability ensures that organisations can respond to ever-changing business requirements, making the most of both public and private resources, and positioning them for success in a rapidly evolving marketplace.

Download a step-by-step guide to migrate your existing vSphere environment to a robust IaaS cloud environment based on Apache CloudStack and the KVM Hypervisor, ensuring a smooth, low-friction migration journey.