Skip to main content

Hardware Used

Cluster Nodes β€” 4x Lenovo ThinkPad + 1x MacBook Pro​

All four nodes run on Lenovo ThinkPad laptops with identical specs:

βœ” CPU: Intel Core i7 (8 cores)
βœ” RAM: 16 GB (15.9 GiB usable)
βœ” Storage: 512.1 GB SSD
βœ” Network: 1 Gbps Ethernet (Intel I219-V)
βœ” OS: Ubuntu 24.04 LTS "Noble Numbat"

Node Details​

fast-heron β€” 10.0.0.7​

fast-heron machine detail

FieldValue
ModelLenovo ThinkPad T490 (20N2000LFR)
CPUIntel Core i7-8565U, 8 cores
RAM15.9 GiB
Storage512.1 GB
NICIntel I219-V 0.5-3
SerialPF1BQWYP
FirmwareUEFI (N2IETA5W 1.83)

fast-skunk β€” 10.0.0.4​

fast-skunk machine detail

FieldValue
ModelLenovo ThinkPad T490 (20N2000LFR)
CPUIntel Core i7-8565U, 8 cores
RAM15.9 GiB
Storage512.1 GB
NICIntel I219-V 0.5-3
SerialPF1BSCNM
FirmwareUEFI (N2IETA5W 1.83)

set-hog β€” 10.0.0.2​

set-hog machine detail

FieldValue
ModelLenovo ThinkPad T15 Gen 1 (20S6001XFR)
CPUIntel Core i7-10510U, 8 cores
RAM15.9 GiB
Storage512.1 GB
NICIntel I219-V 0.6-4
SerialPF2V7JYG
FirmwareUEFI (N2XET43W 1.33)

star-kitten β€” 10.0.0.8​

FieldValue
ModelLenovo ThinkPad T490
CPUIntel Core i7-8565U, 8 cores
RAM15.9 GiB
Storage512.1 GB
NICIntel I219-V (enp0s31f6)
MAAS system_iddr3cnm
Added2026-07-04

swift-mac β€” 10.0.0.10​

FieldValue
ModelApple MacBook Pro 13-inch Mid 2012
CPUIntel Core i5-3210M (Ivy Bridge), 2 cores / 4 threads
RAM8 GiB DDR3 1600 MHz
Storage480 GB SSD
NICBroadcom BCM57765 (built-in RJ45, enp1s0f0)
SerialC02JL20WDTY4
OSUbuntu 22.04.5 LTS (manual USB install β€” Apple EFI incompatible with MAAS PXE)
Added2026-07-12

:::note Non-MAAS install Apple hardware uses a proprietary NetBoot protocol incompatible with standard PXE/MAAS. swift-mac was provisioned via USB installer. See Adding a Non-MAAS Node for the full procedure. :::


Total Cluster Capacity​

Figures from kubectl node capacity (live, 2026-07-12):

Resourceset-hogfast-heronfast-skunkstar-kittenswift-macTotal
CPU cores8888436
RAM (usable)15.6 GiB15.6 GiB15.6 GiB15.6 GiB7.8 GiB~70 GiB
Disk (usable)468 GB468 GB468 GB468 GB437 GB~2.3 TB
Max pods110110110110110550

Live Resource Utilization​

Measured 2026-07-12 with 162 running pods across 57 ArgoCD apps:

NodeRAM used / totalRAM freeDisk used / totalDisk free
set-hog8.4 GiB / 15 GiB6.9 GiB137 GB / 468 GB308 GB (69%)
fast-heron6.5 GiB / 15 GiB8.8 GiB150 GB / 468 GB295 GB (66%)
fast-skunk4.5 GiB / 15 GiB10 GiB91 GB / 468 GB354 GB (79%)
star-kitten6.3 GiB / 15 GiB9.0 GiB143 GB / 468 GB302 GB (67%)
swift-mac1.2 GiB / 7.7 GiB6.1 GiB16 GB / 437 GB403 GB (96%)
Cluster total~27 GiB / ~68 GiB~41 GiB free~537 GB / ~2.3 TB~1.66 TB free

CPU allocation (requests/limits across all pods):

