Skip to content
Snippets Groups Projects
server.pp 1.56 KiB
Newer Older
  • Learn to ignore specific revisions
  • class iaas::profile::neutron::server (
    
      $public_interface = hiera('iaas::public_interface', undef),
      $admin_interface = hiera('iaas::admin_interface', undef),
    
    
      $neutron_password = hiera('iaas::profile::neutron::password', undef),
      $nova_password = hiera('iaas::profile::nova::controller::password', undef),
    
      $region = hiera('iaas::region', undef),
      $endpoint = hiera('iaas::role::endpoint::main_address', undef),
    ) {
    
      include iaas::resources::connectors
    
    
    ##Leave commented if DB is not controller
    #  iaas::resources::database { 'neutron': }
    
        auth_uri => "http://${endpoint}:5000/v2.0",
    
    ##identity_uri set to be added in next OS release
    
    #    identity_uri => "http://${endpoint}:35357",
    
        database_connection => $iaas::resources::connectors::neutron,
    
        enabled => true,
        sync_db => true,
        mysql_module => '2.3',
    
        database_idle_timeout => 3600,
        l3_ha => false,
    
      neutron_config { 'DEFAULT/allow_automatic_l3agent_failover' :
        value => "True",
      }
    
    
      class { '::neutron::keystone::auth':
        password => $neutron_password,
    
        public_address => $endpoint,
        admin_address => $endpoint,
        internal_address => $endpoint,
    
      class { '::neutron::server::notifications':
    
        nova_url => "http://${endpoint}:8774/v2",
        nova_admin_auth_url => "http://${endpoint}:35357/v2.0",
    
        nova_admin_password => $nova_password,
    
        nova_region_name => $region,
    
        nova_admin_tenant_name => "services",
     }