# VM Disk Size Recommendations ## Current Disk Sizes - **VM 100 (cloudflare-tunnel)**: 40G - **VM 101 (k3s-master)**: 80G - **VM 102 (git-server)**: 100G - **VM 103 (observability)**: 200G ## Recommended Disk Sizes ### VM 100: Cloudflare Tunnel (40G → 20G) **Current:** 40G **Recommended:** 20G **Rationale:** - Ubuntu 24.04 base: ~5-8GB - cloudflared binary: ~50MB - Logs and config: ~1-2GB - **Total needed:** ~10-12GB - **20G provides:** 2x headroom for logs and updates ### VM 101: K3s Master (80G → 40G) **Current:** 80G **Recommended:** 40G **Rationale:** - Ubuntu 24.04 base: ~5-8GB - K3s binaries: ~200MB - Container images: ~5-10GB (can grow) - etcd data: ~2-5GB (grows with cluster) - **Total needed:** ~15-25GB - **40G provides:** Good headroom for images and etcd growth - **Note:** Can expand later if needed ### VM 102: Git Server (100G → 50G) **Current:** 100G **Recommended:** 50G **Rationale:** - Ubuntu 24.04 base: ~5-8GB - Gitea/GitLab: ~2-5GB - Repository data: Variable (depends on usage) - **Total needed:** ~15-30GB for small-medium repos - **50G provides:** Good starting point, can expand later - **Note:** If you have large repos, keep 100G or expand later ### VM 103: Observability (200G → 100G) **Current:** 200G **Recommended:** 100G **Rationale:** - Ubuntu 24.04 base: ~5-8GB - Prometheus: ~10-30GB (depends on retention) - Grafana: ~2-5GB - Loki/Logs: ~20-50GB (depends on retention) - **Total needed:** ~40-90GB for 7-30 day retention - **100G provides:** Good starting point for 7-14 day retention - **Note:** Can expand later as metrics/logs grow ## Summary | VM | Current | Recommended | Savings | |----|---------|-------------|---------| | cloudflare-tunnel | 40G | 20G | -20G | | k3s-master | 80G | 40G | -40G | | git-server | 100G | 50G | -50G | | observability | 200G | 100G | -100G | | **Total** | **420G** | **210G** | **-210G** | ## Benefits of Smaller Disks 1. **Faster Cloning:** Smaller disks clone faster from template 2. **Less Storage Used:** Frees up 210GB on Proxmox storage 3. **Faster Backups:** Smaller disks backup faster 4. **Cost Savings:** If using paid storage, reduces costs 5. **Easy Expansion:** Can expand disks later if needed (Proxmox supports online expansion) ## When to Use Larger Disks - **Git Server (100G)**: If you expect large repositories or many repos - **Observability (200G)**: If you need 30+ days of metrics/logs retention - **K3s Master (80G)**: If you'll store many container images locally ## Disk Expansion Proxmox supports online disk expansion. You can: 1. Expand via Proxmox web UI 2. Expand via API 3. Expand via `qm resize` command After expansion, resize the filesystem inside the VM: ```bash sudo growpart /dev/sda 1 sudo resize2fs /dev/sda1 # for ext4 # or sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv # for LVM sudo resize2fs /dev/ubuntu-vg/ubuntu-lv ``` ## Recommendation **Start with smaller sizes (20G, 40G, 50G, 100G)** and expand later if needed. This: - Saves storage space - Speeds up initial deployment - Provides sufficient space for initial operations - Allows expansion when actual usage patterns are known