Course Outline
1. Overview of Load Balancing and Load Balancers
2. Introduction to HAProxy
- Defining the scope and capabilities of HAProxy
- Exploring the internal working mechanisms of HAProxy
-
Core Features
- Proxying
- SSL
- Monitoring
- High availability
- Load balancing
- Stickiness
- Sampling and data conversion
- Maps
- ACLs and conditional logic
- Content switching
- Stick-tables
- Formatted strings
- HTTP rewriting and redirection
- Server protection
- Logging
- Statistics
-
Advanced Capabilities
- Management interfaces
- System-specific enhancements
- Scripting integration
- Sizing and capacity planning
- Acquiring HAProxy distributions
3. Alternative Solutions to HA Proxy
- a. Nginx
- b. Apache and other comparable tools
4. HTTP Fundamentals Recap
- The HTTP transaction model
- HTTP request structure
- The request line
- The request headers
- HTTP response structure
- The response line
- The response headers
5. Configuring HAProxy
- Understanding the configuration file format
- Proper use of quoting and escaping
- Utilizing environment variables
- Time format specifications
- Practical configuration examples
6. Global Parameters
- Process management and security settings
- Performance tuning strategies
- Debugging techniques
- Userlists configuration
- Peers setup
- Mailers configuration
7. Proxies
- Matrix of proxy keywords
- Alphabetical reference for keywords
8. Bind and Server Options
- Bind-specific options
- Server and default-server options
- DNS resolution for servers
- Global configuration overview
- Configuring the resolvers section
9. HTTP Header Manipulation
10. Utilizing ACLs and Sample Fetching
- Fundamentals of ACLs
- Matching boolean values
- Matching integers
- Matching strings
- Matching regular expressions (regexes)
- Matching arbitrary data blocks
- Matching IPv4 and IPv6 addresses
- Constructing conditions using ACLs
- Fetching samples
- Applying converters
- Fetching samples from internal states
- Fetching samples at Layer 4
- Fetching samples at Layer 5
- Fetching samples from buffer contents (Layer 6)
- Fetching HTTP samples (Layer 7)
- Pre-defined ACLs
11. Logging Strategies
- Log levels
- Standard log formats
- Default log format configuration
- TCP log format
- HTTP log format
- Custom log format design
- Error log format
- Advanced logging options
- Excluding external tests from logs
- Logging prior to session termination
- Elevating log level on errors
- Suppressing logs for successful connections
- Timing event logging
- Capturing session state at disconnection
- Handling non-printable characters
- Capturing HTTP cookies
- Capturing HTTP headers
- Illustrative log examples
12. Supported Filters
- Trace filter
- HTTP compression
- Stream Processing Offload Engine (SPOE)
- Cache management
- Limitations and Setup: Cache section
- Proxy section configuration
Requirements
- Solid understanding of Linux operating systems and basic command-line proficiency
- Practical experience in server administration, particularly in configuration and monitoring tasks
- Strong grasp of networking fundamentals, specifically HTTP and TCP/IP protocols
Target Audience
- System administrators tasked with maintaining and optimizing server infrastructure
- Network engineers looking to deploy high-performance load balancing solutions
- DevOps professionals focused on automating traffic management and scaling services efficiently
Testimonials (6)
the training on the job mode
PIERANDREA LAMBERTINI - Istituto Europeo di Oncologia Srl
Course - HAProxy Administration
knowledge about HAProxy
Marco - CloudFire
Course - HAProxy Administration
The possibility to try with labs
Mattia Bernardi - CloudFire
Course - HAProxy Administration
All the tips and tricks on how to improve our HA-proxy
Mattias Stendahl - Hoglandsforbundet
Course - HAProxy Administration
The trainer adapted his course to answer questions even if the questions where out of the course scope.
Mario Kuik - Netherlands Army
Course - HAProxy Administration
I really liked the rapport and connection that the trainer was able to achieve with the class. And that, on the fly, he was able to shape the class into the things we needed.