Nginx lbr
Here's how you can configure the LBR (load balancer) server with NGINX as a reverse proxy using HTTP load balancing to your app servers, while preserving the existing Apache configurations on those backend nodes:
Step 1: Install NGINX on the LBR Server
sudo yum install nginx -y # For RHEL/CentOS
# Or for Debian/Ubuntu:
sudo apt install nginx -y
sudo systemctl enable nginx
sudo systemctl start nginx
Step 2: Configure Load Balancing in NGINX
Let’s assume your app servers are running Apache on port 8080, and their IPs are 192.168.1.10, 192.168.1.11, and 192.168.1.12. Replace them with actual IPs or hostnames.
Edit the NGINX configuration:
sudo vi /etc/nginx/nginx.conf
Add the following config:
upstream app_cluster {
server 192.168.1.10:8080;
server 192.168.1.11:8080;
server 192.168.1.12:8080;
}
server {
listen 80;
server_name staticapp.nautilus.com; # Or use "_"
location / {
proxy_pass http://app_cluster;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Step 3: Test Apache on App Servers
Make sure Apache is listening on the intended port and is running:
systemctl status httpd # Or apache2
netstat -tulnp | grep 8080
Step 4: Restart NGINX
sudo nginx -t && sudo systemctl reload nginx
Step 5: Verify the Setup
You can now test the load balancer using:
curl http://<lbr-ip>/
If you'd like to add SSL/TLS or configure sticky sessions or health checks, I can help with that next. You're almost at the finish line of your high availability deployment! 🚀