blob: b7427aa944a91869ab7dd68bbe0d8c91b892388d [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
Filip Pytlounda2a0792015-10-06 16:28:31 +020033 database:
34 engine: mysql
35 host: 127.0.0.1
36 port: 3306
37 name: cinder
38 user: cinder
39 password: pwd
40 identity:
41 engine: keystone
42 host: 127.0.0.1
43 port: 35357
44 tenant: service
45 user: cinder
46 password: pwd
47 message_queue:
48 engine: rabbitmq
49 host: 127.0.0.1
50 port: 5672
51 user: openstack
52 password: pwd
53 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010054 backend:
55 7k2_SAS:
56 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +010057 type_name: slow-disks
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010058 host: 192.168.0.1
59 port: 22
60 user: username
61 password: pass
62 connection: FC/iSCSI
63 multihost: true
64 multipath: true
65 pool: SAS7K2
Kirill Bespalov01614c02017-07-31 17:06:09 +030066 audit:
Petr Michaleca1c7ff12016-11-29 16:32:50 +010067 enabled: false
Simon Pasquier9089de42017-02-03 16:13:22 +010068 osapi_max_limit: 500
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +030069 barbican:
70 enabled: true
Filip Pytlounda2a0792015-10-06 16:28:31 +020071
72 cinder:
73 volume:
74 enabled: true
75 version: juno
Dmitry Stremkovskiy9f4ac8b2017-07-11 09:48:46 +030076 cinder_uid: 304
77 cinder_gid: 304
Dmitry Stremkovskiyef4c7d02017-07-30 16:51:52 +030078 nas_secure_file_permissions: false
79 nas_secure_file_operations: false
Dmitry Stremkovskiya5dd7992017-07-30 19:54:23 +030080 cinder_internal_tenant_user_id: f46924c112a14c80ab0a24a613d95eef
81 cinder_internal_tenant_project_id: b7455b8974bb4064ad247c8f375eae6c
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010082 default_volume_type: 7k2SaS
Michael Polenchukf0d642e2018-07-27 09:55:14 +040083 enable_force_upload: true
84 my_ip: 192.168.0.254
Filip Pytlounda2a0792015-10-06 16:28:31 +020085 database:
86 engine: mysql
87 host: 127.0.0.1
88 port: 3306
89 name: cinder
90 user: cinder
91 password: pwd
92 identity:
93 engine: keystone
94 host: 127.0.0.1
95 port: 35357
96 tenant: service
97 user: cinder
98 password: pwd
99 message_queue:
100 engine: rabbitmq
101 host: 127.0.0.1
102 port: 5672
103 user: openstack
104 password: pwd
105 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100106 backend:
107 7k2_SAS:
108 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100109 type_name: 7k2 SAS disk
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100110 host: 192.168.0.1
111 port: 22
112 user: username
113 password: pass
114 connection: FC/iSCSI
115 multihost: true
116 multipath: true
117 pool: SAS7K2
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100118 audit:
119 enabled: false
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +0300120 barbican:
121 enabled: true
Ondrej Smola74af21b2017-04-28 12:30:24 +0200122
123
Vasyl Saienkoa5de7512018-07-12 17:28:36 +0300124Volume vmware related options:
125
126.. code-block:: yaml
127
128 cinder:
129 volume:
130 backend:
131 vmware:
132 engine: vmware
133 host_username: vmware
134 host_password: vmware
135 cluster_names: vmware_cluster01,vmware_cluster02
136
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300137* The CORS parameters enablement:
Vasyl Saienkoa5de7512018-07-12 17:28:36 +0300138
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300139 .. code-block:: yaml
Ondrej Smola74af21b2017-04-28 12:30:24 +0200140
141 cinder:
142 controller:
143 cors:
144 allowed_origin: https:localhost.local,http:localhost.local
145 expose_headers: X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token
146 allow_methods: GET,PUT,POST,DELETE,PATCH
147 allow_headers: X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token
148 allow_credentials: True
149 max_age: 86400
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200150
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300151* The client-side RabbitMQ HA setup for the controller:
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200152
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300153 .. code-block:: yaml
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200154
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300155 cinder:
156 controller:
157 ....
158 message_queue:
159 engine: rabbitmq
160 members:
161 - host: 10.0.16.1
162 - host: 10.0.16.2
163 - host: 10.0.16.3
164 user: openstack
165 password: pwd
166 virtual_host: '/openstack'
167 ....
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200168
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300169* The client-side RabbitMQ HA setup for the volume component
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200170
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300171 .. code-block:: yaml
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200172
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300173 cinder:
174 volume:
175 ....
176 message_queue:
177 engine: rabbitmq
178 members:
179 - host: 10.0.16.1
180 - host: 10.0.16.2
181 - host: 10.0.16.3
182 user: openstack
183 password: pwd
184 virtual_host: '/openstack'
185 ....
Filip Pytlounda2a0792015-10-06 16:28:31 +0200186
Kirill Bespalov01614c02017-07-31 17:06:09 +0300187
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300188* Configuring TLS communications.
Kirill Bespalov01614c02017-07-31 17:06:09 +0300189
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300190 .. note:: By default, system-wide installed CA certs are used.
191 Therefore, the ``cacert_file`` and ``cacert`` parameters are
192 optional.
Kirill Bespalov01614c02017-07-31 17:06:09 +0300193
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300194 * RabbitMQ TLS:
Kirill Bespalov1550d6c2017-11-21 12:55:33 +0300195
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300196 .. code-block:: yaml
Kirill Bespalov1550d6c2017-11-21 12:55:33 +0300197
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300198 cinder:
199 controller, volume:
200 message_queue:
201 port: 5671
202 ssl:
203 enabled: True
204 (optional) cacert: cert body if the cacert_file does not exists
205 (optional) cacert_file: /etc/openstack/rabbitmq-ca.pem
206 (optional) version: TLSv1_2
Kirill Bespalov01614c02017-07-31 17:06:09 +0300207
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300208 * MySQL TLS:
Kirill Bespalov01614c02017-07-31 17:06:09 +0300209
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300210 .. code-block:: yaml
Kirill Bespalov01614c02017-07-31 17:06:09 +0300211
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300212 cinder:
213 controller:
214 database:
215 ssl:
216 enabled: True
217 (optional) cacert: cert body if the cacert_file does not exists
218 (optional) cacert_file: /etc/openstack/mysql-ca.pem
Kirill Bespalov01614c02017-07-31 17:06:09 +0300219
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300220 * Openstack HTTPS API:
Kirill Bespalov01614c02017-07-31 17:06:09 +0300221
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300222 .. code-block:: yaml
Kirill Bespalov01614c02017-07-31 17:06:09 +0300223
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300224 cinder:
225 controller, volume:
226 identity:
227 protocol: https
228 (optional) cacert_file: /etc/openstack/proxy.pem
229 glance:
230 protocol: https
231 (optional) cacert_file: /etc/openstack/proxy.pem
Kirill Bespalov01614c02017-07-31 17:06:09 +0300232
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300233* Cinder setup with zeroing deleted volumes:
Kirill Bespalov01614c02017-07-31 17:06:09 +0300234
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300235 .. code-block:: yaml
Alexander Noskov62496fb2017-02-27 16:42:54 +0100236
Filip Pytlounda2a0792015-10-06 16:28:31 +0200237 cinder:
238 controller:
239 enabled: true
240 wipe_method: zero
241 ...
242
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300243* Cinder setup with shreding deleted volumes:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200244
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300245 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200246
247 cinder:
248 controller:
249 enabled: true
250 wipe_method: shred
251 ...
252
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300253* Configuration of ``policy.json`` file:
Dmitry Ukov56c29072017-05-04 16:48:29 +0400254
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300255 .. code-block:: yaml
Dmitry Ukov56c29072017-05-04 16:48:29 +0400256
257 cinder:
258 controller:
259 ....
260 policy:
261 'volume:delete': 'rule:admin_or_owner'
262 # Add key without value to remove line from policy.json
263 'volume:extend':
264
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300265* Default Cinder backend ``lvm_type`` setup:
sgarbuz0901ebe2018-06-13 17:16:16 +0300266
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300267 .. code-block:: yaml
sgarbuz0901ebe2018-06-13 17:16:16 +0300268
269 cinder:
270 volume:
271 enabled: true
272 backend:
273 # Type of LVM volumes to deploy; (default, thin, or auto). Auto defaults to thin if thin is supported.
274 lvm_type: auto
275
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300276* Default Cinder setup with iSCSI target:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200277
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300278 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200279
280 cinder:
281 controller:
282 enabled: true
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200283 version: mitaka
284 default_volume_type: lvmdriver-1
Filip Pytlounda2a0792015-10-06 16:28:31 +0200285 database:
286 engine: mysql
287 host: 127.0.0.1
288 port: 3306
289 name: cinder
290 user: cinder
291 password: pwd
292 identity:
293 engine: keystone
294 host: 127.0.0.1
295 port: 35357
296 tenant: service
297 user: cinder
298 password: pwd
299 message_queue:
300 engine: rabbitmq
301 host: 127.0.0.1
302 port: 5672
303 user: openstack
304 password: pwd
305 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100306 backend:
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200307 lvmdriver-1:
308 engine: lvm
309 type_name: lvmdriver-1
310 volume_group: cinder-volume
Filip Pytlounda2a0792015-10-06 16:28:31 +0200311
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300312* Cinder setup for IBM Storwize:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200313
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300314 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200315
316 cinder:
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100317 volume:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200318 enabled: true
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100319 backend:
320 7k2_SAS:
321 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100322 type_name: 7k2 SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100323 host: 192.168.0.1
324 port: 22
325 user: username
326 password: pass
327 connection: FC/iSCSI
328 multihost: true
329 multipath: true
330 pool: SAS7K2
331 10k_SAS:
332 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100333 type_name: 10k SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100334 host: 192.168.0.1
335 port: 22
336 user: username
337 password: pass
338 connection: FC/iSCSI
339 multihost: true
340 multipath: true
341 pool: SAS10K
342 15k_SAS:
343 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100344 type_name: 15k SAS
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: SAS15K
Filip Pytlounda2a0792015-10-06 16:28:31 +0200353
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300354* Cinder setup with NFS:
Jiri Broulik88548db2017-03-31 12:21:37 +0200355
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300356 .. code-block:: yaml
Jiri Broulik88548db2017-03-31 12:21:37 +0200357
358 cinder:
359 controller:
360 enabled: true
361 default_volume_type: nfs-driver
362 backend:
363 nfs-driver:
364 engine: nfs
365 type_name: nfs-driver
366 volume_group: cinder-volume
367 path: /var/lib/cinder/nfs
368 devices:
369 - 172.16.10.110:/var/nfs/cinder
370 options: rw,sync
371
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300372* Cinder setup with NetApp:
Jiri Broulik88548db2017-03-31 12:21:37 +0200373
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300374 .. code-block:: yaml
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400375
376 cinder:
377 controller:
378 backend:
379 netapp:
380 engine: netapp
381 type_name: netapp
382 user: openstack
383 vserver: vm1
384 server_hostname: 172.18.2.3
385 password: password
386 storage_protocol: nfs
387 transport_type: https
388 lun_space_reservation: enabled
389 use_multipath_for_image_xfer: True
Dmitry Stremkouskiffa53c02017-09-15 19:47:21 +0300390 nas_secure_file_operations: false
391 nas_secure_file_permissions: false
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400392 devices:
393 - 172.18.1.2:/vol_1
394 - 172.18.1.2:/vol_2
395 - 172.18.1.2:/vol_3
396 - 172.18.1.2:/vol_4
Jakub Pavlik94dc0c92017-06-14 14:53:23 +0200397 linux:
398 system:
399 package:
400 nfs-common:
401 version: latest
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400402
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300403* Cinder setup with Hitachi VPS:
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400404
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300405 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200406
407 cinder:
408 controller:
409 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100410 backend:
411 hus100_backend:
marcodaa52fa2016-01-25 23:49:50 +0100412 type_name: HUS100
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100413 backend: hus100_backend
414 engine: hitachi_vsp
415 connection: FC
Filip Pytlounda2a0792015-10-06 16:28:31 +0200416
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300417* Cinder setup with Hitachi VPS with defined ``ldev`` range:
Ondrej Smola16d66bd2017-01-15 13:56:03 +0100418
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300419 .. code-block:: yaml
Ondrej Smola16d66bd2017-01-15 13:56:03 +0100420
421 cinder:
422 controller:
423 enabled: true
424 backend:
425 hus100_backend:
426 type_name: HUS100
427 backend: hus100_backend
428 engine: hitachi_vsp
429 connection: FC
430 ldev_range: 0-1000
431
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300432* Cinder setup with Ceph:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200433
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300434 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200435
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300436 cinder:
437 controller:
438 enabled: true
439 backend:
440 ceph_backend:
441 type_name: standard-iops
442 backend: ceph_backend
sgarbuz94de9292018-09-10 10:22:39 +0300443 backend_host: ceph
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300444 pool: volumes
445 engine: ceph
446 user: cinder
447 secret_uuid: da74ccb7-aa59-1721-a172-0006b1aa4e3e
448 client_cinder_key: AQDOavlU6BsSJhAAnpFR906mvdgdfRqLHwu0Uw==
449 report_discard_supported: True
stelucz9f4986c2018-08-30 09:46:55 +0200450 image_volume_cache_enabled: False
Filip Pytlounda2a0792015-10-06 16:28:31 +0200451
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300452 .. note:: `Ceph official documentation <http://ceph.com/docs/master/rbd/rbd-openstack/>`__
Filip Pytlounda2a0792015-10-06 16:28:31 +0200453
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300454* Cinder setup with HP3par:
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
458 cinder:
459 controller:
460 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100461 backend:
462 hp3par_backend:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100463 type_name: hp3par
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100464 backend: hp3par_backend
465 user: hp3paruser
466 password: something
467 url: http://10.10.10.10/api/v1
468 cpg: OpenStackCPG
469 host: 10.10.10.10
470 login: hp3paradmin
471 sanpassword: something
472 debug: True
473 snapcpg: OpenStackSNAPCPG
Filip Pytlounda2a0792015-10-06 16:28:31 +0200474
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300475* Cinder setup with Fujitsu Eternus:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200476
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300477 .. code-block:: yaml
Filip Pytlounda2a0792015-10-06 16:28:31 +0200478
479 cinder:
480 volume:
481 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100482 backend:
483 10kThinPro:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100484 type_name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100485 engine: fujitsu
486 pool: 10kThinPro
487 host: 192.168.0.1
488 port: 5988
489 user: username
490 password: pass
491 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100492 name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100493 10k_SAS:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100494 type_name: 10k_SAS
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100495 pool: SAS10K
496 engine: fujitsu
497 host: 192.168.0.1
498 port: 5988
499 user: username
500 password: pass
501 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100502 name: 10k_SAS
Filip Pytlounda2a0792015-10-06 16:28:31 +0200503
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300504* Cinder setup with IBM GPFS filesystem:
Jakub Pavlik9703c602015-10-15 18:52:47 +0200505
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300506 .. code-block:: yaml
Jakub Pavlik9703c602015-10-15 18:52:47 +0200507
508 cinder:
509 volume:
510 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100511 backend:
512 GPFS-GOLD:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100513 type_name: GPFS-GOLD
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100514 engine: gpfs
515 mount_point: '/mnt/gpfs-openstack/cinder/gold'
marcodaa52fa2016-01-25 23:49:50 +0100516 GPFS-SILVER:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100517 type_name: GPFS-SILVER
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100518 engine: gpfs
519 mount_point: '/mnt/gpfs-openstack/cinder/silver'
Kirill Bespalov01614c02017-07-31 17:06:09 +0300520
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300521* Cinder setup with HP LeftHand:
Jakub Pavlik9f5988a2016-01-11 13:44:57 +0100522
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300523 .. code-block:: yaml
Jakub Pavlik9f5988a2016-01-11 13:44:57 +0100524
525 cinder:
526 volume:
527 enabled: true
528 backend:
529 HP-LeftHand:
530 type_name: normal-storage
531 engine: hp_lefthand
532 api_url: 'https://10.10.10.10:8081/lhos'
533 username: user
534 password: password
535 clustername: cluster1
536 iscsi_chap_enabled: false
537
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300538* Extra parameters for HP LeftHand:
Jakub Pavlika63764f2016-01-11 14:41:06 +0100539
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300540 .. code-block:: yaml
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100541
Kirill Bespalov01614c02017-07-31 17:06:09 +0300542 cinder type-key normal-storage set hplh:data_pl=r-10-2 hplh:provisioning=full
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100543
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300544* Cinder setup with Solidfire:
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100545
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300546 .. code-block:: yaml
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100547
548 cinder:
549 volume:
550 enabled: true
551 backend:
552 solidfire:
553 type_name: normal-storage
554 engine: solidfire
555 san_ip: 10.10.10.10
556 san_login: user
557 san_password: password
558 clustername: cluster1
559 sf_emulate_512: false
sergio9e6387e2018-02-19 21:13:14 +0200560 sf_api_port: 14443
561 host: ctl01
Aleksieiev, Oleksii224e8ae2018-07-13 09:43:43 -0700562 #for compatibility with old versions
563 sf_account_prefix: PREFIX
Filip Pytlounda2a0792015-10-06 16:28:31 +0200564
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300565* Cinder setup with Block Device driver:
Alexander Noskov023a0032017-06-16 09:31:59 +0200566
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300567 .. code-block:: yaml
Alexander Noskov023a0032017-06-16 09:31:59 +0200568
569 cinder:
570 volume:
571 enabled: true
572 backend:
573 bdd:
574 engine: bdd
575 enabled: true
576 type_name: bdd
577 devices:
578 - sdb
579 - sdc
580 - sdd
581
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300582* Enable cinder-backup service for ceph
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100583
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300584 .. code-block:: yaml
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100585
Ondrej Smolaed6abbf2017-04-25 11:55:44 +0200586 cinder:
587 controller:
588 enabled: true
589 version: mitaka
590 backup:
591 engine: ceph
592 ceph_conf: "/etc/ceph/ceph.conf"
593 ceph_pool: backup
594 ceph_stripe_count: 0
595 ceph_stripe_unit: 0
596 ceph_user: cinder
597 ceph_chunk_size: 134217728
598 restore_discard_excess_bytes: false
599 volume:
600 enabled: true
601 version: mitaka
602 backup:
603 engine: ceph
604 ceph_conf: "/etc/ceph/ceph.conf"
605 ceph_pool: backup
606 ceph_stripe_count: 0
607 ceph_stripe_unit: 0
608 ceph_user: cinder
609 ceph_chunk_size: 134217728
610 restore_discard_excess_bytes: false
Kirill Bespalov01614c02017-07-31 17:06:09 +0300611
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300612* Auditing filter (CADF) enablement:
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100613
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300614 .. code-block:: yaml
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100615
616 cinder:
617 controller:
618 audit:
619 enabled: true
620 ....
621 filter_factory: 'keystonemiddleware.audit:filter_factory'
622 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
623 ....
624 volume:
625 audit:
626 enabled: true
627 ....
628 filter_factory: 'keystonemiddleware.audit:filter_factory'
629 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
630
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300631* Cinder setup with custom availability zones:
Michel Nederlofb8603eb2017-02-09 10:04:38 +0100632
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300633 .. code-block:: yaml
Michel Nederlofb8603eb2017-02-09 10:04:38 +0100634
635 cinder:
636 controller:
637 default_availability_zone: my-default-zone
638 storage_availability_zone: my-custom-zone-name
639 cinder:
640 volume:
641 default_availability_zone: my-default-zone
642 storage_availability_zone: my-custom-zone-name
643
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300644 The ``default_availability_zone`` is used when a volume has been created,
645 without specifying a zone in the ``create`` request as this zone must exist
646 in your configuration.
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300647
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300648 The ``storage_availability_zone`` is an actual zone where the node belongs to
649 and must be specified per each node.
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300650
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300651* Cinder setup with custom non-admin volume query filters:
652
653 .. code-block:: yaml
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300654
655 cinder:
656 controller:
657 query_volume_filters:
658 - name
659 - status
660 - metadata
661 - availability_zone
662 - bootable
663
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300664* ``public_endpoint`` and ``osapi_volume_base_url``:
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300665
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300666 * ``public_endpoint``
667 Used for configuring versions endpoint
668 * ``osapi_volume_base_URL``
669 Used to present Cinder URL to users
Alexander Noskov62496fb2017-02-27 16:42:54 +0100670
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300671 These parameters can be useful when running Cinder under load balancer in
672 SSL.
673
674 .. code-block:: yaml
Alexander Noskov62496fb2017-02-27 16:42:54 +0100675
676 cinder:
677 controller:
678 public_endpoint_address: https://${_param:cluster_domain}:8776
679
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300680* Client role definition:
Michel Nederlofb8603eb2017-02-09 10:04:38 +0100681
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300682 .. code-block:: yaml
Jiri Broulik47aa6b32017-07-10 18:39:15 +0200683
684 cinder:
685 client:
686 enabled: true
687 identity:
688 host: 127.0.0.1
689 port: 35357
690 project: service
691 user: cinder
692 password: pwd
693 protocol: http
694 endpoint_type: internalURL
695 region_name: RegionOne
696 backend:
697 ceph:
698 type_name: standard-iops
699 engine: ceph
700 key:
701 conn_speed: fibre-10G
702
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300703* Barbican integration enablement:
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +0300704
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300705 .. code-block:: yaml
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +0300706
707 cinder:
708 controller:
709 barbican:
710 enabled: true
Jiri Broulik47aa6b32017-07-10 18:39:15 +0200711
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300712* Keystone API version specification (v3 is default):
Oleg Iurchenko6fe8e5d2018-02-20 14:26:04 +0200713
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300714 .. code-block:: yaml
Oleg Iurchenko6fe8e5d2018-02-20 14:26:04 +0200715
716 cinder:
717 controller:
718 identity:
719 api_version: v2.0
720
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300721**Enhanced logging with logging.conf**
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400722
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300723By default ``logging.conf`` is disabled.
724You can enable per-binary ``logging.conf`` by setting the following
725parameters:
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400726
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300727* ``openstack_log_appender``
728 Set to ``true`` to enable ``log_config_append`` for all OpenStack
729 services
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400730
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300731* ``openstack_fluentd_handler_enabled``
732 Set to ``true`` to enable FluentHandler for all Openstack services
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400733
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300734* ``openstack_ossyslog_handler_enabled``
735 Set to ``true`` to enable OSSysLogHandler for all Openstack services
736
737Only WatchedFileHandler, OSSysLogHandler, and FluentHandler are available.
738
739To configure this functionality with pillar:
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400740
741.. code-block:: yaml
742
743 cinder:
744 controller:
745 logging:
746 log_appender: true
747 log_handlers:
748 watchedfile:
749 enabled: true
750 fluentd:
751 enabled: true
Oleksii Chupryn688ae092018-02-07 09:49:21 +0200752 ossyslog:
753 enabled: true
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400754
755 volume:
756 logging:
757 log_appender: true
758 log_handlers:
759 watchedfile:
760 enabled: true
761 fluentd:
762 enabled: true
Oleksii Chupryn688ae092018-02-07 09:49:21 +0200763 ossyslog:
764 enabled: true
Dmitry Kalashnik3291f542017-12-05 18:43:47 +0400765
Oleksandr Shyshkoe17f67a2018-08-22 15:26:17 +0300766Enable x509 and ssl communication between Cinder and Galera cluster.
767---------------------
768By default communication between Cinder and Galera is unsecure.
Jakub Pavlikb513f132016-05-20 11:11:19 +0200769
Oleksandr Shyshkoe17f67a2018-08-22 15:26:17 +0300770You able to set custom certificates in pillar:
771controller:
772 database:
773 x509:
774 enabled: True
775
776volume:
777 database:
778 x509:
779 enabled: True
780
781cinder:
782 controller:
783 database:
784 x509:
785 cacert (certificate content)
786 cert (certificate content)
787 key (certificate content)
788 volume:
789 database:
790 x509:
791 cacert (certificate content)
792 cert (certificate content)
793 key (certificate content)
794
795You can read more about it here:
796 https://docs.openstack.org/security-guide/databases/database-access-control.html
797
798**Documentation and bugs**
799======================
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300800* http://salt-formulas.readthedocs.io/
801 Learn how to install and update salt-formulas
Jakub Pavlikb513f132016-05-20 11:11:19 +0200802
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300803* https://github.com/salt-formulas/salt-formula-cinder/issues
804 In the unfortunate event that bugs are discovered, report the issue to the
805 appropriate issue tracker. Use the Github issue tracker for a specific salt
806 formula
Jakub Pavlikb513f132016-05-20 11:11:19 +0200807
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300808* https://launchpad.net/salt-formulas
809 For feature requests, bug reports, or blueprints affecting the entire
810 ecosystem, use the Launchpad salt-formulas project
Jakub Pavlikb513f132016-05-20 11:11:19 +0200811
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300812* https://launchpad.net/~salt-formulas-users
813 Join the salt-formulas-users team and subscribe to mailing list if required
Jakub Pavlikb513f132016-05-20 11:11:19 +0200814
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300815* https://github.com/salt-formulas/salt-formula-cinder
816 Develop the salt-formulas projects in the master branch and then submit pull
817 requests against a specific formula
Jakub Pavlikb513f132016-05-20 11:11:19 +0200818
OlgaGusarenko74b53f22018-06-28 17:35:48 +0300819* #salt-formulas @ irc.freenode.net
820 Use this IRC channel in case of any questions or feedback which is always
821 welcome