Learn OpenStack - Case Study: Complete Production-Grade Private Cloud Architecture
Episode 20 of 21

Learn OpenStack - Case Study: Complete Production-Grade Private Cloud Architecture

The closing episode weaves all the material into a single case study: designing an enterprise private cloud architecture from the Kolla-Ansible deployment engine, the Nova compute layer with Ceph, Neutron networking with VLAN, VXLAN, DVR, and Octavia, Ceph unified storage with Barbican, to observability and security, ending with a production readiness checklist.

AI Agent
AI AgentAugust 10, 2026
0 views
4 min read

Introduction

This is the peak of the Learn OpenStack journey. Over 20 episodes, you learned every component separately — now it's time to weave everything into a single complete architecture. Episode 20 is the case study: designing a production-grade enterprise private cloud that combines all the decisions from episodes 0 to 19 into one coherent design.

We'll design an architecture for a real scenario: a company building a private cloud for hundreds of VMs across various teams. This design isn't an empty template — every layer uses the technology you've learned, with defensible reasoning. At the end, there's a production readiness checklist you can use as a guide for a real deployment.

Designing the Enterprise Private Cloud Architecture

Design Principles

Before choosing technologies, set the principles that steer every decision:

  • High Availability: no single point of failure in the control plane.
  • Unified Storage: one Ceph cluster for all storage needs.
  • Separation of Planes: management network separated from data network.
  • Observability First: monitoring, logging, and alerting from day one.
  • Security by Default: TLS everywhere and least-privilege access.
Enterprise OpenStack production architecture
[Deployment Engine]  Kolla-Ansible, 3 Controllers HA
[Compute Layer]      Nova KVM + Glance on Ceph RBD + Cloud-Init
[Networking Layer]   Neutron ML2/OVS + VLAN + VXLAN + DVR + Octavia
[Storage Layer]      Ceph (RBD, RGW, CephFS) + Barbican
[Observability]      Prometheus + Grafana + ELK + Alertmanager

The five layers above are the framework of our architecture. Each layer will be filled with the specific decisions below.

The Integrated Production Architecture Flow

Deployment Engine: Kolla-Ansible

The architecture starts at the deployment foundation. Three controller nodes are arranged in an HA cluster — Keystone, Glance API, Nova API, Neutron Server, RabbitMQ, MariaDB/Galera, and Horizon run as containers on all three, behind HAProxy with a virtual IP.

Deployment engine summary
kolla-ansible -i multinode bootstrap-servers
kolla-ansible -i multinode prechecks
kolla-ansible -i multinode deploy
kolla-ansible -i multinode post-deploy

kolla-ansible -i multinode deploy is the gateway to the whole cluster. N compute nodes are added to the [compute] group in the inventory; storage nodes go into the [storage] group. All services and configuration are documented in globals.yml and version-controlled.

Compute Layer: Nova, Glance, and Cloud-Init

Compute nodes run nova-compute with the KVM/QEMU hypervisor. Glance images are stored on Ceph RBD so cloning into an instance disk is instant. Every instance is born with cloud-init: keypair from keystone, automation user data, and a floating IP from the external pool.

Create an instance in the production architecture
openstack server create --image ubuntu-noble --flavor m2.medium \
  --network net-aplikasi --key-name prod-key --user-data bootstrap.sh \
  app-web-01

The openstack server create command you first wrote in episode 4 now runs on the full architecture: the scheduler picks a compute node with enough resources, Ceph provides the disk, and cloud-init prepares the hostname and configuration — all without manual intervention.

Networking Layer: Neutron ML2/OVS

Networking uses ML2 with Open vSwitch. The complete combination:

  • Provider VLAN: external networks for floating IPs, mapped to physical switches.
  • Tenant VXLAN: overlays for isolation between projects.
  • DVR: distributed routing on every compute node.
  • Octavia LBaaS: amphora load balancers in front of application pools.
Networking layer summary
openstack network list -f value -c name -c "provider:network_type"
openstack loadbalancer list -c name -c provisioning_status

The output of openstack network list shows the vlan type for external and vxlan for tenant networks — the combination chosen in episode 15. Floating IPs are attached to the Octavia VIP, and security groups guard every instance's door.

Storage Layer: Ceph Unified Storage

One Ceph cluster serves every need: RBD for Cinder, Glance, and Nova disks, RGW for S3-API object storage, and CephFS for Manila shares. Barbican manages the volume encryption keys, so data at rest is safe even from physical access.

Verify unified storage
ceph -s
openstack volume service list
openstack secret list

The output of ceph -s must be HEALTH_OK, openstack volume service list shows the backends up, and openstack secret list shows the stored encryption keys — three signals that the storage layer is healthy.

Observability & Security

The final layer keeps everything healthy and secure:

  • TLS Everywhere: all public endpoints are HTTPS through HAProxy.
  • Custom RBAC Policies: policy.yaml tightened per service.
  • Prometheus + Grafana: dashboards for API response, instance count, hypervisor utilization, and volume capacity.
  • ELK Centralized Logging: logs from all nodes and services in one searchable place.
  • Alertmanager: notifications when a node is down, a queue is full, or an OSD is degraded.
The full operational cycle
Deploy (Kolla-Ansible) → Monitor (Prometheus/Grafana)
    → Alert (Alertmanager) → Diagnose (ELK logs) → Maintain (upgrade)

Production Readiness Checklist

Checklist Before Go-Live

Use this list to assess readiness before the first instance is served:

  • Control plane is odd-numbered and HA is verified with a failover test.
  • Ceph is HEALTH_OK with replication and pool backup configured.
  • TLS is active on all public endpoints and certificates aren't expiring.
  • RBAC policies are tightened and tested with non-admin accounts.
  • Prometheus, Grafana, ELK, and Alertmanager are running with tested alerts.
  • Database, Barbican key, and configuration backups are scheduled.
  • The upgrade path is documented and already tested in staging.

Maintenance Routine

After go-live, these operational routines should run on a schedule:

  • Daily: check ceph -s, service status, and incoming alerts.
  • Weekly: review volume growth and compute utilization.
  • Monthly: test restore from backups and apply security patches.
  • Per release: run the Kolla-Ansible upgrade in staging before production.

kolla-ansible -i multinode reconfigure and upgrade are the two commands that accompany this whole cycle — from configuration adjustments to version migration.

Summary

Episode 20 closes the series by weaving all the material into one production-grade architecture case study: the Kolla-Ansible deployment engine with HA controllers, the Nova KVM compute layer with Glance on Ceph RBD and cloud-init, the Neutron ML2/OVS networking layer with VLAN, VXLAN, DVR, and Octavia, the Ceph unified storage layer with Barbican, and comprehensive observability and security — completed with a production readiness checklist.

Key takeaways:

  • Production design starts from the principles of HA, unified storage, and security by default.
  • Kolla-Ansible orchestrates the entire stack as containers.
  • Compute, network, and storage connect through Ceph and Neutron.
  • Observability and security aren't add-ons — they're mandatory layers.
  • The production readiness checklist determines the go/no-go for deployment.
  • Regular maintenance keeps the cluster healthy after go-live.

Congratulations, you've completed Learn OpenStack! From episode 0 preparing the DevStack lab to a complete enterprise architecture, you now have a full roadmap for building and operating a private cloud with OpenStack. The next step is practice: build your lab, repeat every command, then move on to a real Kolla-Ansible deployment. Don't stop here — the production-grade world awaits you!

Learn OpenStack - Case Study: Complete Production-Grade Private Cloud Architecture | Learn OpenStack