NodeCPU requestedCPU limitCores
fast-heron4.7 / 8 (59%)15.0 (187% β€” overcommit)8
fast-skunk3.4 / 8 (43%)17.0 (211% β€” overcommit)8
set-hog3.7 / 8 (46%)15.1 (188% β€” overcommit)8
star-kitten4.2 / 8 (51%)13.7 (171% β€” overcommit)8
swift-mac0.9 / 4 (23%)3.7 (91%)4

CPU limits exceed physical cores intentionally β€” this is standard Kubernetes overcommit. Limits are only enforced under CPU pressure; actual utilization stays well below capacity.


Equivalent Cloud Cost Comparison​

The cluster resource profile (36 vCPU / ~68 GiB RAM) averages ~1.9 GiB RAM per vCPU β€” this places it in the Compute-Optimized tier, not General Purpose. Prices below use On-Demand (Pay-As-You-Go) rates in US regions over a 730-hour month. These are the absolute ceiling; committed-use discounts are discussed below.

AWS β€” 9Γ— c6i.xlarge​

9 instances gives exactly 36 vCPUs and 72 GiB RAM (c6i compute-optimized family, 2 GiB/vCPU ratio).

ResourceDetailUnit CostMonthly Cost
Compute9 Γ— c6i.xlarge (36 vCPUs, 72 GiB RAM)$0.17 / hr each$1,116.90
StorageGP3 SSD (2,300 GB)$0.08 / GB-mo$184.00
Total AWS~$1,300.90 / mo

Azure β€” F32s_v2 + F4s_v2​

One Standard_F32s_v2 (32 vCPU, 64 GiB) + one Standard_F4s_v2 (4 vCPU, 8 GiB) = exactly 36 vCPU, 72 GiB.

ResourceDetailUnit CostMonthly Cost
ComputeF32s_v2 + F4s_v2 (36 vCPUs, 72 GiB RAM)$1.353 + $0.354 / hr$1,246.11
StoragePremium SSD v2 (2,300 GB)~$0.08 / GB-mo$184.00
Total Azure~$1,430.11 / mo

GCP β€” N2 Custom (36 vCPU, 68 GiB)​

GCP Custom Machine Types allow exact sizing β€” no over-provisioning required.

ResourceDetailUnit CostMonthly Cost
ComputeN2 Custom (36 vCPUs, 68 GiB RAM)Per vCPU + GB pricing~$1,150.00
StorageBalanced Persistent Disk (2,300 GB)$0.10 / GB-mo$230.00
Total GCP~$1,380.00 / mo

Bare-Metal (this setup)​

ResourceValueMonthly Cost
Hardware (4Γ— ThinkPad + MacBook Pro 2012)36 cores / ~68 GiB / ~2.3 TB~$0 (already owned)
Electricity (~225 W total, 24/7)5Γ— laptops at idle/load~$20–$35 / mo
Total bare-metal~$20–$35 / mo

:::tip Cost advantage Running bare-metal saves ~$1,265–$1,410 per month versus the cheapest equivalent cloud option (AWS ~$1,301/mo). Over a year that is $15,180–$16,920 in cloud spend avoided β€” with full hardware control and zero egress fees. :::

How to cut cloud costs by 30–70 %​

The On-Demand prices above are the absolute ceiling. If this cluster ran in the cloud continuously, several strategies would apply:

StrategySavingNotes
1-year commitment (AWS Savings Plans / Azure Reserved / GCP CUD)30–55 % off computeLocks in price; break-even in ~6 months
3-year commitmentup to 60–65 % off computeBest for stable baseline workloads
GCP Sustained Use Discountup to 20 % automaticApplied by GCP with no upfront contract when instances run >25 % of the month
Right-size to actual usagevariableCurrent utilisation: 17 / 36 cores, 537 GB / 2.3 TB β€” a smaller cluster would cut the base bill by ~40 %
Spot / Preemptible for batch60–90 % offOnly for fault-tolerant workloads (AI inference jobs, RAG pipelines)

Even with a 1-year commitment at 40 % off, the cheapest cloud option (AWS) would cost ~$780 / mo β€” still 22Γ— more expensive than running the same workload bare-metal.