SIMPLIFYINGCLOUDSTACK DEPLOYMENTWITHAN AUTOMATIONPORTAL Vivek Kumar Lead Devops Engineer
• Introduction • Why was it needed • What we Built • Modules of the Portal • Module 1 - CloudStack Management & DB • Module 2 - Install KVM Hosts • Module 3 - CloudStack Test Cases • Technical Stack • Key Benefits • What’s Next? • Q&A TABLEOF CONTENTS
ABOUTME • Living in Noida • Lead DevOps Engineer at Yotta. • Working on CloudStack since 2016. • 10+ Years Experience in IaC. • Expertise in Automation, CloudStack, DevOps In short, I translate infrastructure challenges into clean, repeatable code so teams can deploy faster, scale confidently, and sleep better at night.
WHYWASITNEEDED The Problem: • Manual CloudStack setup was time-consuming, repetitive, and error-prone • Teams were configuring: ⚬ Netplan (NICs, Bonds, Bridges) ⚬ MySQL primary-replica ⚬ CloudStack management nodes ⚬ KVM hosts with consistent topology The Risk: • Human errors caused delays (typos, wrong NIC names, misconfigured replication) • No standard way to deploy or review settings before applying The Goal: • Make deployments consistent, fast, and error-free • Enable non-experts to provision complex infrastructure
WHATWE BUILT A Flask-based automation portal for Installing & Configuring CloudStack, setup MySQL replication cluster, setup KVM hosts, predefined CloudStack use cases. Features: • GUI-based input collection • Ansible inventory and var file generation • Jinja2 templating for Netplan • Real-time streaming output from playbooks • Dynamic cloudstack.ini for test cases
MODULES OFTHE PORTAL Install/Configure Management + DB Servers Install/Configure KVM Hosts Run CloudStack Test Cases
MODULE1-CLOUDSTACK MANAGEMENT&DB • Define number of MGMT and DB nodes • Assign hostnames, roles (master/slave) • Enter passwords and MySQL credentials • Generates: ⚬ inventory.ini ⚬ variable_file.yml • Executes: ⚬ MySQL installation ⚬ CloudStack mgmt node install • Live playbook streaming
MODULE2-INSTALLKVM HOSTS • User Specifies: ⚬ Number of KVM hosts ⚬ NIC layout ⚬ Bond/Bridge config (shared or per-host) • Generates: ⚬ inventory_kvm.ini ⚬ Netplan config per host • Applies: ⚬ Netplan configs via playbook ⚬ KVM installation steps ⚬ Handles bonding, bridging, IPs, DNS
MODULE3-CLOUDSTACKTEST CASES • Inputs: API URL, Key, Secret, Zone • Dynamically generates cloudstack.ini • Runs selected playbooks (Example: VPC Workflow, Kubernetes Workflow) • Shows live output • Fully decoupled from backend infra
TECHNICAL STACK • Frontend: HTML + Bootstrap (Jinja2 templates) • BACKEND: FLASK + SQLALCHEMY • AUTOMATION: ANSIBLE + JINJA2 • LIVE LOGS: FLASK STREAM_WITH_CONTEXT
KEY BENEFITS • Reduces deployment time from hours to minutes • Reduced error from manual steps • Consistency across environments • Avoids configuration drift and typos • Promotes standardization and collaboration • Non-experts can perform infra tasks
WHAT’SNEXT • Fine tune the portal • Potential open-source release • Add more automation use cases, i.e. Storage installation, Monitoring Setup, Logging Setup
THANKYOU NAME VIVEK KUMAR EMAIL ADDRESS VAKUMAR@YOTTA.COM Thanks for listening! If you have questions, don’t worry — I do too. Let’s figure it out together.

Simplifying End-to-End Apache CloudStack Deployment with a Web-Based Automation Portal

  • 1.
  • 2.
    • Introduction • Whywas it needed • What we Built • Modules of the Portal • Module 1 - CloudStack Management & DB • Module 2 - Install KVM Hosts • Module 3 - CloudStack Test Cases • Technical Stack • Key Benefits • What’s Next? • Q&A TABLEOF CONTENTS
  • 3.
    ABOUTME • Living inNoida • Lead DevOps Engineer at Yotta. • Working on CloudStack since 2016. • 10+ Years Experience in IaC. • Expertise in Automation, CloudStack, DevOps In short, I translate infrastructure challenges into clean, repeatable code so teams can deploy faster, scale confidently, and sleep better at night.
  • 4.
    WHYWASITNEEDED The Problem: •Manual CloudStack setup was time-consuming, repetitive, and error-prone • Teams were configuring: ⚬ Netplan (NICs, Bonds, Bridges) ⚬ MySQL primary-replica ⚬ CloudStack management nodes ⚬ KVM hosts with consistent topology The Risk: • Human errors caused delays (typos, wrong NIC names, misconfigured replication) • No standard way to deploy or review settings before applying The Goal: • Make deployments consistent, fast, and error-free • Enable non-experts to provision complex infrastructure
  • 5.
    WHATWE BUILT A Flask-based automationportal for Installing & Configuring CloudStack, setup MySQL replication cluster, setup KVM hosts, predefined CloudStack use cases. Features: • GUI-based input collection • Ansible inventory and var file generation • Jinja2 templating for Netplan • Real-time streaming output from playbooks • Dynamic cloudstack.ini for test cases
  • 6.
    MODULES OFTHE PORTAL Install/Configure Management + DBServers Install/Configure KVM Hosts Run CloudStack Test Cases
  • 7.
    MODULE1-CLOUDSTACK MANAGEMENT&DB • Define numberof MGMT and DB nodes • Assign hostnames, roles (master/slave) • Enter passwords and MySQL credentials • Generates: ⚬ inventory.ini ⚬ variable_file.yml • Executes: ⚬ MySQL installation ⚬ CloudStack mgmt node install • Live playbook streaming
  • 8.
    MODULE2-INSTALLKVM HOSTS • User Specifies: ⚬Number of KVM hosts ⚬ NIC layout ⚬ Bond/Bridge config (shared or per-host) • Generates: ⚬ inventory_kvm.ini ⚬ Netplan config per host • Applies: ⚬ Netplan configs via playbook ⚬ KVM installation steps ⚬ Handles bonding, bridging, IPs, DNS
  • 9.
    MODULE3-CLOUDSTACKTEST CASES • Inputs: APIURL, Key, Secret, Zone • Dynamically generates cloudstack.ini • Runs selected playbooks (Example: VPC Workflow, Kubernetes Workflow) • Shows live output • Fully decoupled from backend infra
  • 10.
    TECHNICAL STACK • Frontend: HTML+ Bootstrap (Jinja2 templates) • BACKEND: FLASK + SQLALCHEMY • AUTOMATION: ANSIBLE + JINJA2 • LIVE LOGS: FLASK STREAM_WITH_CONTEXT
  • 11.
    KEY BENEFITS • Reduces deploymenttime from hours to minutes • Reduced error from manual steps • Consistency across environments • Avoids configuration drift and typos • Promotes standardization and collaboration • Non-experts can perform infra tasks
  • 12.
    WHAT’SNEXT • Fine tunethe portal • Potential open-source release • Add more automation use cases, i.e. Storage installation, Monitoring Setup, Logging Setup
  • 13.
    THANKYOU NAME VIVEK KUMAR EMAIL ADDRESS VAKUMAR@YOTTA.COM Thanksfor listening! If you have questions, don’t worry — I do too. Let’s figure it out together.