In a previous Free Load Balancer blog, we outlined the reasons why you might want to deploy a load balancer on your home network. We also outlined the high-level steps to download and install the free edition of Progress Kemp LoadMaster. To recap the steps from the previous blog:
- Visit FreeLoadBalancer.com and register for an account.
- Download the appropriate image for your virtualization platform (VMware, Microsoft Hyper-V, KVM, Nutanix, Oracle VirtualBox and XEN).
- Deploy the image on your chosen Hypervisor.
- Power on the virtual appliance and access the console.
- Set up the initial network configuration (IP address, gateway, DNS).
- Access the web interface using the configured IP address.
- Complete the licensing process by selecting the free option.
- Create your admin password and log in to start configuring your load balancer.
The process of installing the free load balancer in your homelab network is outlined and explained in this excellent 42-minute video from Network Chuck.
In this blog, we'll break down the thought processes behind whether you should put a load balancer on your home network. We'll also link to specific chapters in the NetworkChuck video, where he discusses why and how to deploy free LoadMaster.
Understanding Progress Kemp LoadMaster Free
Progress Kemp LoadMaster Free Load Balancer offers enterprise-level load balancing features for trial environments, DevSecOps deployments and most relevant for this blog, home and hobbyist users. Those features include:
- Layer 4 to Layer 7 Load Balancing - Allows for detailed traffic management across various protocols and applications.
- Web Application Firewall (WAF) - Protects against common web vulnerabilities.
- Advanced Health Checking - Continuously monitors the health of servers and services on your network to direct traffic to available and responsive services.
Compared to other free load balancing solutions, Free Load Balancer stands out via its user-friendly interface, robust feature set and backing from a leading company in the load balancing sector.
Chapter 3 of the Network Chuck tutorial video discusses What is a Load Balancer?? and Chapter 4 outlines Why put it on your home network?
Prerequisites for Installation
To deploy the LoadMaster Free Load Balancer edition on your home network requires the following prerequisites:
- The means to run virtual machines on your home network (such as VMware, Microsoft Hyper-V, KVM, Nutanix, Oracle VirtualBox and XEN).
- A domain name you can use to access services from outside your network. This can be an existing domain name or a new one from a free domain name registrar.
- A free Cloudflare account to manage DNS and IP address hiding. Using Cloudflare is not required, but it is demonstrated in the NetworkChuck tutorial video. A similar service to Cloudflare can be used instead, or you can even configure the LoadMaster itself to provide the same functionality.
Installation Process
Installing the LoadMaster Free Load Balancer is a simple multi-step process:
- Visit https://freeloadbalancer.com and click the Download button on the home screen.
- Create a Progress ID on the free registration page (or use the Already have an Account? Log in option below the signup form if you already have a Progress ID).
- Validate your new Progress ID via the email you get sent. This is required to license the Free Load Balancer.
- Download the correct file for the Hypervisor you'll be using.
- Create a new virtual machine in your Hypervisor management console using the downloaded Free Load Balancer files.
- Edit the new virtual machine so that it uses manual static MAC Addresses and not dynamic MAC Addresses that get created each time the virtual machine (VM) starts. The Progress Free Load Balancer license uses the MAC address of the VM it is running on.
- Run the newly created VM, agree to the license screen and log in with the Progress ID you created previously.
If you want to see all this in action using a VM running on a local VMware ESXi deployment, then Chapter 5 of the NetworkChuck video has you covered.
Initial Configuration
Once you have the Free Load Balancer running in a VM on your home network, you need to configure it. Doing this means that the LoadMaster software knows about the services on your network and how to redirect access requests to the correct server, device or service. This involves:
- Access the Web Interface.
- Navigate to the IP address of the load balancer in a web browser.
- Log in using your Progress ID. Set Up Virtual Services.
- Go to the Virtual Services tab and select Add New.
- Enter the necessary details, such as IP address, port number, and protocol.
- Configure the service settings according to your needs.
- Create Server Farms.
- Under the Real Servers tab, add your backend servers.
- Assign each server to a previously created virtual service.
This is a necessarily abbreviated list of steps. NetworkChuck’s tutorial video, Chapter 6: Load Balancer Initial Setup, shows how to configure multiple services.
Security Considerations
LoadMaster Free Load Balancer includes the security functionality and features found in the commercial versions. To enable these security features, you need to:
- Use Cloudflare or a similar DNS service - Hide your network IP address and Load Balancer instance from the Internet using a DNS service such as Cloudflare. As explained in Chapter 8: Cloudflare Setup in the NetworkChuck tutorial video.
- Enable the Web Application Firewall (WAF) - Activate the Web Application Firewall to protect against common web threats.
- Configure SSL/TLS - Configure SSL/TLS certificates to encrypt traffic between clients and servers. You can use the Cloudflare service to handle certificates, as outlined in Chapter 9: SSL Certificates Install in the tutorial video, or configure them directly on the LoadMaster Free Load Balancer instance.
- Do Regular Updates - Keep the load balancer software up to date to protect against vulnerabilities.
- Use Strong Passwords - Use complex passwords and change them regularly.
- Network Segmentation - You can also optionally isolate the load balancer from other network segments to limit exposure, although this may be overkill for a Home Network. However, it’s an excellent way to learn how to implement segmentation for a system administration job.
Optimizing Performance
To get the most out of LoadMaster Free Load Balancer, apply these optimizations:
- Choose an appropriate Load Balancing Algorithm:
- Round Robin for even distribution.
- Least Connection for handling varied server capacities.
- Or another suitable load balancing method.
- Use Content Switching:
- Direct traffic to services based on URL paths or headers. See Chapter 11: Setup Content Switching in the NetworkChuck video.
- Implement Caching:
- Enable caching for content to reduce server or service device load. This may not add much in a homelab setup, but it's good to know how to do it for business deployments.
- Fine-tune TCP Settings:
- Adjust TCP settings for optimal performance. If required, on your home network.
- Health Checks:
- Configure service health checks to monitor the status of services on the home network.
Troubleshooting and FAQs
The setup and configuration of LoadMaster Free Load Balancer is straightforward, but some common issues and FAQs often arise.
Virtual Service not working:
- Check real server health and connectivity.
- Verify that firewall or router rules are allowing the traffic to flow.
Connectivity issues:
- Review Network settings.
- Make sure there are no firewall rules blocking traffic.
Licensing expiration:
- Make sure that the Free Load Balancer has internet access. The instance needs to "phone home" to refresh the free license once every 30 days.
SSL/TLS issues:
- Maintain certificates are correctly installed and not expired. If using Cloudflare or similar, review certificate settings there.
- Check SSL/TLS version compatibility.
Performance issues:
- Monitor CPU and memory usage in the VM and the underlying host hardware.
- Review logs for errors or warnings.
FAQs
Q: Can I upgrade from the free version to a paid version?
A: Yes, you can purchase and apply a commercial license to remove all limitations without reinstalling the LoadMaster software.
Q: How often does the free version need to be relicensed?
A: The free version requires relicensing every 30 days via the "phone home" feature. This is an automatic process that happens without intervention.
Q: Can I use the LoadMaster Free Load Balancer in a production environment?
A: While it's possible, it's recommended that you use a commercial version for production workloads. In any event, you can't use the Free Load Balancer for any revenue-generating services.
Q: Can I use the LoadMaster Free Load Balancer with Docker?
A: Yes, it supports integration with containerized environments like Docker and Kubernetes.
Q: How do I back up my configuration?
A: Navigate to System Configuration -> Backup/Restore to create and download configuration settings backups.
Conclusion
The free load balancer offers homelab enthusiasts a powerful tool to enhance their setups by delivering free enterprise-grade load-balancing capabilities in personal environments. The rich feature set, user-friendly web and scripting interfaces and broad compatibility with various technologies make it an excellent choice for delivering a homelab setup and exploring advanced networking concepts.
We invite all homelab enthusiasts to try out the Free Load Balancer at FreeLoadBalancer.com and discover how it can enhance your homelab setup. You'll also gain valuable skills that employers in the tech job market are seeking.