Jump to: navigation, search

Difference between revisions of "PLUMgrid-Neutron"

(Created page with " <!-- ##master-page:HomepageTemplate --> <!-- #format wiki --> <!-- #language en --> = PLUMgrid Neutron Plugin = ---------------------- == Overview == PLUMgrid Neutron ...")
 
(move from quantum to neutron and fix plugin path)
Line 9: Line 9:
 
== Overview ==
 
== Overview ==
  
PLUMgrid Neutron Plugin implements the Neutron v2.0 API.
+
PLUMgrid Neutron Plugin v2 implements the Neutron v2.0 API.
 
 
== Directory Structure ==
 
 
 
The PLUMgrid Neutron Plugin can be downloaded from the repository located at:
 
 
 
<pre><nowiki>
 
https://github.com/emagana/quantum.git
 
(branch: bp/plumgrid-quantum-plugin)
 
</nowiki></pre>
 
 
 
 
 
This repository represents code that will be put into the PLUMgrid directory as:
 
 
 
 
 
<pre><nowiki>
 
/opt/stack/quantum/quantum/plugins/plumgrid
 
</nowiki></pre>
 
 
 
  
 
== Requirements ==
 
== Requirements ==
  
PLUMgrid IO Visor 2.1.9 (or higher)
+
* PLUMgrid IO Visor 2.1.12 (or higher)
 +
* PLUMgridLibrary
  
 
== Configuration ==
 
== Configuration ==
Line 42: Line 25:
 
$ mysql -u root -p$PASS -e 'DROP DATABASE IF EXISTS plumgrid_neutron;'
 
$ mysql -u root -p$PASS -e 'DROP DATABASE IF EXISTS plumgrid_neutron;'
 
$ mysql -u root -p$PASS -e 'CREATE DATABASE IF NOT EXISTS plumgrid_neutron;'
 
$ mysql -u root -p$PASS -e 'CREATE DATABASE IF NOT EXISTS plumgrid_neutron;'
 +
$ mysql -u root -p$PASS -e 'GRANT ALL ON plumgrid_neutron.* TO '$Neutron_User'@'%' IDENTIFIED BY '$Neutron_Pass';
 
</nowiki></pre>
 
</nowiki></pre>
  
* Edit /etc/quantum/quantum.conf and set provider as:
+
* Edit /etc/neutron/neutron.conf and set provider as:
  
 
<pre><nowiki>
 
<pre><nowiki>
 
[DEFAULT]
 
[DEFAULT]
core_plugin = quantum.plugins.plumgrid.plumgrid_nos_plugin.plumgrid_plugin.NeutronPluginPLUMgridV2
+
core_plugin = neutron.plugins.plumgrid.plumgrid_plugin.plumgrid_plugin.NeutronPluginPLUMgridV2
allow_overlapping_ips = False
+
 
 +
[DATABASE]
 +
sql_connection = mysql://<username>:<password>@<database_ip>:3306/plumgrid_neutron
 
</nowiki></pre>
 
</nowiki></pre>
  
Line 59: Line 45:
 
</nowiki></pre>
 
</nowiki></pre>
  
* Edit /etc/quantum/plugins/plumgrid/plumgrid.ini (replace <placeholder> as required):
+
* Edit /etc/neutron/plugins/plumgrid/plumgrid.ini (replace <placeholder> as required):
  
 
<pre><nowiki>
 
<pre><nowiki>
[DATABASE]
+
[PLUMgridDirector]
sql_connection = mysql://<username>:<password>@<database_ip>:3306/plumgrid_neutron
+
director_server=<PLUMgrid_Director_IP>
 
+
director_server_port=<PLUMgrid_Director_Port>
[PLUMgridNOS]
+
username=<PLUMgrid_Director_Admin>
servers=<plumgrid_NOS_IP>
+
password=<PLUMgrid_Director_Admin_Password>
username=<username>
 
password=<password>
 
 
</nowiki></pre>
 
</nowiki></pre>
  
Line 78: Line 62:
 
sql_connection = mysql://root:nova@127.0.0.1:3306/plumgrid_neutorn
 
