Add ML2 support and configure OVS correctly with VXLAN
Part of https://dev.ring.enovance.com/redmine/issues/4382 Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
This commit is contained in:
@@ -24,6 +24,7 @@ class os_network_common(
|
|||||||
$debug = $os_params::debug,
|
$debug = $os_params::debug,
|
||||||
$rabbit_hosts = $os_params::rabbit_hosts,
|
$rabbit_hosts = $os_params::rabbit_hosts,
|
||||||
$rabbit_password = $os_params::rabbit_password,
|
$rabbit_password = $os_params::rabbit_password,
|
||||||
|
$local_ip = $os_params::tunnel_int
|
||||||
) {
|
) {
|
||||||
|
|
||||||
$encoded_user = uriescape($neutron_db_user)
|
$encoded_user = uriescape($neutron_db_user)
|
||||||
@@ -40,10 +41,24 @@ class os_network_common(
|
|||||||
dhcp_agents_per_network => 2
|
dhcp_agents_per_network => 2
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# While https://review.openstack.org/#/c/55578 got merged:
|
||||||
class { 'neutron::plugins::ovs':
|
class { 'neutron::plugins::ovs':
|
||||||
connection => "mysql://${encoded_user}:${encoded_password}@${neutron_db_host}/neutron?charset=utf8",
|
connection => "mysql://${encoded_user}:${encoded_password}@${neutron_db_host}/neutron?charset=utf8",
|
||||||
tenant_network_type => 'gre',
|
tenant_network_type => 'vxlan',
|
||||||
network_vlan_ranges => false
|
network_vlan_ranges => false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class { 'neutron::plugins::ml2':
|
||||||
|
type_drivers => ['vxlan'],
|
||||||
|
tenant_network_types => ['vxlan'],
|
||||||
|
vxlan_group => '239.1.1.1',
|
||||||
|
mechanism_drivers => ['openvswitch'],
|
||||||
|
vni_ranges => ['0:10000000']
|
||||||
|
}
|
||||||
|
|
||||||
|
class { 'neutron::agents::ovs':
|
||||||
|
enable_tunneling => true,
|
||||||
|
local_ip => $local_ip
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ class os_network_compute(
|
|||||||
$neutron_endpoint = $os_params::ks_neutron_admin_host,
|
$neutron_endpoint = $os_params::ks_neutron_admin_host,
|
||||||
$neutron_protocol = $os_params::ks_neutron_public_proto,
|
$neutron_protocol = $os_params::ks_neutron_public_proto,
|
||||||
$neutron_password = $os_params::ks_neutron_password,
|
$neutron_password = $os_params::ks_neutron_password,
|
||||||
$local_ip = $os_params::tunnel_int
|
|
||||||
) {
|
) {
|
||||||
|
|
||||||
class { 'nova::network::neutron':
|
class { 'nova::network::neutron':
|
||||||
@@ -29,9 +28,4 @@ class os_network_compute(
|
|||||||
neutron_url => "${neutron_protocol}://${neutron_endpoint}:9696"
|
neutron_url => "${neutron_protocol}://${neutron_endpoint}:9696"
|
||||||
}
|
}
|
||||||
|
|
||||||
class { 'neutron::agents::ovs':
|
|
||||||
enable_tunneling => true,
|
|
||||||
local_ip => $local_ip
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -125,6 +125,7 @@ node '3-object-storage-nodes' inherits common{
|
|||||||
# Compute nodes
|
# Compute nodes
|
||||||
node 'compute-node' inherits common {
|
node 'compute-node' inherits common {
|
||||||
|
|
||||||
|
class { 'os_network_common': }
|
||||||
class { 'os_network_compute': }
|
class { 'os_network_compute': }
|
||||||
|
|
||||||
class { 'os_compute_hypervisor':
|
class { 'os_compute_hypervisor':
|
||||||
|
|||||||
Reference in New Issue
Block a user