milesnguyenAvailable now
All projects

Private cloud infrastructure for a distributed whiteboard

Self-hosted MicroK8s cluster running a real-time collaborative whiteboard.

Role
Architecture, Kubernetes manifests and monitoring
Team
MSc group project, University of Leicester
Date
Dec 2025
Stack
  • Kubernetes (MicroK8s)
  • Docker
  • Ingress-NGINX
  • MongoDB Atlas
  • Prometheus
  • Grafana
  • WebSockets
  • Ubuntu

Overview

A self-hosted private cloud running a real-time collaborative whiteboard, designed as a CP system under the CAP theorem to guarantee consistent shared state across nodes.

What we built

  • A MicroK8s cluster running containerised client and server tiers, with 3 replicas each.
  • Ingress-NGINX load balancing, using upstream hashing for sticky sessions.
  • Horizontal Pod Autoscaling from 1 to 5 replicas, based on CPU and memory thresholds.
  • A MongoDB Atlas replica set for persistent shared state.

My contribution

  • Co-designed the architecture and technology stack.
  • Authored the Deployment and Service manifests for inter-pod communication.
  • Built the monitoring stack: Prometheus scraping through a custom PodMonitor, with Grafana dashboards.