Jump to: navigation, search

Difference between revisions of "Neutron/LBaaS/HAProxyDriver"

< Neutron‎ | LBaaS
m (Text replace - "__NOTOC__" to "")
 
(No difference)

Latest revision as of 15:54, 21 June 2013

/!\ Draft

Scope

This document describes HAProxy driver for LBaaS.

Implementation Details

The driver is implemented according to Quantum/LBaaS/DriverAPI. It supports version 1.4.

Features

  • Protocols: HTTP, TCP
  • LB algorithms: round-robin, least-connections, hash-source, hash-uri
  • Session persistence: source ip, http cookie, application cookie
  • Health monitoring: TCP, HTTP, HTTPS (Note: HAProxy config allows only one health monitor per pool)
  • Stats retrieval per pools, members

Config Life Cycle

The driver uses following algorithm when configuring HAProxy:

  • fetch config file from remote device through SSH
  • parse config file
  • do appropriate changes in the config
  • create tmp file with new config on the remote device
  • check new config file with haproxy
  • if valid - replace old config file with new one and restart haproxy service, otherwise raise error