From f20862441de459092bff01079b2c8c3caf3a14d8 Mon Sep 17 00:00:00 2001 From: Daman Arora <61474540+Damans227@users.noreply.github.com> Date: Thu, 27 Nov 2025 14:25:13 -0500 Subject: [PATCH 1/2] Enhance user guide with architecture and traffic flow Added architecture overview and traffic flow details for CloudStack installation. --- 1-user.md | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/1-user.md b/1-user.md index 50274cd..746938d 100644 --- a/1-user.md +++ b/1-user.md @@ -3,6 +3,7 @@ The best way to learn about CloudStack is to start as a user, learn how to setup and install it and test drive its features. +* [Architecture Overview](#architecture-overview) * [Installing CloudStack](#installing-cloudstack) * [Validate your VM](#validate-your-vm) * [Configure Networking](#configure-networking) @@ -23,6 +24,72 @@ and install it and test drive its features. * [CloudStack Feature Set](#cloudstack-feature-set) * [CloudStack Ops](#cloudstack-ops) +## Architecture Overview + +Before installing, understand what we're building. This all-in-one setup runs +four components on a single VM: + +``` +┌───────────────────────────────────────────────────────────────────┐ +│ All-in-One VM │ +│ │ +│ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────────┐ │ +│ │ Management │ │ MySQL │ │ NFS │ │ +│ │ Server │ │ │ │ /export/primary │ │ +│ │ │ │ │ │ /export/secondary │ │ +│ └──────────────┘ └──────────────┘ └──────────────────────────┘ │ +│ │ +│ ┌──────────────────────────────────────────────────────────────┐ │ +│ │ KVM Host │ │ +│ │ │ │ +│ │ ┌──────┐ ┌──────┐ ┌──────┐ │ │ +│ │ │ SSVM │ │ CPVM │ │ VMs │ │ │ +│ │ └───┬──┘ └───┬──┘ └───┬──┘ │ │ +│ │ └───────────┼───────────┘ │ │ +│ │ │ │ │ +│ │ cloudbr0 (192.168.122.10) │ │ +│ │ │ │ │ +│ │ eth0/ens3 (bridge port) │ │ +│ │ │ │ +│ └──────────────────────────────────────────────────────────────┘ │ +│ │ │ +└────────────────────────────┼──────────────────────────────────────┘ + │ + Network +``` + +### Why cloudbr0? + +The bridge (`cloudbr0`) is **required** for CloudStack to function. It acts as +a virtual switch that: + +- Holds the host's IP address (192.168.122.10) +- Connects the physical NIC (eth0/ens3) to the network +- Provides network access for all VMs (SSVM, CPVM, virtual routers, guest VMs) + +Without a bridge, VMs would be isolated inside the KVM host with no network +connectivity. CloudStack checks for this bridge when adding a KVM host - if +it doesn't exist, the host addition fails. + +### Storage + +| Path | Purpose | Used By | +|------|---------|---------| +| /export/primary | VM disks (active I/O) | KVM host mounts this | +| /export/secondary | Templates, ISOs, snapshots | SSVM manages this | + +When you create a VM, the template is copied from secondary to primary storage, +then the VM boots from primary. + +### Traffic Flow + +| From | To | Purpose | +|------|-----|---------| +| Management Server | MySQL | Database queries | +| Management Server | KVM Host | Commands (start/stop VMs) | +| KVM Host | NFS | VM disk I/O (heaviest traffic) | +| SSVM | NFS (secondary) | Template/ISO management | + ## Installing CloudStack Video: https://s3-eu-west-1.amazonaws.com/shapeblue-engineering-videos/hackerbook/1-user/1-user-task1.mp4 From 9317a572e86e9791638ecd541a4e2fe19b3d8ed4 Mon Sep 17 00:00:00 2001 From: Daman Arora <61474540+Damans227@users.noreply.github.com> Date: Thu, 27 Nov 2025 14:31:09 -0500 Subject: [PATCH 2/2] Add traffic flow diagram and communication table Added a diagram illustrating traffic flow --- 1-user.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/1-user.md b/1-user.md index 746938d..68ed7db 100644 --- a/1-user.md +++ b/1-user.md @@ -83,6 +83,34 @@ then the VM boots from primary. ### Traffic Flow +``` +┌──────────────────────────────────────────────────────────────────────────────────┐ +│ │ +│ ┌──────────────┐ commands/API ┌──────────────┐ │ +│ │ │ ───────────────────────────▶ │ │ │ +│ │ Mgmt Server │ │ KVM Host │ │ +│ │ │ ◀─────────────────────────── │ │ │ +│ └──────┬───────┘ status/heartbeat └──────┬───────┘ │ +│ │ │ │ +│ │ │ │ +│ DB read/write VM disk I/O │ +│ │ │ │ +│ ▼ ▼ │ +│ ┌──────────────┐ ┌──────────────┐ │ +│ │ │ │ │ │ +│ │ MySQL │ │ NFS │ │ +│ │ │ │ │ │ +│ └──────────────┘ └──────────────┘ │ +│ ▲ │ +│ │ │ +│ templates/ISOs │ │ +│ ┌──────────────┐ │ │ +│ │ Mgmt Server │ ─────────────────────────────────────┘ │ +│ └──────────────┘ │ +│ │ +└──────────────────────────────────────────────────────────────────────────────────┘ +``` + | From | To | Purpose | |------|-----|---------| | Management Server | MySQL | Database queries |