Difference between revisions of "Juno-SR-IOV"
(→Neutron) |
(→Neutron Server) |
||
Line 22: | Line 22: | ||
[ml2_type_vlan] | [ml2_type_vlan] | ||
network_vlan_ranges = default:2:100 | network_vlan_ranges = default:2:100 | ||
− | |||
− | |||
Make sure /etc/neutron/plugins/ml2/ml2_conf_sriov.ini has the following section: | Make sure /etc/neutron/plugins/ml2/ml2_conf_sriov.ini has the following section: | ||
Line 32: | Line 30: | ||
Neutron server should be run with the two configuration files /etc/neutron/plugins/ml2/ml2_conf.in and /etc/neutron/plugins/ml2/ml2_conf_sriov.ini | Neutron server should be run with the two configuration files /etc/neutron/plugins/ml2/ml2_conf.in and /etc/neutron/plugins/ml2/ml2_conf_sriov.ini | ||
neutron-server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /etc/neutron/plugins/ml2/ml2_conf_sriov.ini | neutron-server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /etc/neutron/plugins/ml2/ml2_conf_sriov.ini | ||
− | |||
==Compute== | ==Compute== |
Revision as of 14:24, 9 September 2014
Contents
This Page is under construction
Once it will be ready, the content might move to another location.
SR-IOV in OpenStack Juno
OpenStack Juno adds inbox support for SR-IOV ....
Nova
Nova support for SR-IOV is ....
Neutron
Neutron support for SR-IOV is ... embedded NIC is ...
SR-IOV Configuration
Neutron Server
Using ML2 Neutron plugin modify /etc/neutron/plugins/ml2/ml2_conf.ini:
[ml2] tenant_network_types = vlan type_drivers = vlan mechanism_drivers = openvswitch,sriovnicswitch [ml2_type_vlan] network_vlan_ranges = default:2:100
Make sure /etc/neutron/plugins/ml2/ml2_conf_sriov.ini has the following section:
[ml2_sriov] agent_required = True
Neutron server should be run with the two configuration files /etc/neutron/plugins/ml2/ml2_conf.in and /etc/neutron/plugins/ml2/ml2_conf_sriov.ini
neutron-server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /etc/neutron/plugins/ml2/ml2_conf_sriov.ini
Compute
Nova
On each compute you have to associate the Virtual Functions available to each Physical Network. You do it by configuring pci_passthrough_whitelist in /etc/nova/noca.conf
For example:
pci_passthrough_whitelist = {"address":"*:0a:00.*","physical_network":"physnet1"}
This will associate any VF with address that includes ':0a:00.' in it's address to the Physical network physnet1
After configuring the white list you have to restart nova-compute service.
Neutron
If the hardware supports and and you want to enable changing the port admin_state you have to run the Neutron SR-IOV agent.
Note:If you configured agent_required=True on the Neutron server you must run the Agent on each compute node.
In /etc/neutron/plugins/ml2/ml2_conf.ini make sure you have the following:
[securitygroup] firewall_driver = neutron.agent.firewall.NoopFirewallDriver
Modify /etc/neutron/plugins/ml2/ml2_conf_sriov.ini as follows
[sriov_nic] physical_device_mappings = physnet1:eth1 exclude_devices =
physnet1 is the physical network eth1 if the Physical Function (PF) exclude_devices is empty so All the VFs associated with eth1 are allowed to be configured by the agent.
After modifying the configuration file start the Neutron SR-IOV agent:
neutron-sriov-nic-agent --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /etc/neutron/plugins/ml2/ml2_conf_sriov.ini
Exclude VFs
If you want to exclude some of the VFs so the agent won't configure them you need to list them in the sriov_nic section:
Example: exclude_devices = eth1:0000:07:00.2; 0000:07:00.3, eth2:0000:05:00.1; 0000:05:00.2