| Doug Wiegley | 93e682c | 2015-03-03 10:31:30 -0700 | [diff] [blame] | 1 | # Neutron loadbalancer plugin | 
 | 2 | # --------------------------- | 
 | 3 |  | 
 | 4 | # Save trace setting | 
 | 5 | LB_XTRACE=$(set +o | grep xtrace) | 
 | 6 | set +o xtrace | 
 | 7 |  | 
 | 8 |  | 
 | 9 | AGENT_LBAAS_BINARY="$NEUTRON_BIN_DIR/neutron-lbaas-agent" | 
 | 10 | LBAAS_PLUGIN=neutron_lbaas.services.loadbalancer.plugin.LoadBalancerPlugin | 
 | 11 |  | 
 | 12 | function neutron_agent_lbaas_install_agent_packages { | 
 | 13 |     if is_ubuntu || is_fedora || is_suse; then | 
 | 14 |         install_package haproxy | 
 | 15 |     fi | 
 | 16 | } | 
 | 17 |  | 
 | 18 | function neutron_agent_lbaas_configure_common { | 
 | 19 |     _neutron_service_plugin_class_add $LBAAS_PLUGIN | 
 | 20 |     _neutron_deploy_rootwrap_filters $NEUTRON_LBAAS_DIR | 
 | 21 | } | 
 | 22 |  | 
 | 23 | function neutron_agent_lbaas_configure_agent { | 
 | 24 |     LBAAS_AGENT_CONF_PATH=/etc/neutron/services/loadbalancer/haproxy | 
 | 25 |     mkdir -p $LBAAS_AGENT_CONF_PATH | 
 | 26 |  | 
 | 27 |     LBAAS_AGENT_CONF_FILENAME="$LBAAS_AGENT_CONF_PATH/lbaas_agent.ini" | 
 | 28 |  | 
 | 29 |     cp $NEUTRON_LBAAS_DIR/etc/lbaas_agent.ini $LBAAS_AGENT_CONF_FILENAME | 
 | 30 |  | 
 | 31 |     # ovs_use_veth needs to be set before the plugin configuration | 
 | 32 |     # occurs to allow plugins to override the setting. | 
 | 33 |     iniset $LBAAS_AGENT_CONF_FILENAME DEFAULT ovs_use_veth $Q_OVS_USE_VETH | 
 | 34 |  | 
 | 35 |     neutron_plugin_setup_interface_driver $LBAAS_AGENT_CONF_FILENAME | 
 | 36 |  | 
 | 37 |     if is_fedora; then | 
 | 38 |         iniset $LBAAS_AGENT_CONF_FILENAME DEFAULT user_group "nobody" | 
 | 39 |         iniset $LBAAS_AGENT_CONF_FILENAME haproxy user_group "nobody" | 
 | 40 |     fi | 
 | 41 | } | 
 | 42 |  | 
 | 43 | function neutron_lbaas_stop { | 
 | 44 |     pids=$(ps aux | awk '/haproxy/ { print $2 }') | 
 | 45 |     [ ! -z "$pids" ] && sudo kill $pids | 
 | 46 | } | 
 | 47 |  | 
 | 48 | # Restore xtrace | 
 | 49 | $LB_XTRACE |