Handle L2 agent configurations for compute and network nodes separately

This commit is contained in:
Florian Haas 2013-07-19 17:59:00 +02:00
parent d8fc75a8ca
commit a88bfffa2d
5 changed files with 43 additions and 4 deletions

View File

@ -21,7 +21,7 @@ class kickstack::node::compute inherits kickstack {
$glance_api_host = getvar("${::kickstack::fact_prefix}glance_api_host")
if $amqp_host and $amqp_password {
include kickstack::quantum::agent::l2
include kickstack::quantum::agent::l2::compute
if $nova_sql_conn and $nova_keystone_password and $glance_api_host {
include kickstack::nova::compute
}

View File

@ -45,6 +45,6 @@ class kickstack::node::controller inherits kickstack {
# require this. Until that is fixed, pull the
# L2 agent into the controller.
if $quantum_sql_conn and $quantum_keystone_password {
include kickstack::quantum::agent::l2
include kickstack::quantum::agent::l2::compute
}
}

View File

@ -23,7 +23,7 @@ class kickstack::node::network inherits kickstack {
include kickstack::quantum::agent::dhcp
include kickstack::quantum::agent::l3
if $quantum_sql_conn {
include kickstack::quantum::agent::l2
include kickstack::quantum::agent::l2::network
}
if $quantum_metadata_shared_secret {
include kickstack::quantum::agent::metadata

View File

@ -0,0 +1,39 @@
class kickstack::quantum::agent::l2::compute inherits kickstack {
include kickstack::quantum::config
$tenant_network_type = "$::kickstack::quantum_tenant_network_type"
case "$::kickstack::quantum_plugin" {
'ovs': {
case $tenant_network_type {
'gre': {
$local_tunnel_ip = getvar("ipaddress_${nic_data}")
class { 'quantum::agents::ovs':
bridge_mappings => [],
bridge_uplinks => [],
integration_bridge => $::kickstack::quantum_integration_bridge,
enable_tunneling => true,
local_ip => $local_tunnel_ip,
tunnel_bridge => $::kickstack::quantum_tunnel_bridge,
}
}
default: {
$bridge_uplinks = ["br-${nic_data}:${nic_data}"]
class { 'quantum::agents::ovs':
bridge_mappings => ["${::kickstack::quantum_physnet}:br-${nic_data}"],
bridge_uplinks => $bridge_uplinks,
integration_bridge => $::kickstack::quantum_integration_bridge,
enable_tunneling => false,
local_ip => '',
}
}
}
}
'linuxbridge': {
class { "quantum::agents::linuxbridge":
physical_interface_mappings => "default:$nic_data"
}
}
}
}

View File

@ -1,4 +1,4 @@
class kickstack::quantum::agent::l2 inherits kickstack {
class kickstack::quantum::agent::l2::network inherits kickstack {
include kickstack::quantum::config