80 lines
2.5 KiB
Puppet
80 lines
2.5 KiB
Puppet
#Class cisco_aci::generic_apic_ml2
|
|
class cisco_aci::generic_apic_ml2 (
|
|
$ha_prefix = '',
|
|
$role = 'compute',
|
|
$use_lldp = true,
|
|
$apic_hosts = '10.0.0.1',
|
|
$apic_username = 'admin',
|
|
$apic_password = 'password',
|
|
$static_config = '',
|
|
$additional_config = '',
|
|
$service_plugins = 'neutron.services.l3_router.l3_apic.ApicL3ServicePlugin',
|
|
$mechanism_drivers = 'openvswitch,cisco_apic',
|
|
$admin_username = 'admin',
|
|
$admin_password = 'admin',
|
|
$admin_tenant = 'admin',
|
|
$ext_net_enable = false,
|
|
$ext_net_name = 'ext',
|
|
$ext_net_switch = '101',
|
|
$ext_net_port = '1/1',
|
|
$ext_net_subnet = '10.0.0.0/24',
|
|
$ext_net_gateway = '10.0.0.1',
|
|
){
|
|
include 'apic::params'
|
|
include 'apic::api'
|
|
|
|
case $role {
|
|
/controller/: {
|
|
if $use_lldp {
|
|
include 'apic::svc_agent'
|
|
}
|
|
include 'neutron::services::apic_server'
|
|
include "neutron::services::${ha_prefix}agents"
|
|
class {'neutron::config_auth':
|
|
admin_username => $admin_username,
|
|
admin_password => $admin_password,
|
|
admin_tenant => $admin_tenant,
|
|
}
|
|
if ($role == 'primary-controller' and $ext_net_enable == true){
|
|
class {'neutron::network':
|
|
tenant_name => $admin_tenant,
|
|
ext_net_name => $ext_net_name,
|
|
ext_net_subnet => $ext_net_subnet,
|
|
ext_net_gateway => $ext_net_gateway,
|
|
}
|
|
}
|
|
}
|
|
'compute': {
|
|
include 'neutron::services::ovs_agent'
|
|
}
|
|
default: {
|
|
}
|
|
}
|
|
|
|
if $use_lldp {
|
|
include 'lldp'
|
|
include 'apic::host_agent'
|
|
|
|
}
|
|
|
|
class {'neutron::config':
|
|
service_plugins => $service_plugins,
|
|
mechanism_drivers => $mechanism_drivers,
|
|
}
|
|
|
|
class {'neutron::config_apic':
|
|
apic_hosts => $apic_hosts,
|
|
apic_username => $apic_username,
|
|
apic_password => $apic_password,
|
|
static_config => $static_config,
|
|
additional_config => $additional_config,
|
|
ext_net_enable => $ext_net_enable,
|
|
ext_net_name => $ext_net_name,
|
|
ext_net_switch => $ext_net_switch,
|
|
ext_net_port => $ext_net_port,
|
|
ext_net_subnet => $ext_net_subnet,
|
|
ext_net_gateway => $ext_net_gateway,
|
|
}
|
|
|
|
}
|