class iaas::profile::cinder ( #Cinder $password = undef, $secret = undef, ##verbose, debug $verbose = false, $debug = false, $public_interface = undef, $admin_interface = undef, $region = undef, #VIP1 $endpoint_main = undef, #VIP2 $endpoint_admin = undef, ##Rabbit hosts $rhosts = undef, $rabbitmq_user = undef, $rabbitmq_password = undef, ) { include iaas::resources::connectors if $endpoint_admin == '' { $real_endpoint_admin = $endpoint_main }else{ $real_endpoint_admin = $endpoint_admin } ##Leave commented if database is different from controller # iaas::resources::database { 'cinder': } class { '::cinder': ##Verbose, debug verbose => $verbose, debug => $debug, database_connection => $iaas::resources::connectors::cinder, ##Added rabbit_hosts - uncomment as needed # rabbit_host => $endpoint, rabbit_hosts => suffix($rhosts, ':5672'), rabbit_userid => $rabbitmq_user, rabbit_password => $rabbitmq_password, rabbit_virtual_host => '/', #not in mitaka # mysql_module => '2.3', database_idle_timeout => 3600, } class { '::cinder::glance': glance_api_servers => [ "${real_endpoint_admin}:9292" ], } class { '::cinder::keystone::auth': password => $password, #not in mitaka # public_address => $endpoint_main, # admin_address => $real_endpoint_admin, # internal_address => $real_endpoint_admin, #mitaka public_url => "http://${endpoint_main}:8776/v1/%(tenant_id)s", internal_url => "http://${real_endpoint_admin}:8776/v1/%(tenant_id)s", admin_url => "http://${real_endpoint_admin}:8776/v1/%(tenant_id)s", public_url_v2 => "http://${endpoint_main}:8776/v2/%(tenant_id)s", internal_url_v2 => "http://${real_endpoint_admin}:8776/v2/%(tenant_id)s", admin_url_v2 => "http://${real_endpoint_admin}:8776/v2/%(tenant_id)s", public_url_v3 => "http://${endpoint_main}:8776/v3/%(tenant_id)s", internal_url_v3 => "http://${real_endpoint_admin}:8776/v3/%(tenant_id)s", admin_url_v3 => "http://${real_endpoint_admin}:8776/v3/%(tenant_id)s", region => $region, } class { '::cinder::api': #Identity_uri - planed to be implemented in Kilo #not in mitaka # keystone_identity_uri => "http://${real_endpoint_admin}:35357", # keystone_auth_uri => "http://${endpoint_main}:5000/v2.0", # keystone_auth_host => $real_endpoint_admin, #mitaka identity_uri => "http://${real_endpoint_admin}:35357", auth_uri => "http://${endpoint_main}:5000", keystone_password => $password, bind_host => $::facts["ipaddress_${admin_interface}"], } class { '::cinder::scheduler': # scheduler_driver => 'cinder.scheduler.simple.SimpleScheduler', scheduler_driver => 'cinder.scheduler.filter_scheduler.FilterScheduler', } class { '::cinder::volume': } class { '::cinder::volume::rbd': rbd_pool => 'volumes', rbd_user => 'cinder', rbd_secret_uuid => $secret, } class { '::cinder::backup': } class { '::cinder::backup::ceph': backup_ceph_user => 'cinder-backup', } #JUNO release # cinder_config { # 'keystone_authtoken/identity_uri' :value => "http://${real_endpoint_admin}:35357"; # } }