X-Git-Url: https://git.donarmstrong.com/?p=dsa-puppet.git;a=blobdiff_plain;f=3rdparty%2Fmodules%2Fcinder%2Fexamples%2Fcinder_volume_with_pacemaker.pp;fp=3rdparty%2Fmodules%2Fcinder%2Fexamples%2Fcinder_volume_with_pacemaker.pp;h=4a38db7f75b6833a515b865ca081c2a9366dda80;hp=0000000000000000000000000000000000000000;hb=4631045ebb77ee8622f6fa09277a50c372bcc02e;hpb=3d4dc4fd9e59bd0e07646c99f6b356c7d9d859aa diff --git a/3rdparty/modules/cinder/examples/cinder_volume_with_pacemaker.pp b/3rdparty/modules/cinder/examples/cinder_volume_with_pacemaker.pp new file mode 100644 index 00000000..4a38db7f --- /dev/null +++ b/3rdparty/modules/cinder/examples/cinder_volume_with_pacemaker.pp @@ -0,0 +1,40 @@ +# Example: managing cinder controller services with pacemaker +# +# By setting enabled to false, these services will not be started at boot. By setting +# manage_service to false, puppet will not kill these services on every run. This +# allows the Pacemaker resource manager to dynamically determine on which node each +# service should run. +# +# The puppet commands below would ideally be applied to at least three nodes. +# +# Note that cinder-api is associated with the virtual IP address as +# it is called from external services. The remaining services connect to the +# database and/or message broker independently. +# +# Example pacemaker resource configuration commands (configured once per cluster): +# +# sudo pcs resource create cinder_vip ocf:heartbeat:IPaddr2 params ip=192.0.2.3 \ +# cidr_netmask=24 op monitor interval=10s +# +# sudo pcs resource create cinder_api_service lsb:openstack-cinder-api +# sudo pcs resource create cinder_scheduler_service lsb:openstack-cinder-scheduler +# +# sudo pcs constraint colocation add cinder_api_service with cinder_vip + +class { 'cinder': + database_connection => 'mysql://cinder:secret_block_password@openstack-controller.example.com/cinder', +} + +class { 'cinder::api': + keystone_password => 'CINDER_PW', + keystone_user => 'cinder', + enabled => false, + manage_service => false, +} + +class { 'cinder::scheduler': + scheduler_driver => 'cinder.scheduler.simple.SimpleScheduler', + enabled => false, + manage_service => false, +} +