Skip to content
Home
Projects
Web Server Load Balancing — cover
Academic · University of Minho·Devops & Infrastructure2022

Web Server Load Balancing

Containerized automatic system that balances webserver load between a scalable cluster's instances of a service and keeps comunication private inside dedicated networks.

1 min read

Languages
Frameworks & Libraries
Data & Storage
Tools & Platforms

Overview

Developed for the Infrastructures of Information Technology course, Web Server Load Balancing is a high-availability infrastructure project demonstrating containerized service orchestration, network segregation, and dynamic traffic distribution.

Architecture & Infrastructure Design

The platform uses Docker and Docker Compose to manage isolated network zones and service replicas, ensuring scalable and resilient web application delivery:

  • Network Segregation: Divided into two isolated networks: Frontend (exposing Traefik reverse proxy and web server containers) and Backend (isolating MongoDB and web server instances from direct external access).
  • Load Balancing with Traefik: Configured Traefik as a reverse proxy/load balancer that dynamically routes inbound HTTP traffic across 5 replicated Node.js web server instances using container labels/tags.
  • Containerized Data Layer: Integrated a dedicated MongoDB instance connected exclusively on the internal backend network for database persistence.
  • Automation & Management Abstraction: Built a custom PowerShell script (.ps1) to wrap complex Docker Compose CLI operations, simplifying deployment, scaling, and teardown for administrators.
  • Private Connectivity: Configured a secure ZeroTier VPN overlay network for administrative access to distributed infrastructure services.

Key Learnings & Outcomes

  • DevOps & Containerization: Mastered Docker container lifecycle management, network isolation, service discovery, and Docker Compose orchestration.
  • Reverse Proxies & Routing: Gained practical expertise configuring Traefik for dynamic load balancing and traffic management across scaled microservices.
  • Automation: Developed shell/PowerShell automation scripts to streamline environment provisioning and management.
  • Academic & Professional Recognition: Awarded a 20/20 final grade and received an internship offer from the course professor based on the quality and completeness of the architecture.

Project Gallery

See it in action