blob: b6528b0e841d68c8f3f7aaf022991ec92322272f [file] [log] [blame]
Eugene Nikanorovb7d82842013-03-06 16:28:33 +04001# Quantum loadbalancer plugin
2# ---------------------------
3
4# Save trace setting
5MY_XTRACE=$(set +o | grep xtrace)
6set +o xtrace
7
8
9AGENT_LBAAS_BINARY="$QUANTUM_DIR/bin/quantum-lbaas-agent"
Akihiro MOTOKIc07112a2013-03-22 16:35:38 +090010AGENT_LBAAS_PLUGIN=quantum.plugins.services.agent_loadbalancer.plugin.LoadBalancerPlugin
Eugene Nikanorovb7d82842013-03-06 16:28:33 +040011
12function quantum_agent_lbaas_install_agent_packages() {
13 if is_ubuntu || is_fedora; then
14 install_package haproxy
Vincent Untz3f34d9a2013-03-12 17:57:36 +010015 elif is_suse; then
16 ### FIXME: Find out if package can be pushed to Factory
17 echo "HAProxy packages can be installed from server:http project in OBS"
Eugene Nikanorovb7d82842013-03-06 16:28:33 +040018 fi
19}
20
21function quantum_agent_lbaas_configure_common() {
22 if [[ $Q_SERVICE_PLUGIN_CLASSES == '' ]]; then
Akihiro MOTOKIc07112a2013-03-22 16:35:38 +090023 Q_SERVICE_PLUGIN_CLASSES=$AGENT_LBAAS_PLUGIN
Eugene Nikanorovb7d82842013-03-06 16:28:33 +040024 else
Akihiro MOTOKIc07112a2013-03-22 16:35:38 +090025 Q_SERVICE_PLUGIN_CLASSES="$Q_SERVICE_PLUGIN_CLASSES,$AGENT_LBAAS_PLUGIN"
Eugene Nikanorovb7d82842013-03-06 16:28:33 +040026 fi
27}
28
29function quantum_agent_lbaas_configure_agent() {
30 LBAAS_AGENT_CONF_PATH=/etc/quantum/plugins/services/agent_loadbalancer
31 mkdir -p $LBAAS_AGENT_CONF_PATH
32
33 LBAAS_AGENT_CONF_FILENAME="$LBAAS_AGENT_CONF_PATH/lbaas_agent.ini"
34
Akihiro MOTOKIc07112a2013-03-22 16:35:38 +090035 cp $QUANTUM_DIR/etc/lbaas_agent.ini $LBAAS_AGENT_CONF_FILENAME
Eugene Nikanorovb7d82842013-03-06 16:28:33 +040036
Akihiro MOTOKIc07112a2013-03-22 16:35:38 +090037 quantum_plugin_setup_interface_driver $LBAAS_AGENT_CONF_FILENAME
Eugene Nikanorovb7d82842013-03-06 16:28:33 +040038
39 if is_fedora; then
40 iniset $LBAAS_AGENT_CONF_FILENAME DEFAULT user_group "nobody"
41 fi
42}
43
44# Restore xtrace
45$MY_XTRACE