blob: ac0210e85e51014f5e26a5f1fa127bec510852e9 [file] [log] [blame]
OlgaGusarenko74b53f22018-06-28 17:35:48 +03001=====
2Usage
3=====
Filip Pytlounda2a0792015-10-06 16:28:31 +02004
OlgaGusarenko74b53f22018-06-28 17:35:48 +03005Cinder provides an infrastructure for managing volumes in OpenStack.
6Originally, this project was the Nova component called ``nova-volume``
7and starting from the Folsom OpenStack release it has become an independent
8project.
Filip Pytlounda2a0792015-10-06 16:28:31 +02009
OlgaGusarenko74b53f22018-06-28 17:35:48 +030010This file provides the sample configurations for different use cases:
Filip Pytlounda2a0792015-10-06 16:28:31 +020011
OlgaGusarenko74b53f22018-06-28 17:35:48 +030012* Pillar sample of a basic Cinder configuration:
Filip Pytlounda2a0792015-10-06 16:28:31 +020013
OlgaGusarenko74b53f22018-06-28 17:35:48 +030014 The pillar structure defines ``cinder-api`` and ``cinder-scheduler`` inside
15 the ``controller`` role and ``cinder-volume`` inside the to ``volume``
16 role.
17
18 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +020019
20 cinder:
21 controller:
22 enabled: true
23 version: juno
Dmitry Stremkovskiy9f4ac8b2017-07-11 09:48:46 +030024 cinder_uid: 304
25 cinder_gid: 304
Dmitry Stremkovskiyef4c7d02017-07-30 16:51:52 +030026 nas_secure_file_permissions: false
27 nas_secure_file_operations: false
Dmitry Stremkovskiya5dd7992017-07-30 19:54:23 +030028 cinder_internal_tenant_user_id: f46924c112a14c80ab0a24a613d95eef
29 cinder_internal_tenant_project_id: b7455b8974bb4064ad247c8f375eae6c
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010030 default_volume_type: 7k2SaS
stelucz1f3a82f2017-09-19 18:38:13 +020031 enable_force_upload: true
Damian Szeluga0918f5a2017-04-19 12:26:56 +020032 availability_zone_fallback: True
Oleksandr Pidrepnyi27e25fa2019-05-02 14:00:40 +030033 image_conversion_dir: /var/tmp/cinder/conversion
Denis V. Meltsaykin1cbeb5a2020-08-26 17:03:41 +020034 wsgi_processes_count: 5
Ivan Berezovskiy3fe31942019-11-19 16:27:47 +040035 concurrency:
36 lock_path: '/var/lock/cinder'
Filip Pytlounda2a0792015-10-06 16:28:31 +020037 database:
38 engine: mysql
39 host: 127.0.0.1
40 port: 3306
41 name: cinder
42 user: cinder
43 password: pwd
44 identity:
45 engine: keystone
46 host: 127.0.0.1
47 port: 35357
48 tenant: service
49 user: cinder
50 password: pwd
51 message_queue:
52 engine: rabbitmq
53 host: 127.0.0.1
54 port: 5672
55 user: openstack
56 password: pwd
57 virtual_host: '/openstack'
root08402652018-12-28 15:04:23 +000058 client:
59 connection_params:
60 connect_retries: 50
61 connect_retry_delay: 1
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010062 backend:
63 7k2_SAS:
64 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +010065 type_name: slow-disks
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010066 host: 192.168.0.1
67 port: 22
68 user: username
69 password: pass
70 connection: FC/iSCSI
71 multihost: true
72 multipath: true
73 pool: SAS7K2
Kirill Bespalov01614c02017-07-31 17:06:09 +030074 audit:
Petr Michaleca1c7ff12016-11-29 16:32:50 +010075 enabled: false
Simon Pasquier9089de42017-02-03 16:13:22 +010076 osapi_max_limit: 500
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +030077 barbican:
78 enabled: true
Filip Pytlounda2a0792015-10-06 16:28:31 +020079
80 cinder:
81 volume:
82 enabled: true
83 version: juno
Dmitry Stremkovskiy9f4ac8b2017-07-11 09:48:46 +030084 cinder_uid: 304
85 cinder_gid: 304
Dmitry Stremkovskiyef4c7d02017-07-30 16:51:52 +030086 nas_secure_file_permissions: false
87 nas_secure_file_operations: false
Dmitry Stremkovskiya5dd7992017-07-30 19:54:23 +030088 cinder_internal_tenant_user_id: f46924c112a14c80ab0a24a613d95eef
89 cinder_internal_tenant_project_id: b7455b8974bb4064ad247c8f375eae6c
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010090 default_volume_type: 7k2SaS
Michael Polenchukf0d642e2018-07-27 09:55:14 +040091 enable_force_upload: true
92 my_ip: 192.168.0.254
Oleksandr Pidrepnyida465022019-04-26 18:44:05 +030093 image_conversion_dir: /var/tmp/cinder/conversion
Ivan Berezovskiy3fe31942019-11-19 16:27:47 +040094 concurrency:
95 lock_path: '/var/lock/cinder'
Filip Pytlounda2a0792015-10-06 16:28:31 +020096 database:
97 engine: mysql
98 host: 127.0.0.1
99 port: 3306
100 name: cinder
101 user: cinder
102 password: pwd
103 identity:
104 engine: keystone
105 host: 127.0.0.1
106 port: 35357
107 tenant: service
108 user: cinder
109 password: pwd
110 message_queue:
111 engine: rabbitmq
112 host: 127.0.0.1
113 port: 5672
114 user: openstack
115 password: pwd
116 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100117 backend:
118 7k2_SAS:
119 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100120 type_name: 7k2 SAS disk
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100121 host: 192.168.0.1
122 port: 22
123 user: username
124 password: pass
125 connection: FC/iSCSI
126 multihost: true
127 multipath: true
128 pool: SAS7K2
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100129 audit:
130 enabled: false
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +0300131 barbican:
132 enabled: true
Ondrej Smola74af21b2017-04-28 12:30:24 +0200133
134
Vasyl Saienkoa5de7512018-07-12 17:28:36 +0300135Volume vmware related options:
136
137.. code-block:: yaml
138
139 cinder:
140 volume:
141 backend:
142 vmware:
143 engine: vmware
144 host_username: vmware
145 host_password: vmware
146 cluster_names: vmware_cluster01,vmware_cluster02
147
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300148* The CORS parameters enablement:
Vasyl Saienkoa5de7512018-07-12 17:28:36 +0300149
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300150 .. code-block:: yaml
Ondrej Smola74af21b2017-04-28 12:30:24 +0200151
152 cinder:
153 controller:
154 cors:
155 allowed_origin: https:localhost.local,http:localhost.local
156 expose_headers: X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token
157 allow_methods: GET,PUT,POST,DELETE,PATCH
158 allow_headers: X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token
159 allow_credentials: True
160 max_age: 86400
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200161
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300162* The client-side RabbitMQ HA setup for the controller:
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200163
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300164 .. code-block:: yaml
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200165
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300166 cinder:
167 controller:
168 ....
169 message_queue:
170 engine: rabbitmq
171 members:
172 - host: 10.0.16.1
173 - host: 10.0.16.2
174 - host: 10.0.16.3
175 user: openstack
176 password: pwd
177 virtual_host: '/openstack'
178 ....
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200179
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300180* The client-side RabbitMQ HA setup for the volume component
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200181
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300182 .. code-block:: yaml
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200183
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300184 cinder:
185 volume:
186 ....
187 message_queue:
188 engine: rabbitmq
189 members:
190 - host: 10.0.16.1
191 - host: 10.0.16.2
192 - host: 10.0.16.3
193 user: openstack
194 password: pwd
195 virtual_host: '/openstack'
196 ....
Filip Pytlounda2a0792015-10-06 16:28:31 +0200197
Kirill Bespalov01614c02017-07-31 17:06:09 +0300198
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300199* Configuring TLS communications.
Kirill Bespalov01614c02017-07-31 17:06:09 +0300200
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300201 .. note:: By default, system-wide installed CA certs are used.
202 Therefore, the ``cacert_file`` and ``cacert`` parameters are
203 optional.
Kirill Bespalov01614c02017-07-31 17:06:09 +0300204
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300205 * RabbitMQ TLS:
Kirill Bespalov1550d6c2017-11-21 12:55:33 +0300206
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300207 .. code-block:: yaml
Kirill Bespalov1550d6c2017-11-21 12:55:33 +0300208
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300209 cinder:
210 controller, volume:
211 message_queue:
212 port: 5671
213 ssl:
214 enabled: True
215 (optional) cacert: cert body if the cacert_file does not exists
216 (optional) cacert_file: /etc/openstack/rabbitmq-ca.pem
217 (optional) version: TLSv1_2
Kirill Bespalov01614c02017-07-31 17:06:09 +0300218
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300219 * MySQL TLS:
Kirill Bespalov01614c02017-07-31 17:06:09 +0300220
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300221 .. code-block:: yaml
Kirill Bespalov01614c02017-07-31 17:06:09 +0300222
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300223 cinder:
224 controller:
225 database:
226 ssl:
227 enabled: True
228 (optional) cacert: cert body if the cacert_file does not exists
229 (optional) cacert_file: /etc/openstack/mysql-ca.pem
Kirill Bespalov01614c02017-07-31 17:06:09 +0300230
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300231 * Openstack HTTPS API:
Kirill Bespalov01614c02017-07-31 17:06:09 +0300232
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300233 .. code-block:: yaml
Kirill Bespalov01614c02017-07-31 17:06:09 +0300234
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300235 cinder:
236 controller, volume:
237 identity:
238 protocol: https
239 (optional) cacert_file: /etc/openstack/proxy.pem
240 glance:
241 protocol: https
242 (optional) cacert_file: /etc/openstack/proxy.pem
Kirill Bespalov01614c02017-07-31 17:06:09 +0300243
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300244* Cinder setup with zeroing deleted volumes:
Kirill Bespalov01614c02017-07-31 17:06:09 +0300245
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300246 .. code-block:: yaml
Alexander Noskov62496fb2017-02-27 16:42:54 +0100247
Filip Pytlounda2a0792015-10-06 16:28:31 +0200248 cinder:
249 controller:
250 enabled: true
251 wipe_method: zero
252 ...
253
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300254* Cinder setup with shreding deleted volumes:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200255
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300256 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200257
258 cinder:
259 controller:
260 enabled: true
261 wipe_method: shred
262 ...
263
Oleksandr Pidrepnyida465022019-04-26 18:44:05 +0300264* Configure directory used for temporary storage during image conversion:
265
266 .. code-block:: yaml
267
268 cinder:
Oleksandr Pidrepnyi27e25fa2019-05-02 14:00:40 +0300269 controller:
270 image_conversion_dir: /var/tmp/cinder/conversion
Oleksandr Pidrepnyida465022019-04-26 18:44:05 +0300271 volume:
272 image_conversion_dir: /var/tmp/cinder/conversion
273 ...
274
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300275* Configuration of ``policy.json`` file:
Dmitry Ukov56c29072017-05-04 16:48:29 +0400276
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300277 .. code-block:: yaml
Dmitry Ukov56c29072017-05-04 16:48:29 +0400278
279 cinder:
280 controller:
281 ....
282 policy:
283 'volume:delete': 'rule:admin_or_owner'
284 # Add key without value to remove line from policy.json
285 'volume:extend':
286
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300287* Default Cinder backend ``lvm_type`` setup:
sgarbuz0901ebe2018-06-13 17:16:16 +0300288
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300289 .. code-block:: yaml
sgarbuz0901ebe2018-06-13 17:16:16 +0300290
291 cinder:
292 volume:
293 enabled: true
294 backend:
295 # Type of LVM volumes to deploy; (default, thin, or auto). Auto defaults to thin if thin is supported.
296 lvm_type: auto
297
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300298* Default Cinder setup with iSCSI target:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200299
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300300 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200301
302 cinder:
303 controller:
304 enabled: true
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200305 version: mitaka
306 default_volume_type: lvmdriver-1
Filip Pytlounda2a0792015-10-06 16:28:31 +0200307 database:
308 engine: mysql
309 host: 127.0.0.1
310 port: 3306
311 name: cinder
312 user: cinder
313 password: pwd
314 identity:
315 engine: keystone
316 host: 127.0.0.1
317 port: 35357
318 tenant: service
319 user: cinder
320 password: pwd
321 message_queue:
322 engine: rabbitmq
323 host: 127.0.0.1
324 port: 5672
325 user: openstack
326 password: pwd
327 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100328 backend:
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200329 lvmdriver-1:
330 engine: lvm
331 type_name: lvmdriver-1
332 volume_group: cinder-volume
Filip Pytlounda2a0792015-10-06 16:28:31 +0200333
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300334* Cinder setup for IBM Storwize:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200335
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300336 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200337
338 cinder:
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100339 volume:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200340 enabled: true
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100341 backend:
342 7k2_SAS:
343 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100344 type_name: 7k2 SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100345 host: 192.168.0.1
346 port: 22
347 user: username
348 password: pass
349 connection: FC/iSCSI
350 multihost: true
351 multipath: true
352 pool: SAS7K2
353 10k_SAS:
354 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100355 type_name: 10k SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100356 host: 192.168.0.1
357 port: 22
358 user: username
359 password: pass
360 connection: FC/iSCSI
361 multihost: true
362 multipath: true
363 pool: SAS10K
364 15k_SAS:
365 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100366 type_name: 15k SAS
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100367 host: 192.168.0.1
368 port: 22
369 user: username
370 password: pass
371 connection: FC/iSCSI
372 multihost: true
373 multipath: true
374 pool: SAS15K
Filip Pytlounda2a0792015-10-06 16:28:31 +0200375
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300376* Cinder setup with NFS:
Jiri Broulik88548db2017-03-31 12:21:37 +0200377
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300378 .. code-block:: yaml
Jiri Broulik88548db2017-03-31 12:21:37 +0200379
380 cinder:
381 controller:
382 enabled: true
383 default_volume_type: nfs-driver
384 backend:
385 nfs-driver:
386 engine: nfs
387 type_name: nfs-driver
388 volume_group: cinder-volume
389 path: /var/lib/cinder/nfs
390 devices:
391 - 172.16.10.110:/var/nfs/cinder
392 options: rw,sync
393
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300394* Cinder setup with NetApp:
Jiri Broulik88548db2017-03-31 12:21:37 +0200395
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300396 .. code-block:: yaml
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400397
398 cinder:
399 controller:
400 backend:
401 netapp:
402 engine: netapp
403 type_name: netapp
404 user: openstack
405 vserver: vm1
406 server_hostname: 172.18.2.3
407 password: password
408 storage_protocol: nfs
409 transport_type: https
410 lun_space_reservation: enabled
411 use_multipath_for_image_xfer: True
Dmitry Stremkouskiffa53c02017-09-15 19:47:21 +0300412 nas_secure_file_operations: false
413 nas_secure_file_permissions: false
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400414 devices:
415 - 172.18.1.2:/vol_1
416 - 172.18.1.2:/vol_2
417 - 172.18.1.2:/vol_3
418 - 172.18.1.2:/vol_4
Jakub Pavlik94dc0c92017-06-14 14:53:23 +0200419 linux:
420 system:
421 package:
422 nfs-common:
423 version: latest
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400424
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300425* Cinder setup with Hitachi VPS:
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400426
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300427 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200428
429 cinder:
430 controller:
431 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100432 backend:
433 hus100_backend:
marcodaa52fa2016-01-25 23:49:50 +0100434 type_name: HUS100
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100435 backend: hus100_backend
436 engine: hitachi_vsp
437 connection: FC
Filip Pytlounda2a0792015-10-06 16:28:31 +0200438
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300439* Cinder setup with Hitachi VPS with defined ``ldev`` range:
Ondrej Smola16d66bd2017-01-15 13:56:03 +0100440
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300441 .. code-block:: yaml
Ondrej Smola16d66bd2017-01-15 13:56:03 +0100442
443 cinder:
444 controller:
445 enabled: true
446 backend:
447 hus100_backend:
448 type_name: HUS100
449 backend: hus100_backend
450 engine: hitachi_vsp
451 connection: FC
452 ldev_range: 0-1000
453
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300454* Cinder setup with Ceph:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200455
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300456 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200457
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300458 cinder:
459 controller:
460 enabled: true
461 backend:
462 ceph_backend:
463 type_name: standard-iops
464 backend: ceph_backend
sgarbuz94de9292018-09-10 10:22:39 +0300465 backend_host: ceph
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300466 pool: volumes
467 engine: ceph
468 user: cinder
469 secret_uuid: da74ccb7-aa59-1721-a172-0006b1aa4e3e
470 client_cinder_key: AQDOavlU6BsSJhAAnpFR906mvdgdfRqLHwu0Uw==
471 report_discard_supported: True
stelucz9f4986c2018-08-30 09:46:55 +0200472 image_volume_cache_enabled: False
Filip Pytlounda2a0792015-10-06 16:28:31 +0200473
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300474 .. note:: `Ceph official documentation <http://ceph.com/docs/master/rbd/rbd-openstack/>`__
Filip Pytlounda2a0792015-10-06 16:28:31 +0200475
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300476* Cinder setup with HP3par:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200477
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300478 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200479
480 cinder:
481 controller:
482 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100483 backend:
484 hp3par_backend:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100485 type_name: hp3par
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100486 backend: hp3par_backend
487 user: hp3paruser
488 password: something
489 url: http://10.10.10.10/api/v1
490 cpg: OpenStackCPG
491 host: 10.10.10.10
492 login: hp3paradmin
493 sanpassword: something
494 debug: True
495 snapcpg: OpenStackSNAPCPG
Filip Pytlounda2a0792015-10-06 16:28:31 +0200496
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300497* Cinder setup with Fujitsu Eternus:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200498
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300499 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200500
501 cinder:
502 volume:
503 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100504 backend:
505 10kThinPro:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100506 type_name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100507 engine: fujitsu
508 pool: 10kThinPro
Oleksii Molchanovc6f62702021-04-12 13:46:18 +0300509 backend_host: cinder-vip
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100510 port: 5988
511 user: username
512 password: pass
513 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100514 name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100515 10k_SAS:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100516 type_name: 10k_SAS
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100517 pool: SAS10K
518 engine: fujitsu
519 host: 192.168.0.1
520 port: 5988
521 user: username
522 password: pass
523 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100524 name: 10k_SAS
Filip Pytlounda2a0792015-10-06 16:28:31 +0200525
Sergio Lystopadbbfba652019-06-06 16:20:08 +0300526* Cinder setup with Fujitsu Eternus. Set driver class to be used by cinder-volume:
527 .. code-block:: yaml
528
529 cinder:
530 controller:
531 enabled: True
532 backend:
533 FJISCSI:
534 driver: cinder.volume.drivers.fujitsu.eternus_dx.eternus_dx_iscsi.FJDXISCSIDriver
535 engine: fujitsu
536 FJFC:
537 driver: cinder.volume.drivers.fujitsu.eternus_dx.eternus_dx_fc.FJDXFCDriver
538 engine: fujitsu
539
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300540* Cinder setup with IBM GPFS filesystem:
Jakub Pavlik9703c602015-10-15 18:52:47 +0200541
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300542 .. code-block:: yaml
Jakub Pavlik9703c602015-10-15 18:52:47 +0200543
544 cinder:
545 volume:
546 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100547 backend:
548 GPFS-GOLD:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100549 type_name: GPFS-GOLD
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100550 engine: gpfs
551 mount_point: '/mnt/gpfs-openstack/cinder/gold'
marcodaa52fa2016-01-25 23:49:50 +0100552 GPFS-SILVER:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100553 type_name: GPFS-SILVER
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100554 engine: gpfs
555 mount_point: '/mnt/gpfs-openstack/cinder/silver'
Kirill Bespalov01614c02017-07-31 17:06:09 +0300556
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300557* Cinder setup with HP LeftHand:
Jakub Pavlik9f5988a2016-01-11 13:44:57 +0100558
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300559 .. code-block:: yaml
Jakub Pavlik9f5988a2016-01-11 13:44:57 +0100560
561 cinder:
562 volume:
563 enabled: true
564 backend:
565 HP-LeftHand:
566 type_name: normal-storage
567 engine: hp_lefthand
568 api_url: 'https://10.10.10.10:8081/lhos'
569 username: user
570 password: password
571 clustername: cluster1
572 iscsi_chap_enabled: false
573
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300574* Extra parameters for HP LeftHand:
Jakub Pavlika63764f2016-01-11 14:41:06 +0100575
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300576 .. code-block:: yaml
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100577
Kirill Bespalov01614c02017-07-31 17:06:09 +0300578 cinder type-key normal-storage set hplh:data_pl=r-10-2 hplh:provisioning=full
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100579
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300580* Cinder setup with Solidfire:
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100581
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300582 .. code-block:: yaml
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100583
584 cinder:
585 volume:
586 enabled: true
587 backend:
588 solidfire:
589 type_name: normal-storage
590 engine: solidfire
591 san_ip: 10.10.10.10
592 san_login: user
593 san_password: password
594 clustername: cluster1
595 sf_emulate_512: false
sergio9e6387e2018-02-19 21:13:14 +0200596 sf_api_port: 14443
597 host: ctl01
Aleksieiev, Oleksii224e8ae2018-07-13 09:43:43 -0700598 #for compatibility with old versions
599 sf_account_prefix: PREFIX
Filip Pytlounda2a0792015-10-06 16:28:31 +0200600
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300601* Cinder setup with Block Device driver:
Alexander Noskov023a0032017-06-16 09:31:59 +0200602
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300603 .. code-block:: yaml
Alexander Noskov023a0032017-06-16 09:31:59 +0200604
605 cinder:
606 volume:
607 enabled: true
608 backend:
609 bdd:
610 engine: bdd
611 enabled: true
612 type_name: bdd
613 devices:
614 - sdb
615 - sdc
616 - sdd
617
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300618* Enable cinder-backup service for ceph
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100619
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300620 .. code-block:: yaml
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100621
Ondrej Smolaed6abbf2017-04-25 11:55:44 +0200622 cinder:
623 controller:
624 enabled: true
625 version: mitaka
626 backup:
627 engine: ceph
628 ceph_conf: "/etc/ceph/ceph.conf"
629 ceph_pool: backup
630 ceph_stripe_count: 0
631 ceph_stripe_unit: 0
632 ceph_user: cinder
633 ceph_chunk_size: 134217728
634 restore_discard_excess_bytes: false
635 volume:
636 enabled: true
637 version: mitaka
638 backup:
639 engine: ceph
640 ceph_conf: "/etc/ceph/ceph.conf"
641 ceph_pool: backup
642 ceph_stripe_count: 0
643 ceph_stripe_unit: 0
644 ceph_user: cinder
645 ceph_chunk_size: 134217728
646 restore_discard_excess_bytes: false
Kirill Bespalov01614c02017-07-31 17:06:09 +0300647
Dzmitry Stremkouskib454b1d2019-08-23 17:10:48 +0200648* Enable swift driver for cinder-backup service
649
650 .. code-block:: yaml
651
652 cinder:
653 controller:
654 backup:
655 engine: swift
656 swift:
657 driver: cinder.backup.drivers.swift
658 auth: per_user
659 auth_version: 3
660 block_size: 32768
661 object_size: 52428800
662 container: volumebackup
663 compression_algorithm: gzip
664 retry_attempts: 3
665 retry_backoff: 2
666 catalog_info: object-store:swift:internalURL
667 keystone_catalog_info: identity:Identity Service:publicURL
668 user: test
669 user_domain: localhost
670 key: AAAAAAAAAAA
671 tenant: admin
672 project_domain: localhost
673 project: service
674 enable_progress_timer: True
675 ca_cert_file: /etc/ssl/pki/ca.pem
676
677 cinder:
678 volume:
679 backup:
680 engine: swift
681 swift:
682 driver: cinder.backup.drivers.swift
683 auth: per_user
684 auth_version: 3
685 block_size: 32768
686 object_size: 52428800
687 container: volumebackup
688 compression_algorithm: gzip
689 retry_attempts: 3
690 retry_backoff: 2
691 catalog_info: object-store:swift:internalURL
692 keystone_catalog_info: identity:Identity Service:publicURL
693 user: test
694 user_domain: localhost
695 key: AAAAAAAAAAA
696 tenant: admin
697 project_domain: localhost
698 project: service
699 enable_progress_timer: True
700 ca_cert_file: /etc/ssl/pki/ca.pem
701
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300702* Auditing filter (CADF) enablement:
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100703
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300704 .. code-block:: yaml
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100705
706 cinder:
707 controller:
708 audit:
709 enabled: true
710 ....
711 filter_factory: 'keystonemiddleware.audit:filter_factory'
712 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
713 ....
714 volume:
715 audit:
716 enabled: true
717 ....
718 filter_factory: 'keystonemiddleware.audit:filter_factory'
719 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
720
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300721* Cinder setup with custom availability zones:
Michel Nederlofb8603eb2017-02-09 10:04:38 +0100722
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300723 .. code-block:: yaml
Michel Nederlofb8603eb2017-02-09 10:04:38 +0100724
725 cinder:
726 controller:
727 default_availability_zone: my-default-zone
728 storage_availability_zone: my-custom-zone-name
729 cinder:
730 volume:
731 default_availability_zone: my-default-zone
732 storage_availability_zone: my-custom-zone-name
733
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300734 The ``default_availability_zone`` is used when a volume has been created,
735 without specifying a zone in the ``create`` request as this zone must exist
736 in your configuration.
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300737
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300738 The ``storage_availability_zone`` is an actual zone where the node belongs to
739 and must be specified per each node.
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300740
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300741* Cinder setup with custom non-admin volume query filters:
742
743 .. code-block:: yaml
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300744
745 cinder:
746 controller:
747 query_volume_filters:
748 - name
749 - status
750 - metadata
751 - availability_zone
752 - bootable
753
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300754* ``public_endpoint`` and ``osapi_volume_base_url``:
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300755
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300756 * ``public_endpoint``
757 Used for configuring versions endpoint
758 * ``osapi_volume_base_URL``
759 Used to present Cinder URL to users
Alexander Noskov62496fb2017-02-27 16:42:54 +0100760
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300761 These parameters can be useful when running Cinder under load balancer in
762 SSL.
763
764 .. code-block:: yaml
Alexander Noskov62496fb2017-02-27 16:42:54 +0100765
766 cinder:
767 controller:
768 public_endpoint_address: https://${_param:cluster_domain}:8776
769
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300770* Client role definition:
Michel Nederlofb8603eb2017-02-09 10:04:38 +0100771
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300772 .. code-block:: yaml
Jiri Broulik47aa6b32017-07-10 18:39:15 +0200773
774 cinder:
775 client:
776 enabled: true
777 identity:
778 host: 127.0.0.1
779 port: 35357
780 project: service
781 user: cinder
782 password: pwd
783 protocol: http
784 endpoint_type: internalURL
785 region_name: RegionOne
root08402652018-12-28 15:04:23 +0000786 connection_params:
787 connect_retries: 5
788 connect_retry_delay: 1
Jiri Broulik47aa6b32017-07-10 18:39:15 +0200789 backend:
790 ceph:
791 type_name: standard-iops
792 engine: ceph
793 key:
794 conn_speed: fibre-10G
795
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300796* Barbican integration enablement:
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +0300797
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300798 .. code-block:: yaml
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +0300799
800 cinder:
801 controller:
802 barbican:
803 enabled: true
Jiri Broulik47aa6b32017-07-10 18:39:15 +0200804
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300805* Keystone API version specification (v3 is default):
Oleg Iurchenko6fe8e5d2018-02-20 14:26:04 +0200806
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300807 .. code-block:: yaml
Oleg Iurchenko6fe8e5d2018-02-20 14:26:04 +0200808
809 cinder:
810 controller:
811 identity:
812 api_version: v2.0
813
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300814**Enhanced logging with logging.conf**
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400815
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300816By default ``logging.conf`` is disabled.
817You can enable per-binary ``logging.conf`` by setting the following
818parameters:
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400819
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300820* ``openstack_log_appender``
821 Set to ``true`` to enable ``log_config_append`` for all OpenStack
822 services
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400823
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300824* ``openstack_fluentd_handler_enabled``
825 Set to ``true`` to enable FluentHandler for all Openstack services
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400826
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300827* ``openstack_ossyslog_handler_enabled``
828 Set to ``true`` to enable OSSysLogHandler for all Openstack services
829
830Only WatchedFileHandler, OSSysLogHandler, and FluentHandler are available.
831
832To configure this functionality with pillar:
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400833
834.. code-block:: yaml
835
836 cinder:
837 controller:
838 logging:
839 log_appender: true
840 log_handlers:
841 watchedfile:
842 enabled: true
843 fluentd:
844 enabled: true
Oleksii Chupryn688ae092018-02-07 09:49:21 +0200845 ossyslog:
846 enabled: true
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400847
848 volume:
849 logging:
850 log_appender: true
851 log_handlers:
852 watchedfile:
853 enabled: true
854 fluentd:
855 enabled: true
Oleksii Chupryn688ae092018-02-07 09:49:21 +0200856 ossyslog:
857 enabled: true
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400858
Oleksandr Shyshkoe17f67a2018-08-22 15:26:17 +0300859Enable x509 and ssl communication between Cinder and Galera cluster.
860---------------------
861By default communication between Cinder and Galera is unsecure.
Jakub Pavlikb513f132016-05-20 11:11:19 +0200862
Oleksandr Shyshko9a8196c2018-09-07 13:51:20 +0300863cinder:
864 volume:
865 database:
866 x509:
867 enabled: True
868 controller:
869 database:
870 x509:
871 enabled: True
Oleksandr Shyshkoe17f67a2018-08-22 15:26:17 +0300872
Oleksandr Shyshko9a8196c2018-09-07 13:51:20 +0300873You able to set custom certificates in pillar:
Oleksandr Shyshkoe17f67a2018-08-22 15:26:17 +0300874
875cinder:
876 controller:
877 database:
878 x509:
Oleksandr Shyshko9a8196c2018-09-07 13:51:20 +0300879 cacert: (certificate content)
880 cert: (certificate content)
881 key: (certificate content)
Oleksandr Shyshkoe17f67a2018-08-22 15:26:17 +0300882 volume:
883 database:
884 x509:
Oleksandr Shyshko9a8196c2018-09-07 13:51:20 +0300885 cacert: (certificate content)
886 cert: (certificate content)
887 key: (certificate content)
Oleksandr Shyshkoe17f67a2018-08-22 15:26:17 +0300888
889You can read more about it here:
890 https://docs.openstack.org/security-guide/databases/database-access-control.html
891
Oleksandr Bryndzii8f9e3882018-09-28 23:08:56 +0000892Cinder services on compute node with memcached caching and security strategy:
893
894.. code-block:: yaml
895
896 cinder:
897 volume:
898 enabled: true
899 ...
900 cache:
901 engine: memcached
902 members:
903 - host: 127.0.0.1
904 port: 11211
905 - host: 127.0.0.1
906 port: 11211
907 security:
908 enabled: true
909 strategy: ENCRYPT
910 secret_key: secret
911
912Cinder services on controller node with memcached caching and security strategy:
913
914.. code-block:: yaml
915
916 cinder:
917 controller:
918 enabled: true
919 ...
920 cache:
921 engine: memcached
922 members:
923 - host: 127.0.0.1
924 port: 11211
925 - host: 127.0.0.1
926 port: 11211
927 security:
928 enabled: true
929 strategy: ENCRYPT
930 secret_key: secret
931
Oleksandr Shyshkof8446ed2019-02-01 13:02:34 +0000932Cinder service supports to define iscsi_helper for lvm backend.
rootbb607002019-01-30 17:17:34 +0000933=======
Oleksandr Shyshkof8446ed2019-02-01 13:02:34 +0000934
935.. code-block:: yaml
936
937 cinder:
938 volume:
939 ...
940 backend:
941 lvm:
942 ...
943 engine: lvm
944 iscsi_helper: tgtadm
945
946Cinder service supports to define scheduler_default_filters. Which filter class names
947to use for filtering hosts when not specified in the request.
948
949.. code-block:: yaml
950
951 cinder:
952 volume:
953 ...
954 scheduler_default_filters: (filters)
955
956 cinder:
957 controller:
958 ...
959 scheduler_default_filters: (filters)
rootbb607002019-01-30 17:17:34 +0000960=======
961
962* Cinder database connection setup:
963
964.. code-block:: yaml
965
966 cinder:
967 controller:
968 enabled: True
969 ...
970 database:
971 idle_timeout: 280
972 max_pool_size: 30
973 max_retries: '-1'
974 max_overflow: 40
975 volume:
976 enabled: True
977 ...
978 database:
979 idle_timeout: 280
980 max_pool_size: 30
981 max_retries: '-1'
982 max_overflow: 40
983
Oleksandr Bryndzii3beb0852019-02-27 16:44:01 +0200984Configure cinder to use service user tokens:
985========
986Long-running operations such as snapshot can sometimes overrun the expiry of the user token.
987In such cases, post operations such as cleaning up after a snapshot can fail when the
988cinder service needs to cleanup resources.
989
990This pillar enables cinder to use service user tokens to supplement the regular user token
991used to initiate the operation. The identity service (keystone) will then authenticate
992a request using the service user token if the user token has already expired.
993
994.. code-block:: yaml
995
996 cinder:
997 controller:
998 enabled: True
999 ...
1000 service_user:
1001 enabled: True
1002 auth_type: password
1003 user_domain_id: default
1004 project_domain_id: default
1005 project_name: service
1006 username: cinder
1007 password: pswd
Oleksandr Shyshkof8446ed2019-02-01 13:02:34 +00001008
Oleksandr Bryndzii95b4b6b2019-04-24 11:22:39 +03001009Change default resource quotas using configmap template settings
1010========
1011
1012.. code-block:: yaml
1013
1014 cinder:
1015 controller:
1016 configmap:
1017 DEFAULT:
1018 quota_volumes: 15
1019 quota_snapshots: 15
1020 quota_consistencygroups: 15
1021 quota_groups: 15
1022 quota_gigabytes: 1500
1023 quota_backups: 15
1024 quota_backup_gigabytes: 1500
1025 reservation_expire: 86400
1026 reservation_clean_interval: 86400
1027 until_refresh: 0
1028 max_age: 0
1029 quota_driver: cinder.quota.DbQuotaDriver
1030 use_default_quota_class: true
1031 per_volume_size_limit: 100
1032
Martin Polreicha0958102019-12-11 16:49:29 +01001033
1034Change default service policy configuration:
1035============================================
1036
1037.. code-block:: yaml
1038
1039 cinder:
1040 controller:
1041 policy:
1042 context_is_admin: 'role:admin'
1043 admin_or_owner: 'is_admin:True or project_id:%(project_id)s'
1044 # Add key without value to remove line from policy.json
1045 volume:create:
1046
1047
Taras Khlivnyak335cf052021-06-24 11:32:25 +03001048Change default volume name template:
1049====================================
1050
1051.. code-block:: yaml
1052
1053 cinder:
1054 volume_name_template: 'custom-volume-name-%s'
1055
1056
Vasyl Saienko79ecd552018-09-10 10:31:21 +00001057Upgrades
1058========
1059
1060Each openstack formula provide set of phases (logical bloks) that will help to
1061build flexible upgrade orchestration logic for particular components. The list
1062of phases and theirs descriptions are listed in table below:
1063
1064+-------------------------------+------------------------------------------------------+
1065| State | Description |
1066+===============================+======================================================+
1067| <app>.upgrade.service_running | Ensure that all services for particular application |
1068| | are enabled for autostart and running |
1069+-------------------------------+------------------------------------------------------+
1070| <app>.upgrade.service_stopped | Ensure that all services for particular application |
1071| | disabled for autostart and dead |
1072+-------------------------------+------------------------------------------------------+
1073| <app>.upgrade.pkgs_latest | Ensure that packages used by particular application |
1074| | are installed to latest available version. |
1075| | This will not upgrade data plane packages like qemu |
1076| | and openvswitch as usually minimal required version |
1077| | in openstack services is really old. The data plane |
1078| | packages should be upgraded separately by `apt-get |
1079| | upgrade` or `apt-get dist-upgrade` |
1080| | Applying this state will not autostart service. |
1081+-------------------------------+------------------------------------------------------+
1082| <app>.upgrade.render_config | Ensure configuration is rendered actual version. +
1083+-------------------------------+------------------------------------------------------+
1084| <app>.upgrade.pre | We assume this state is applied on all nodes in the |
1085| | cloud before running upgrade. |
1086| | Only non destructive actions will be applied during |
1087| | this phase. Perform service built in service check |
1088| | like (keystone-manage doctor and nova-status upgrade)|
1089+-------------------------------+------------------------------------------------------+
1090| <app>.upgrade.upgrade.pre | Mostly applicable for data plane nodes. During this |
1091| | phase resources will be gracefully removed from |
1092| | current node if it is allowed. Services for upgraded |
1093| | application will be set to admin disabled state to |
1094| | make sure node will not participate in resources |
1095| | scheduling. For example on gtw nodes this will set |
1096| | all agents to admin disable state and will move all |
1097| | routers to other agents. |
1098+-------------------------------+------------------------------------------------------+
1099| <app>.upgrade.upgrade | This state will basically upgrade application on |
1100| | particular target. Stop services, render |
1101| | configuration, install new packages, run offline |
1102| | dbsync (for ctl), start services. Data plane should |
1103| | not be affected, only OpenStack python services. |
1104+-------------------------------+------------------------------------------------------+
1105| <app>.upgrade.upgrade.post | Add services back to scheduling. |
1106+-------------------------------+------------------------------------------------------+
1107| <app>.upgrade.post | This phase should be launched only when upgrade of |
1108| | the cloud is completed. Cleanup temporary files, |
1109| | perform other post upgrade tasks. |
1110+-------------------------------+------------------------------------------------------+
1111| <app>.upgrade.verify | Here we will do basic health checks (API CRUD |
1112| | operations, verify do not have dead network |
1113| | agents/compute services) |
1114+-------------------------------+------------------------------------------------------+
Oleksandr Pidrepnyi57837bf2019-06-10 11:23:42 +03001115
1116
1117Don't manage services scheduling while upgrade
1118----------------------------------------------
1119For some special cases, don't manage services scheduling both enable and disable
1120before and after upgrade procedure.
1121
1122If 'manage_service_maintenance: true' or not present - default behavior, disable services
1123before upgrade and enable it after upgrade.
1124If 'manage_service_maintenance: false' - don't disable and don't enable upgraded services
1125scheduling before and after upgrade.
1126
1127.. code-block:: yaml
1128
1129 cinder:
1130 upgrade:
1131 manage_service_maintenance: false
Dzmitry Stremkouskifc21b8b2020-07-06 12:32:16 +02001132
1133
1134Execute database maintenance tasks
1135----------------------------------
1136Cleanup stale records from cinder database to make it smaller.
1137This is helpful before any upgrade activity.
1138It is safe to execute it generally without maintenance window same as online db_sync.
1139
1140Enable this pillar:
1141
1142.. code-block:: yaml
1143
1144 cinder:
1145 controller:
1146 db_purge:
1147 enabled: True
1148
1149Execute state cinder.db.db_cleanup to purge stale records:
1150
1151.. code-block:: bash
1152
1153 salt -C 'I@cinder:controller:role:primary' state.apply cinder.db.db_cleanup -l debug
1154
1155It is possible to pass days parameter.
1156If you skip setting it, all records would be archived/purged:
1157
1158.. code-block:: yaml
1159
1160 cinder:
1161 controller:
1162 db_purge:
1163 enabled: True
1164 days: 45
1165