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_group = 'cinder-volumes',
$enabled = true,
$rbd_user = 'volumes',
$rbd_pool = 'volumes',
$rbd_secret_uuid = false,
$volume_driver = 'iscsi',
$iscsi_ip_address = '127.0.0.1',
$setup_test_volume = false,
@@ -36,17 +39,29 @@ class openstack::cinder::storage(
enabled => $enabled,
}
if $volume_driver == 'iscsi' {
class { 'cinder::volume::iscsi':
iscsi_ip_address => $iscsi_ip_address,
volume_group => $volume_group,
}
if $setup_test_volume {
class {'::cinder::setup_test_volume':
volume_name => $volume_group,
case $volume_driver {
'iscsi': {
class { 'cinder::volume::iscsi':
iscsi_ip_address => $iscsi_ip_address,
volume_group => $volume_group,
}
if $setup_test_volume {
class {'::cinder::setup_test_volume':
volume_name => $volume_group,
}
}
}
} else {
warning("Unsupported volume driver: ${volume_driver}, make sure you are configuring this yourself")
'rbd': {
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,
# cinder / volumes
$manage_volumes = true,
$cinder_volume_driver = 'iscsi',
$cinder_db_password = false,
$cinder_db_user = 'cinder',
$cinder_db_name = 'cinder',
$volume_group = 'cinder-volumes',
$iscsi_ip_address = '127.0.0.1',
$setup_test_volume = false,
$cinder_rbd_user = 'volumes',
$cinder_rbd_pool = 'volumes',
$cinder_rbd_secret_uuid = false,
# General
$migration_support = false,
$verbose = false,
@@ -250,7 +254,10 @@ class openstack::compute (
enabled => $enabled,
verbose => $verbose,
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

View File

@@ -65,4 +65,22 @@ describe 'openstack::cinder::storage' do
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

View File

@@ -148,6 +148,33 @@ describe 'openstack::compute' do
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 'configuring for multi host' do