blob: df9d1d1502681dcf2bcb2924e5a8195dfc472516 [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
Simon Pasquier9089de42017-02-03 16:13:22 +010057 osapi_max_limit: 500
Filip Pytlounda2a0792015-10-06 16:28:31 +020058
59 cinder:
60 volume:
61 enabled: true
62 version: juno
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010063 default_volume_type: 7k2SaS
Filip Pytlounda2a0792015-10-06 16:28:31 +020064 database:
65 engine: mysql
66 host: 127.0.0.1
67 port: 3306
68 name: cinder
69 user: cinder
70 password: pwd
71 identity:
72 engine: keystone
73 host: 127.0.0.1
74 port: 35357
75 tenant: service
76 user: cinder
77 password: pwd
78 message_queue:
79 engine: rabbitmq
80 host: 127.0.0.1
81 port: 5672
82 user: openstack
83 password: pwd
84 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010085 backend:
86 7k2_SAS:
87 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +010088 type_name: 7k2 SAS disk
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010089 host: 192.168.0.1
90 port: 22
91 user: username
92 password: pass
93 connection: FC/iSCSI
94 multihost: true
95 multipath: true
96 pool: SAS7K2
Petr Michaleca1c7ff12016-11-29 16:32:50 +010097 audit:
98 enabled: false
Jiri Konecny2dce35f2016-04-19 16:29:52 +020099
100Client-side RabbitMQ HA setup for controller
101
102.. code-block:: yaml
103
104 cinder:
105 controller:
106 ....
107 message_queue:
108 engine: rabbitmq
109 members:
110 - host: 10.0.16.1
111 - host: 10.0.16.2
112 - host: 10.0.16.3
113 user: openstack
114 password: pwd
115 virtual_host: '/openstack'
116 ....
117
118Client-side RabbitMQ HA setup for volume component
119
120.. code-block:: yaml
121
122 cinder:
123 volume:
124 ....
125 message_queue:
126 engine: rabbitmq
127 members:
128 - host: 10.0.16.1
129 - host: 10.0.16.2
130 - host: 10.0.16.3
131 user: openstack
132 password: pwd
133 virtual_host: '/openstack'
134 ....
Filip Pytlounda2a0792015-10-06 16:28:31 +0200135
136Cinder setup with zeroing deleted volumes
137
138 cinder:
139 controller:
140 enabled: true
141 wipe_method: zero
142 ...
143
144Cinder setup with shreding deleted volumes
145
146.. code-block:: yaml
147
148 cinder:
149 controller:
150 enabled: true
151 wipe_method: shred
152 ...
153
154
155Default Cinder setup with iSCSI target
156
157.. code-block:: yaml
158
159 cinder:
160 controller:
161 enabled: true
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200162 version: mitaka
163 default_volume_type: lvmdriver-1
Filip Pytlounda2a0792015-10-06 16:28:31 +0200164 database:
165 engine: mysql
166 host: 127.0.0.1
167 port: 3306
168 name: cinder
169 user: cinder
170 password: pwd
171 identity:
172 engine: keystone
173 host: 127.0.0.1
174 port: 35357
175 tenant: service
176 user: cinder
177 password: pwd
178 message_queue:
179 engine: rabbitmq
180 host: 127.0.0.1
181 port: 5672
182 user: openstack
183 password: pwd
184 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100185 backend:
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200186 lvmdriver-1:
187 engine: lvm
188 type_name: lvmdriver-1
189 volume_group: cinder-volume
Filip Pytlounda2a0792015-10-06 16:28:31 +0200190
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100191Cinder setup for IBM Storwize
Filip Pytlounda2a0792015-10-06 16:28:31 +0200192
193.. code-block:: yaml
194
195 cinder:
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100196 volume:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200197 enabled: true
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100198 backend:
199 7k2_SAS:
200 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100201 type_name: 7k2 SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100202 host: 192.168.0.1
203 port: 22
204 user: username
205 password: pass
206 connection: FC/iSCSI
207 multihost: true
208 multipath: true
209 pool: SAS7K2
210 10k_SAS:
211 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100212 type_name: 10k SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100213 host: 192.168.0.1
214 port: 22
215 user: username
216 password: pass
217 connection: FC/iSCSI
218 multihost: true
219 multipath: true
220 pool: SAS10K
221 15k_SAS:
222 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100223 type_name: 15k SAS
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100224 host: 192.168.0.1
225 port: 22
226 user: username
227 password: pass
228 connection: FC/iSCSI
229 multihost: true
230 multipath: true
231 pool: SAS15K
Filip Pytlounda2a0792015-10-06 16:28:31 +0200232
233Cinder setup with Hitachi VPS
234
235.. code-block:: yaml
236
237 cinder:
238 controller:
239 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100240 backend:
241 hus100_backend:
marcodaa52fa2016-01-25 23:49:50 +0100242 type_name: HUS100
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100243 backend: hus100_backend
244 engine: hitachi_vsp
245 connection: FC
Filip Pytlounda2a0792015-10-06 16:28:31 +0200246
Ondrej Smola16d66bd2017-01-15 13:56:03 +0100247Cinder setup with Hitachi VPS with defined ldev range
248
249.. code-block:: yaml
250
251 cinder:
252 controller:
253 enabled: true
254 backend:
255 hus100_backend:
256 type_name: HUS100
257 backend: hus100_backend
258 engine: hitachi_vsp
259 connection: FC
260 ldev_range: 0-1000
261
Filip Pytlounda2a0792015-10-06 16:28:31 +0200262Cinder setup with CEPH
263
264.. code-block:: yaml
265
266 cinder:
267 controller:
268 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100269 backend:
270 ceph_backend:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100271 type_name: standard-iops
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100272 backend: ceph_backend
273 pool: volumes
274 engine: ceph
275 user: cinder
276 secret_uuid: da74ccb7-aa59-1721-a172-0006b1aa4e3e
277 client_cinder_key: AQDOavlU6BsSJhAAnpFR906mvdgdfRqLHwu0Uw==
Filip Pytlounda2a0792015-10-06 16:28:31 +0200278
279http://ceph.com/docs/master/rbd/rbd-openstack/
280
281
282Cinder setup with HP3par
283
284.. code-block:: yaml
285
286 cinder:
287 controller:
288 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100289 backend:
290 hp3par_backend:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100291 type_name: hp3par
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100292 backend: hp3par_backend
293 user: hp3paruser
294 password: something
295 url: http://10.10.10.10/api/v1
296 cpg: OpenStackCPG
297 host: 10.10.10.10
298 login: hp3paradmin
299 sanpassword: something
300 debug: True
301 snapcpg: OpenStackSNAPCPG
Filip Pytlounda2a0792015-10-06 16:28:31 +0200302
303Cinder setup with Fujitsu Eternus
304
305.. code-block:: yaml
306
307 cinder:
308 volume:
309 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100310 backend:
311 10kThinPro:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100312 type_name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100313 engine: fujitsu
314 pool: 10kThinPro
315 host: 192.168.0.1
316 port: 5988
317 user: username
318 password: pass
319 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100320 name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100321 10k_SAS:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100322 type_name: 10k_SAS
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100323 pool: SAS10K
324 engine: fujitsu
325 host: 192.168.0.1
326 port: 5988
327 user: username
328 password: pass
329 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100330 name: 10k_SAS
Filip Pytlounda2a0792015-10-06 16:28:31 +0200331
Jakub Pavlik9703c602015-10-15 18:52:47 +0200332Cinder setup with IBM GPFS filesystem
333
334.. code-block:: yaml
335
336 cinder:
337 volume:
338 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100339 backend:
340 GPFS-GOLD:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100341 type_name: GPFS-GOLD
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100342 engine: gpfs
343 mount_point: '/mnt/gpfs-openstack/cinder/gold'
marcodaa52fa2016-01-25 23:49:50 +0100344 GPFS-SILVER:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100345 type_name: GPFS-SILVER
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100346 engine: gpfs
347 mount_point: '/mnt/gpfs-openstack/cinder/silver'
Jakub Pavlik9f5988a2016-01-11 13:44:57 +0100348
349Cinder setup with HP LeftHand
350
351.. code-block:: yaml
352
353 cinder:
354 volume:
355 enabled: true
356 backend:
357 HP-LeftHand:
358 type_name: normal-storage
359 engine: hp_lefthand
360 api_url: 'https://10.10.10.10:8081/lhos'
361 username: user
362 password: password
363 clustername: cluster1
364 iscsi_chap_enabled: false
365
Jakub Pavlika63764f2016-01-11 14:41:06 +0100366Extra parameters for HP LeftHand
Jakub Pavlika63764f2016-01-11 14:41:06 +0100367
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100368.. code-block:: yaml
369
370 cinder type-key normal-storage set hplh:data_pl=r-10-2 hplh:provisioning=full
371
marcodaa52fa2016-01-25 23:49:50 +0100372Cinder setup with Solidfire
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100373
374.. code-block:: yaml
375
376 cinder:
377 volume:
378 enabled: true
379 backend:
380 solidfire:
381 type_name: normal-storage
382 engine: solidfire
383 san_ip: 10.10.10.10
384 san_login: user
385 san_password: password
386 clustername: cluster1
387 sf_emulate_512: false
Filip Pytlounda2a0792015-10-06 16:28:31 +0200388
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100389
390
391Enable auditing filter, ie: CADF
392
393.. code-block:: yaml
394
395 cinder:
396 controller:
397 audit:
398 enabled: true
399 ....
400 filter_factory: 'keystonemiddleware.audit:filter_factory'
401 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
402 ....
403 volume:
404 audit:
405 enabled: true
406 ....
407 filter_factory: 'keystonemiddleware.audit:filter_factory'
408 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
409
Jakub Pavlikb513f132016-05-20 11:11:19 +0200410Documentation and Bugs
411============================
412
413To learn how to deploy OpenStack Salt, consult the documentation available
414online at:
415
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100416https://wiki.openstack.org/wiki/OpenStackSalt
Jakub Pavlikb513f132016-05-20 11:11:19 +0200417
418In the unfortunate event that bugs are discovered, they should be reported to
419the appropriate bug tracker. If you obtained the software from a 3rd party
420operating system vendor, it is often wise to use their own bug tracker for
421reporting problems. In all other cases use the master OpenStack bug tracker,
422available at:
423
424 http://bugs.launchpad.net/openstack-salt
425
426Developers wishing to work on the OpenStack Salt project should always base
427their work on the latest formulas code, available from the master GIT
428repository at:
429
430 https://git.openstack.org/cgit/openstack/salt-formula-cinder
431
432Developers should also join the discussion on the IRC list, at:
433
434 https://wiki.openstack.org/wiki/Meetings/openstack-salt
Filip Pytlounb0f5c1f2017-02-02 13:02:03 +0100435
436Documentation and Bugs
437======================
438
439To learn how to install and update salt-formulas, consult the documentation
440available online at:
441
442 http://salt-formulas.readthedocs.io/
443
444In the unfortunate event that bugs are discovered, they should be reported to
445the appropriate issue tracker. Use Github issue tracker for specific salt
446formula:
447
448 https://github.com/salt-formulas/salt-formula-cinder/issues
449
450For feature requests, bug reports or blueprints affecting entire ecosystem,
451use Launchpad salt-formulas project:
452
453 https://launchpad.net/salt-formulas
454
455You can also join salt-formulas-users team and subscribe to mailing list:
456
457 https://launchpad.net/~salt-formulas-users
458
459Developers wishing to work on the salt-formulas projects should always base
460their work on master branch and submit pull request against specific formula.
461
462 https://github.com/salt-formulas/salt-formula-cinder
463
464Any questions or feedback is always welcome so feel free to join our IRC
465channel:
466
467 #salt-formulas @ irc.freenode.net