Atom feed of this document
 

 Quantum Server with Plugin

This is the Quantum service that runs the Quantum API Web Server. It is responsible for loading a plugin and passing the API calls to the plugin for processing. The quantum-server should receive one of more configuration files as it its input, for example:

quantum-server --config-file <quantum config> --config-file <plugin config>

The quantum config contains the common quantum configuration parameters. The plugin config contains the plugin specific flags. The plugin that is run on the service is loaded via the configuration parameter ‘core_plugin’. In some cases a plugin may have an agent that performs the actual networking. Specific configuration details can be seen in the Appendix - Configuration File Options.

Most plugins require a SQL database. After installing and starting the database server, set a password for the root account and delete the anonymous accounts:

$> mysql -u root
mysql> update mysql.user set password = password('iamroot') where user = 'root';
mysql> delete from mysql.user where user = '';

Create a database and user account specifically for plugin:

mysql> create database <database-name>;
mysql> create user '<user-name>'@'localhost' identified by '<user-name>';
mysql> create user '<user-name>'@'%' identified by '<user-name>';
mysql> grant all on <database-name>.* to '<user-name>'@'%';

Once the above is done you can update the settings in the relevant plugin configuration files. The plugin specific configuration files can be found at $QUANTUM_CONF_DIR/plugins.

Some plugins have a L2 agent that performs the actual networking. That is, the agent will attach the virtual machine NIC to the Quantum network. Each node should have a Quantum agent running on it. Note that the agent receives the following input parameters:

quantum-plugin-agent --config-file <quantum config> --config-file <plugin config>

Two things need to be done prior to working with the plugin:

  1. Ensure that the core plugin is updated.

  2. Ensure that the database connection is correctly set.

The table below contains examples for these settings. Some linux packages may provide installation utilities that configure these.

Table 6.1. Settings
Parameter Value
Open vSwitch
core_plugin ($QUANTUM_CONF_DIR/quantum.conf) quantum.plugins.openvswitch.ovs_quantum_plugin.OVSQuantumPluginV2
sql_connection (in the plugin configuration file) mysql://<username>:<password>@localhost/ovs_quantum?charset=utf8
Plugin Configuration File $QUANTUM_CONF_DIR/plugins/openvswitch/ovs_quantum_plugin.ini
Agent quantum-openvswitch-agent
Linux Bridge
core_plugin ($QUANTUM_CONF_DIR/quantum.conf) quantum.plugins.linuxbridge.lb_quantum_plugin.LinuxBridgePluginV2
sql_connection (in the plugin configuration file) mysql://<username>:<password>@localhost/quantum_linux_bridge?charset=utf8
Plugin Configuration File $QUANTUM_CONF_DIR/plugins/linuxbridge/linuxbridge_conf.ini
Agent quantum-linuxbridge-agent

All of the plugin configuration files options can be found in the Appendix - Configuration File Options.



loading table of contents...