Mohamed Amine Hajji / Projects
A 5-node high-availability cloud lab — HAProxy load balancing, redundant app servers, and a multi-master MariaDB Galera cluster with automatic failover — provisioned from bare VMs with shell scripts.
A working 5-node distributed system built to prove out how real cloud platforms achieve high availability: every layer, from bare Ubuntu VMs to network segmentation, is provisioned with idempotent shell scripts and no manual steps. HAProxy load-balances two Node.js app servers kept file-consistent via rsync, while a multi-master MariaDB Galera cluster replicates synchronously and Keepalived floats a Virtual IP between database nodes — so the app layer never talks to a specific host, only to whichever one is healthy.
Stack: Vagrant, VirtualBox, Bash, HAProxy, Node.js, Express, MariaDB Galera, Keepalived, Linux