Get in Touch

Course Outline

1. Brief Overview of Load Balancing and Load Balancers

2. Introduction to HAProxy

  1. Defining what HAProxy is and what it is not
  2. Understanding HAProxy's operational mechanics
  3. Core features
    1. Proxying
    2. SSL
    3. Monitoring
    4. High availability
    5. Load balancing
    6. Stickiness
    7. Sampling and data conversion
    8. Maps
    9. ACLs and conditional logic
    10. Content switching
    11. Stick-tables
    12. Formatted strings
    13. HTTP rewriting and redirection
    14. Server protection
    15. Logging
    16. Statistics
  4. Advanced features
    1. Management
    2. System-specific capabilities
    3. Scripting
  5. Sizing considerations
  6. Obtaining HAProxy

3. HAProxy Alternatives

  1. a. Nginx
  2. b. Apache, etc.

4. Quick Refresher on HTTP

  • The HTTP transaction model
  • HTTP request structure
  • The request line
  • Request headers
  • HTTP response structure
  • The response line
  • Response headers

5. Configuring HAProxy

  1. Configuration file syntax
  2. Quoting and escaping rules
  3. Environment variables
  4. Time format specifications
  5. Configuration examples

6. Global Parameters

  1. Process management and security
  2. Performance tuning
  3. Debugging techniques
  4. User lists
  5. Peers
  6. Mailers

7. Proxies

  1. Proxy keywords matrix
  2. Alphabetically sorted reference of keywords

8. Bind and Server Options

  1. Bind options
  2. Server and default-server options
  3. Server DNS resolution
  4. Global overview
  5. The resolvers section

9. HTTP Header Manipulation

10. Using ACLs and Fetching Samples

  1. ACL basics
  2. Matching boolean values
  3. Matching integers
  4. Matching strings
  5. Matching regular expressions (regexes)
  6. Matching arbitrary data blocks
  7. Matching IPv4 and IPv6 addresses
  8. Using ACLs to establish conditions
  9. Fetching samples
  10. Converters
  11. Fetching samples from internal states
  12. Fetching samples at Layer 4
  13. Fetching samples at Layer 5
  14. Fetching samples from buffer contents (Layer 6)
  15. Fetching HTTP samples (Layer 7)
  16. Pre-defined ACLs

11. Logging

  1. Log levels
  2. Log formats
  3. Default log format
  4. TCP log format
  5. HTTP log format
  6. Custom log format
  7. Error log format
  8. Advanced logging options
  9. Disabling logging of external tests
  10. Logging prior to session termination
  11. Raising log level upon errors
  12. Disabling logging of successful connections
  13. Timing events
  14. Session state at disconnection
  15. Non-printable characters
  16. Capturing HTTP cookies
  17. Capturing HTTP headers
  18. Log examples

12. Supported Filters

  1. Trace
  2. HTTP compression
  3. Stream Processing Offload Engine (SPOE)
  4. Cache
  5. Limitation and SetupCache section
  6. Proxy section

Requirements

  • A solid understanding of Linux systems and fundamental command-line operations.
  • Practical experience with server administration tasks, including configuration and monitoring.
  • Familiarity with networking concepts, particularly HTTP and TCP/IP protocols.

Target Audience

  • System administrators tasked with managing server infrastructure.
  • Network engineers looking to deploy high-performance load balancing solutions.
  • DevOps professionals interested in automating traffic management and scaling services.
 14 Hours

Testimonials (6)

Upcoming Courses

Related Categories