Merge "Configure Mellanox NEO SDN mechanism driver"

This commit is contained in:
Jenkins 2016-03-01 14:41:46 +00:00 committed by Gerrit Code Review
commit 3bcd9cbe8f
5 changed files with 66 additions and 4 deletions

View File

@ -0,0 +1,42 @@
$mlnx = hiera('mellanox-plugin')
if $mlnx['use_mlnx_neo'] {
include neutron::params
$server_service = $neutron::params::server_service
$neo_ip = $mlnx['mlnx_neo_ip']
$neo_user = $mlnx['mlnx_neo_user']
$neo_password = $mlnx['mlnx_neo_password']
package { 'lldpd':
ensure => installed
} ~>
service { 'lldpd':
ensure => running,
enable => true,
hasstatus => true,
hasrestart => true
}
if ( 'controller' in hiera('role') ) {
unless $mlnx['sriov']{
neutron_plugin_ml2 {
'ml2/mechanism_drivers': value => "sdnmechdriver,${mechanism_drivers}";
}
}
neutron_plugin_ml2 {
'sdn/url': value => "http://${neo_ip}/neo/";
'sdn/domain': value => "cloudx";
'sdn/username': value => "${neo_user}";
'sdn/password': value => "${neo_password}";
}
service { $server_service :
ensure => running
}
Neutron_plugin_ml2 <||> ~>
Service[$server_service]
}
}

View File

@ -14,6 +14,7 @@ if ($mlnx['sriov']) {
mlnx_sriov => $mlnx['sriov'],
pci_vendor_devices => $pci_vendor_devices,
agent_required => $agent_required,
use_mlnx_neo => $mlnx['use_mlnx_neo']
}
}
# Configure broadcast dnsmasq for IB PV

View File

@ -6,6 +6,7 @@ class mellanox_openstack::controller_sriov (
$mlnx_sriov,
$pci_vendor_devices,
$agent_required,
$use_mlnx_neo
) {
include neutron::params
@ -23,8 +24,14 @@ class mellanox_openstack::controller_sriov (
value => 'RetryFilter, AvailabilityZoneFilter, RamFilter, ComputeFilter, ComputeCapabilitiesFilter, ImagePropertiesFilter, PciPassthroughFilter'
}
if $use_mlnx_neo{
$sdn_extra_mechanism_driver='sdnmechdriver,'
}else{
$sdn_extra_mechanism_driver=''
}
if ( $mlnx_driver == 'mlx4_en' ){
$ml2_extra_mechanism_driver = 'sriovnicswitch'
$ml2_extra_mechanism_driver = "${sdn_extra_mechanism_driver}sriovnicswitch"
neutron_plugin_ml2 {
'ml2/mechanism_drivers': value => "${ml2_extra_mechanism_driver},${mechanism_drivers}";
'ml2_sriov/supported_pci_vendor_devs': value => $pci_vendor_devices;
@ -32,7 +39,7 @@ class mellanox_openstack::controller_sriov (
}
}
else {
$ml2_extra_mechanism_driver = 'mlnx'
$ml2_extra_mechanism_driver = "${sdn_extra_mechanism_driver}mlnx"
neutron_plugin_ml2 {
'eswitch/vnic_type': value => $eswitch_vnic_type;
'eswitch/apply_profile_patch': value => $eswitch_apply_profile_patch;

View File

@ -185,17 +185,28 @@
# For MLNX_OFED drivers
- id: move_ib_interfaces_to_persistent
role: '*'
required_for: [cp_sriov_user_scripts]
required_for: [configure_mellanox_neo]
requires: [configure_mlnx_iser_ib]
type: shell
parameters:
cmd: ./move_ubuntu_ib_interfaces_conf.sh
timeout: 120
# Configure Mellanox NEO SDN controller for auto VLAN
# provisioning
- id: configure_mellanox_neo
role: '*'
required_for: [cp_sriov_user_scripts]
requires: [move_ib_interfaces_to_persistent]
type: puppet
parameters:
puppet_manifest: puppet/manifests/configure_mlnx_neo.pp
puppet_modules: puppet/modules:/etc/puppet/modules
timeout: 500
# Copy SR-IOV user scripts to controllers
- id: cp_sriov_user_scripts
role: ['controller', 'primary-controller']
required_for: [post_deployment_end]
requires: [move_ib_interfaces_to_persistent]
requires: [configure_mellanox_neo]
type: shell
parameters:
cmd: cp -r ./user_scripts/* /sbin/

View File

@ -75,6 +75,7 @@ deb_files="cirros-testvm-mellanox_0.3.2-ubuntu3_amd64.deb
mlnx-ofed-fuel_3.1-1.5.7_amd64.deb
mlnx-ofed-kernel-dkms_3.1-OFED.3.1.1.0.3.1.g9032737_all.deb
mlnx-ofed-kernel-utils_3.1-OFED.3.1.1.0.3.1.g9032737_amd64.deb
lldpd_0.9.1-0_amd64.deb
python-networking-mlnx_7.0.0-1_all.deb"
get_packages "deb" "$old_debs" "$deb_files"