Merge "Add rbd option to cinder configuration"

This commit is contained in:
Jenkins
2013-07-16 19:59:21 +00:00
committed by Gerrit Code Review
4 changed files with 78 additions and 11 deletions

View File

@@ -11,6 +11,9 @@ class openstack::cinder::storage(
$volume_package_ensure = 'present', $volume_package_ensure = 'present',
$volume_group = 'cinder-volumes', $volume_group = 'cinder-volumes',
$enabled = true, $enabled = true,
$rbd_user = 'volumes',
$rbd_pool = 'volumes',
$rbd_secret_uuid = false,
$volume_driver = 'iscsi', $volume_driver = 'iscsi',
$iscsi_ip_address = '127.0.0.1', $iscsi_ip_address = '127.0.0.1',
$setup_test_volume = false, $setup_test_volume = false,
@@ -36,17 +39,29 @@ class openstack::cinder::storage(
enabled => $enabled, enabled => $enabled,
} }
if $volume_driver == 'iscsi' { case $volume_driver {
class { 'cinder::volume::iscsi':
iscsi_ip_address => $iscsi_ip_address, 'iscsi': {
volume_group => $volume_group, class { 'cinder::volume::iscsi':
} iscsi_ip_address => $iscsi_ip_address,
if $setup_test_volume { volume_group => $volume_group,
class {'::cinder::setup_test_volume': }
volume_name => $volume_group, if $setup_test_volume {
class {'::cinder::setup_test_volume':
volume_name => $volume_group,
}
} }
} }
} else { 'rbd': {
warning("Unsupported volume driver: ${volume_driver}, make sure you are configuring this yourself")
class { 'cinder::volume::rbd':
rbd_user => $rbd_user,
rbd_pool => $rbd_pool,
rbd_secret_uuid => $rbd_secret_uuid,
}
}
default: {
warning("Unsupported volume driver: ${volume_driver}, make sure you are configuring this yourself")
}
} }
} }

View File

@@ -72,12 +72,16 @@ class openstack::compute (
$vncserver_listen = false, $vncserver_listen = false,
# cinder / volumes # cinder / volumes
$manage_volumes = true, $manage_volumes = true,
$cinder_volume_driver = 'iscsi',
$cinder_db_password = false, $cinder_db_password = false,
$cinder_db_user = 'cinder', $cinder_db_user = 'cinder',
$cinder_db_name = 'cinder', $cinder_db_name = 'cinder',
$volume_group = 'cinder-volumes', $volume_group = 'cinder-volumes',
$iscsi_ip_address = '127.0.0.1', $iscsi_ip_address = '127.0.0.1',
$setup_test_volume = false, $setup_test_volume = false,
$cinder_rbd_user = 'volumes',
$cinder_rbd_pool = 'volumes',
$cinder_rbd_secret_uuid = false,
# General # General
$migration_support = false, $migration_support = false,
$verbose = false, $verbose = false,
@@ -250,7 +254,10 @@ class openstack::compute (
enabled => $enabled, enabled => $enabled,
verbose => $verbose, verbose => $verbose,
setup_test_volume => $setup_test_volume, setup_test_volume => $setup_test_volume,
volume_driver => 'iscsi', rbd_user => $cinder_rbd_user,
rbd_pool => $cinder_rbd_pool,
rbd_secret_uuid => $cinter_rbd_secret_uuid,
volume_driver => $cinder_volume_driver,
} }
# set in nova::api # set in nova::api

View File

@@ -65,4 +65,22 @@ describe 'openstack::cinder::storage' do
end end
end end
describe 'when setting up test volumes for rbd' do
before do
params.merge!(
:volume_driver => 'rbd',
:rbd_user => 'rbd',
:rbd_pool => 'rbd_pool',
:rbd_secret_uuid => 'secret'
)
end
it { should contain_class('cinder::volume::rbd').with(
:rbd_user => 'rbd',
:rbd_pool => 'rbd_pool',
:rbd_secret_uuid => 'secret'
) }
end
end end

View File

@@ -148,6 +148,33 @@ describe 'openstack::compute' do
end end
context 'with rbd storage' do
before do
params.merge!(
:cinder_volume_driver => 'rbd',
:cinder_rbd_user => 'volumes',
:cinder_rbd_pool => 'volumes'
)
end
it do
should contain_class('openstack::cinder::storage').with(
:sql_connection => 'mysql://cinder:cinder_pass@127.0.0.1/cinder',
:rabbit_password => 'rabbit_pw',
:rabbit_userid => 'openstack',
:rabbit_host => '127.0.0.1',
:rabbit_virtual_host => '/',
:volume_group => 'cinder-volumes',
:iscsi_ip_address => '127.0.0.1',
:enabled => true,
:verbose => false,
:setup_test_volume => false,
:rbd_user => 'volumes',
:rbd_pool => 'volumes',
:volume_driver => 'rbd'
)
end
end
describe 'when quantum is false' do describe 'when quantum is false' do
describe 'configuring for multi host' do describe 'configuring for multi host' do