sql_connection = mysql://root:nova@127.0.0.1:3306/plumgrid_neutorn
  
[PLUMgridNOS]
+
[PLUMgridDirector]
nos_server=127.0.0.1
+
director_server=10.1.1.100
 +
director_server_port=8080
 
username=plumgrid
 
username=plumgrid
password=plumgrid
+
password=password
 
Start the neutron service by providing the relevant configuration files
 
Start the neutron service by providing the relevant configuration files
  
cd <quantum_path> && python <quantum_path>/bin/quantum-server --config-file /etc/quantum/quantum.conf --config-file /etc/quantum/plugins/plumgrid/plumgrid.ini
+
cd <neutron_path> && python <neutron_path>/bin/quantum-server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/plumgrid/plumgrid.ini
 
</nowiki></pre>
 
</nowiki></pre>
  
Line 91: Line 76:
  
 
<pre><nowiki>
 
<pre><nowiki>
cd <quantum_path>  
+
cd <neutron_path>  
./run_tests.sh quantum.tests.unit.plumgrid.test_plumgrid_plugin
+
./run_tests.sh neutron.tests.unit.plumgrid.test_plumgrid_plugin
 
</nowiki></pre>
 
</nowiki></pre>
  
Line 98: Line 83:
 
== Devstack ==
 
== Devstack ==
  
Work In Progress!
+
Include in "localrc" file the following variables:
 +
 
 +
PLUMGRID_DIRECTOR_IP = 10.1.1.100<br />
 +
PLUMGRID_DIRECTOR_PORT = 8080

Revision as of 22:31, 27 August 2013


PLUMgrid Neutron Plugin


Overview

PLUMgrid Neutron Plugin v2 implements the Neutron v2.0 API.

Requirements

  • PLUMgrid IO Visor 2.1.12 (or higher)
  • PLUMgridLibrary

Configuration

Plugin configuration (Neutron server node)

  • MySQL should be installed on the host. Initialize MySQL as follows (where $PASS = mysql password):
$ mysql -u root -p$PASS -e 'DROP DATABASE IF EXISTS plumgrid_neutron;'
$ mysql -u root -p$PASS -e 'CREATE DATABASE IF NOT EXISTS plumgrid_neutron;'
$ mysql -u root -p$PASS -e 'GRANT ALL ON plumgrid_neutron.* TO '$Neutron_User'@'%' IDENTIFIED BY '$Neutron_Pass';
  • Edit /etc/neutron/neutron.conf and set provider as:
[DEFAULT]
core_plugin = neutron.plugins.plumgrid.plumgrid_plugin.plumgrid_plugin.NeutronPluginPLUMgridV2

[DATABASE]
sql_connection = mysql://<username>:<password>@<database_ip>:3306/plumgrid_neutron
  • Edit /etc/nova/nova.conf and set provider as:
libvirt_vif_driver = nova.virt.libvirt.vif.LibvirtGenericVIFDriver
libvirt_vif_type=ethernet
  • Edit /etc/neutron/plugins/plumgrid/plumgrid.ini (replace <placeholder> as required):
[PLUMgridDirector]
director_server=<PLUMgrid_Director_IP>
director_server_port=<PLUMgrid_Director_Port>
username=<PLUMgrid_Director_Admin>
password=<PLUMgrid_Director_Admin_Password>


Configuration Example

[DATABASE]
sql_connection = mysql://root:nova@127.0.0.1:3306/plumgrid_neutorn

[PLUMgridDirector]
director_server=10.1.1.100
director_server_port=8080
username=plumgrid
password=password
Start the neutron service by providing the relevant configuration files

cd <neutron_path> && python <neutron_path>/bin/quantum-server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/plumgrid/plumgrid.ini


PLUMgrid Plugin Unit Tests

cd <neutron_path> 
./run_tests.sh neutron.tests.unit.plumgrid.test_plumgrid_plugin


Devstack

Include in "localrc" file the following variables:

PLUMGRID_DIRECTOR_IP = 10.1.1.100
PLUMGRID_DIRECTOR_PORT = 8080