blob: 18bc492fa6af1670e625e46b568f0dc664f3818a [file] [log] [blame]
Filip Pytlounda2a0792015-10-06 16:28:31 +02001==============================
2Openstack Cinder Block Storage
3==============================
4
Jakub Pavlikb513f132016-05-20 11:11:19 +02005Cinder provides an infrastructure for managing volumes in OpenStack. It was
6originally a Nova component called nova-volume, but has become an independent
7project since the Folsom release.
Filip Pytlounda2a0792015-10-06 16:28:31 +02008
9Sample pillars
10==============
11
Jakub Pavlikb513f132016-05-20 11:11:19 +020012New structure divides cinder-api,cinder-scheduler to role controller and
13cinder-volume to role volume.
Filip Pytlounda2a0792015-10-06 16:28:31 +020014
15.. code-block:: yaml
16
17 cinder:
18 controller:
19 enabled: true
20 version: juno
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010021 default_volume_type: 7k2SaS
Filip Pytlounda2a0792015-10-06 16:28:31 +020022 database:
23 engine: mysql
24 host: 127.0.0.1
25 port: 3306
26 name: cinder
27 user: cinder
28 password: pwd
29 identity:
30 engine: keystone
31 host: 127.0.0.1
32 port: 35357
33 tenant: service
34 user: cinder
35 password: pwd
36 message_queue:
37 engine: rabbitmq
38 host: 127.0.0.1
39 port: 5672
40 user: openstack
41 password: pwd
42 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010043 backend:
44 7k2_SAS:
45 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +010046 type_name: slow-disks
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010047 host: 192.168.0.1
48 port: 22
49 user: username
50 password: pass
51 connection: FC/iSCSI
52 multihost: true
53 multipath: true
54 pool: SAS7K2
Petr Michaleca1c7ff12016-11-29 16:32:50 +010055 audit:
56 enabled: false
Filip Pytlounda2a0792015-10-06 16:28:31 +020057
58 cinder:
59 volume:
60 enabled: true
61 version: juno
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010062 default_volume_type: 7k2SaS
Filip Pytlounda2a0792015-10-06 16:28:31 +020063 database:
64 engine: mysql
65 host: 127.0.0.1
66 port: 3306
67 name: cinder
68 user: cinder
69 password: pwd
70 identity:
71 engine: keystone
72 host: 127.0.0.1
73 port: 35357
74 tenant: service
75 user: cinder
76 password: pwd
77 message_queue:
78 engine: rabbitmq
79 host: 127.0.0.1
80 port: 5672
81 user: openstack
82 password: pwd
83 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010084 backend:
85 7k2_SAS:
86 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +010087 type_name: 7k2 SAS disk
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010088 host: 192.168.0.1
89 port: 22
90 user: username
91 password: pass
92 connection: FC/iSCSI
93 multihost: true
94 multipath: true
95 pool: SAS7K2
Petr Michaleca1c7ff12016-11-29 16:32:50 +010096 audit:
97 enabled: false
Jiri Konecny2dce35f2016-04-19 16:29:52 +020098
99Client-side RabbitMQ HA setup for controller
100
101.. code-block:: yaml
102
103 cinder:
104 controller:
105 ....
106 message_queue:
107 engine: rabbitmq
108 members:
109 - host: 10.0.16.1
110 - host: 10.0.16.2
111 - host: 10.0.16.3
112 user: openstack
113 password: pwd
114 virtual_host: '/openstack'
115 ....
116
117Client-side RabbitMQ HA setup for volume component
118
119.. code-block:: yaml
120
121 cinder:
122 volume:
123 ....
124 message_queue:
125 engine: rabbitmq
126 members:
127 - host: 10.0.16.1
128 - host: 10.0.16.2
129 - host: 10.0.16.3
130 user: openstack
131 password: pwd
132 virtual_host: '/openstack'
133 ....
Filip Pytlounda2a0792015-10-06 16:28:31 +0200134
135Cinder setup with zeroing deleted volumes
136
137 cinder:
138 controller:
139 enabled: true
140 wipe_method: zero
141 ...
142
143Cinder setup with shreding deleted volumes
144
145.. code-block:: yaml
146
147 cinder:
148 controller:
149 enabled: true
150 wipe_method: shred
151 ...
152
153
154Default Cinder setup with iSCSI target
155
156.. code-block:: yaml
157
158 cinder:
159 controller:
160 enabled: true
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200161 version: mitaka
162 default_volume_type: lvmdriver-1
Filip Pytlounda2a0792015-10-06 16:28:31 +0200163 database:
164 engine: mysql
165 host: 127.0.0.1
166 port: 3306
167 name: cinder
168 user: cinder
169 password: pwd
170 identity:
171 engine: keystone
172 host: 127.0.0.1
173 port: 35357
174 tenant: service
175 user: cinder
176 password: pwd
177 message_queue:
178 engine: rabbitmq
179 host: 127.0.0.1
180 port: 5672
181 user: openstack
182 password: pwd
183 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100184 backend:
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200185 lvmdriver-1:
186 engine: lvm
187 type_name: lvmdriver-1
188 volume_group: cinder-volume
Filip Pytlounda2a0792015-10-06 16:28:31 +0200189
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100190Cinder setup for IBM Storwize
Filip Pytlounda2a0792015-10-06 16:28:31 +0200191
192.. code-block:: yaml
193
194 cinder:
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100195 volume:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200196 enabled: true
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100197 backend:
198 7k2_SAS:
199 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100200 type_name: 7k2 SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100201 host: 192.168.0.1
202 port: 22
203 user: username
204 password: pass
205 connection: FC/iSCSI
206 multihost: true
207 multipath: true
208 pool: SAS7K2
209 10k_SAS:
210 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100211 type_name: 10k SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100212 host: 192.168.0.1
213 port: 22
214 user: username
215 password: pass
216 connection: FC/iSCSI
217 multihost: true
218 multipath: true
219 pool: SAS10K
220 15k_SAS:
221 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100222 type_name: 15k SAS
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100223 host: 192.168.0.1
224 port: 22
225 user: username
226 password: pass
227 connection: FC/iSCSI
228 multihost: true
229 multipath: true
230 pool: SAS15K
Filip Pytlounda2a0792015-10-06 16:28:31 +0200231
232Cinder setup with Hitachi VPS
233
234.. code-block:: yaml
235
236 cinder:
237 controller:
238 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100239 backend:
240 hus100_backend:
marcodaa52fa2016-01-25 23:49:50 +0100241 type_name: HUS100
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100242 backend: hus100_backend
243 engine: hitachi_vsp
244 connection: FC
Filip Pytlounda2a0792015-10-06 16:28:31 +0200245
Ondrej Smola16d66bd2017-01-15 13:56:03 +0100246Cinder setup with Hitachi VPS with defined ldev range
247
248.. code-block:: yaml
249
250 cinder:
251 controller:
252 enabled: true
253 backend:
254 hus100_backend:
255 type_name: HUS100
256 backend: hus100_backend
257 engine: hitachi_vsp
258 connection: FC
259 ldev_range: 0-1000
260
Filip Pytlounda2a0792015-10-06 16:28:31 +0200261Cinder setup with CEPH
262
263.. code-block:: yaml
264
265 cinder:
266 controller:
267 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100268 backend:
269 ceph_backend:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100270 type_name: standard-iops
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100271 backend: ceph_backend
272 pool: volumes
273 engine: ceph
274 user: cinder
275 secret_uuid: da74ccb7-aa59-1721-a172-0006b1aa4e3e
276 client_cinder_key: AQDOavlU6BsSJhAAnpFR906mvdgdfRqLHwu0Uw==
Filip Pytlounda2a0792015-10-06 16:28:31 +0200277
278http://ceph.com/docs/master/rbd/rbd-openstack/
279
280
281Cinder setup with HP3par
282
283.. code-block:: yaml
284
285 cinder:
286 controller:
287 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100288 backend:
289 hp3par_backend:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100290 type_name: hp3par
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100291 backend: hp3par_backend
292 user: hp3paruser
293 password: something
294 url: http://10.10.10.10/api/v1
295 cpg: OpenStackCPG
296 host: 10.10.10.10
297 login: hp3paradmin
298 sanpassword: something
299 debug: True
300 snapcpg: OpenStackSNAPCPG
Filip Pytlounda2a0792015-10-06 16:28:31 +0200301
302Cinder setup with Fujitsu Eternus
303
304.. code-block:: yaml
305
306 cinder:
307 volume:
308 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100309 backend:
310 10kThinPro:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100311 type_name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100312 engine: fujitsu
313 pool: 10kThinPro
314 host: 192.168.0.1
315 port: 5988
316 user: username
317 password: pass
318 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100319 name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100320 10k_SAS:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100321 type_name: 10k_SAS
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100322 pool: SAS10K
323 engine: fujitsu
324 host: 192.168.0.1
325 port: 5988
326 user: username
327 password: pass
328 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100329 name: 10k_SAS
Filip Pytlounda2a0792015-10-06 16:28:31 +0200330
Jakub Pavlik9703c602015-10-15 18:52:47 +0200331Cinder setup with IBM GPFS filesystem
332
333.. code-block:: yaml
334
335 cinder:
336 volume:
337 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100338 backend:
339 GPFS-GOLD:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100340 type_name: GPFS-GOLD
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100341 engine: gpfs
342 mount_point: '/mnt/gpfs-openstack/cinder/gold'
marcodaa52fa2016-01-25 23:49:50 +0100343 GPFS-SILVER:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100344 type_name: GPFS-SILVER
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100345 engine: gpfs
346 mount_point: '/mnt/gpfs-openstack/cinder/silver'
Jakub Pavlik9f5988a2016-01-11 13:44:57 +0100347
348Cinder setup with HP LeftHand
349
350.. code-block:: yaml
351
352 cinder:
353 volume:
354 enabled: true
355 backend:
356 HP-LeftHand:
357 type_name: normal-storage
358 engine: hp_lefthand
359 api_url: 'https://10.10.10.10:8081/lhos'
360 username: user
361 password: password
362 clustername: cluster1
363 iscsi_chap_enabled: false
364
Jakub Pavlika63764f2016-01-11 14:41:06 +0100365Extra parameters for HP LeftHand
Jakub Pavlika63764f2016-01-11 14:41:06 +0100366
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100367.. code-block:: yaml
368
369 cinder type-key normal-storage set hplh:data_pl=r-10-2 hplh:provisioning=full
370
marcodaa52fa2016-01-25 23:49:50 +0100371Cinder setup with Solidfire
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100372
373.. code-block:: yaml
374
375 cinder:
376 volume:
377 enabled: true
378 backend:
379 solidfire:
380 type_name: normal-storage
381 engine: solidfire
382 san_ip: 10.10.10.10
383 san_login: user
384 san_password: password
385 clustername: cluster1
386 sf_emulate_512: false
Filip Pytlounda2a0792015-10-06 16:28:31 +0200387
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100388
389
390Enable auditing filter, ie: CADF
391
392.. code-block:: yaml
393
394 cinder:
395 controller:
396 audit:
397 enabled: true
398 ....
399 filter_factory: 'keystonemiddleware.audit:filter_factory'
400 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
401 ....
402 volume:
403 audit:
404 enabled: true
405 ....
406 filter_factory: 'keystonemiddleware.audit:filter_factory'
407 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
408
Jakub Pavlikb513f132016-05-20 11:11:19 +0200409Documentation and Bugs
410============================
411
412To learn how to deploy OpenStack Salt, consult the documentation available
413online at:
414
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100415https://wiki.openstack.org/wiki/OpenStackSalt
Jakub Pavlikb513f132016-05-20 11:11:19 +0200416
417In the unfortunate event that bugs are discovered, they should be reported to
418the appropriate bug tracker. If you obtained the software from a 3rd party
419operating system vendor, it is often wise to use their own bug tracker for
420reporting problems. In all other cases use the master OpenStack bug tracker,
421available at:
422
423 http://bugs.launchpad.net/openstack-salt
424
425Developers wishing to work on the OpenStack Salt project should always base
426their work on the latest formulas code, available from the master GIT
427repository at:
428
429 https://git.openstack.org/cgit/openstack/salt-formula-cinder
430
431Developers should also join the discussion on the IRC list, at:
432
433 https://wiki.openstack.org/wiki/Meetings/openstack-salt
Filip Pytlounb0f5c1f2017-02-02 13:02:03 +0100434
435Documentation and Bugs
436======================
437
438To learn how to install and update salt-formulas, consult the documentation
439available online at:
440
441 http://salt-formulas.readthedocs.io/
442
443In the unfortunate event that bugs are discovered, they should be reported to
444the appropriate issue tracker. Use Github issue tracker for specific salt
445formula:
446
447 https://github.com/salt-formulas/salt-formula-cinder/issues
448
449For feature requests, bug reports or blueprints affecting entire ecosystem,
450use Launchpad salt-formulas project:
451
452 https://launchpad.net/salt-formulas
453
454You can also join salt-formulas-users team and subscribe to mailing list:
455
456 https://launchpad.net/~salt-formulas-users
457
458Developers wishing to work on the salt-formulas projects should always base
459their work on master branch and submit pull request against specific formula.
460
461 https://github.com/salt-formulas/salt-formula-cinder
462
463Any questions or feedback is always welcome so feel free to join our IRC
464channel:
465
466 #salt-formulas @ irc.freenode.net