summaryrefslogtreecommitdiff
path: root/deployment_scripts/puppet/manifests/controller.pp
blob: d2ea68ce012f27a7ddbdf4d8515ae2133e130e38 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
$mlnx = hiera('mellanox-plugin')
$eswitch_vnic_type = 'hostdev'
$eswitch_apply_profile_patch = 'True'
$mechanism_drivers = 'openvswitch'
$roles = hiera('roles')

# Configure QoS for connectX3 ETH
if ( $mlnx['driver'] == 'mlx4_en' and $mlnx['mlnx_qos'] ) {
  class { 'mellanox_openstack::configure_qos' :
    mlnx_sriov => $mlnx['sriov'],
    roles      => $roles
  }
}

if ($mlnx['sriov']) {
  $pci_vendor_devices = '15b3:1014,15b3:1016,15b3:1018'
  $agent_required = 'True'
  class { 'mellanox_openstack::controller_sriov' :
    eswitch_vnic_type           => $eswitch_vnic_type,
    eswitch_apply_profile_patch => $eswitch_apply_profile_patch,
    mechanism_drivers           => $mechanism_drivers,
    mlnx_driver                 => $mlnx['driver'],
    network_type                => $mlnx['network_type'],
    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
elsif ($mlnx['driver'] == 'eth_ipoib') {
  class { 'mellanox_openstack::controller_ib_pv' : }
}