Skip to content

Commit 9693efe

Browse files
Jenkinsopenstack-gerrit
authored andcommitted
Merge "Add HA docs for pacemaker service provider"
2 parents 433cf87 + 7f44ee9 commit 9693efe

File tree

2 files changed

+57
-0
lines changed

2 files changed

+57
-0
lines changed

README.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,62 @@ Implementation
5353
openstack_extras is a combination of Puppet manifest and ruby code to delivery
5454
configuration and extra functionality through types and providers.
5555

56+
**HA configuration for Openstack services**
57+
58+
This module allows to configure Openstack services in HA. Please refer to the [ha-guide](http://docs.openstack.org/high-availability-guide/content/index.html) for details.
59+
If you have a Corosync with Pacemaker cluster with several nodes joined, you may want to use an HA service provider which allows you to create the pacemaker resources for Openstack services and run them in HA mode.
60+
The example HA service configuration for keystone service:
61+
62+
```puppet
63+
openstack_extras::pacemaker::service { 'openstack-keystone' :
64+
ensure => present,
65+
metadata => {},
66+
ms_metadata => {},
67+
operations => {},
68+
parameters => {},
69+
primitive_class => 'systemd',
70+
primitive_provider => false,
71+
primitive_type => 'openstack-keystone',
72+
use_handler => false,
73+
clone => true,
74+
require => Package['openstack-keystone']
75+
}
76+
```
77+
This example will create a pacemaker clone resource named `p_openstack-keystone-clone` and will start it with the help of systemd.
78+
79+
And this example will create a resource `p_cinder-api-clone` for Cinder API service with the given OCF script template from some `cluster` module:
80+
81+
```puppet
82+
$metadata = {
83+
'resource-stickiness' => '1'
84+
}
85+
$operations = {
86+
'monitor' => {
87+
'interval' => '20',
88+
'timeout' => '30',
89+
},
90+
'start' => {
91+
'timeout' => '60',
92+
},
93+
'stop' => {
94+
'timeout' => '60',
95+
},
96+
}
97+
$ms_metadata = {
98+
'interleave' => true,
99+
}
100+
101+
openstack_extras::pacemaker::service { 'cinder-api' :
102+
primitive_type => 'cinder-api',
103+
metadata => $metadata,
104+
ms_metadata => $ms_metadata,
105+
operations => $operations,
106+
clone => true,
107+
ocf_script_template => 'cluster/cinder_api.ocf.erb',
108+
}
109+
110+
```
111+
56112
Limitations
57113
-----------
58114

manifests/pacemaker/service.pp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,7 @@
105105
# metadata => $metadata,
106106
# ms_metadata => $ms_metadata,
107107
# operations => $operations,
108+
# clone => true,
108109
# ocf_script_template => 'some_module/some_api_service.ocf.erb',
109110
# }
110111
#

0 commit comments

Comments
 (0)