blob: 1dc385096ba8ee0ed8cc0d87efcfbe5b979479ff [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
Dmitry Stremkovskiy9f4ac8b2017-07-11 09:48:46 +030021 cinder_uid: 304
22 cinder_gid: 304
Dmitry Stremkovskiyef4c7d02017-07-30 16:51:52 +030023 nas_secure_file_permissions: false
24 nas_secure_file_operations: false
Dmitry Stremkovskiya5dd7992017-07-30 19:54:23 +030025 cinder_internal_tenant_user_id: f46924c112a14c80ab0a24a613d95eef
26 cinder_internal_tenant_project_id: b7455b8974bb4064ad247c8f375eae6c
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010027 default_volume_type: 7k2SaS
Damian Szeluga0918f5a2017-04-19 12:26:56 +020028 availability_zone_fallback: True
Filip Pytlounda2a0792015-10-06 16:28:31 +020029 database:
30 engine: mysql
31 host: 127.0.0.1
32 port: 3306
33 name: cinder
34 user: cinder
35 password: pwd
36 identity:
37 engine: keystone
38 host: 127.0.0.1
39 port: 35357
40 tenant: service
41 user: cinder
42 password: pwd
43 message_queue:
44 engine: rabbitmq
45 host: 127.0.0.1
46 port: 5672
47 user: openstack
48 password: pwd
49 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010050 backend:
51 7k2_SAS:
52 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +010053 type_name: slow-disks
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010054 host: 192.168.0.1
55 port: 22
56 user: username
57 password: pass
58 connection: FC/iSCSI
59 multihost: true
60 multipath: true
61 pool: SAS7K2
Kirill Bespalov01614c02017-07-31 17:06:09 +030062 audit:
Petr Michaleca1c7ff12016-11-29 16:32:50 +010063 enabled: false
Simon Pasquier9089de42017-02-03 16:13:22 +010064 osapi_max_limit: 500
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +030065 barbican:
66 enabled: true
Filip Pytlounda2a0792015-10-06 16:28:31 +020067
68 cinder:
69 volume:
70 enabled: true
71 version: juno
Dmitry Stremkovskiy9f4ac8b2017-07-11 09:48:46 +030072 cinder_uid: 304
73 cinder_gid: 304
Dmitry Stremkovskiyef4c7d02017-07-30 16:51:52 +030074 nas_secure_file_permissions: false
75 nas_secure_file_operations: false
Dmitry Stremkovskiya5dd7992017-07-30 19:54:23 +030076 cinder_internal_tenant_user_id: f46924c112a14c80ab0a24a613d95eef
77 cinder_internal_tenant_project_id: b7455b8974bb4064ad247c8f375eae6c
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +010078 default_volume_type: 7k2SaS
Filip Pytlounda2a0792015-10-06 16:28:31 +020079 database:
80 engine: mysql
81 host: 127.0.0.1
82 port: 3306
83 name: cinder
84 user: cinder
85 password: pwd
86 identity:
87 engine: keystone
88 host: 127.0.0.1
89 port: 35357
90 tenant: service
91 user: cinder
92 password: pwd
93 message_queue:
94 engine: rabbitmq
95 host: 127.0.0.1
96 port: 5672
97 user: openstack
98 password: pwd
99 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100100 backend:
101 7k2_SAS:
102 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100103 type_name: 7k2 SAS disk
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100104 host: 192.168.0.1
105 port: 22
106 user: username
107 password: pass
108 connection: FC/iSCSI
109 multihost: true
110 multipath: true
111 pool: SAS7K2
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100112 audit:
113 enabled: false
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +0300114 barbican:
115 enabled: true
Ondrej Smola74af21b2017-04-28 12:30:24 +0200116
117
118Enable CORS parameters
119
120.. code-block:: yaml
121
122 cinder:
123 controller:
124 cors:
125 allowed_origin: https:localhost.local,http:localhost.local
126 expose_headers: X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token
127 allow_methods: GET,PUT,POST,DELETE,PATCH
128 allow_headers: X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token
129 allow_credentials: True
130 max_age: 86400
Jiri Konecny2dce35f2016-04-19 16:29:52 +0200131
132Client-side RabbitMQ HA setup for controller
133
134.. code-block:: yaml
135
136 cinder:
137 controller:
138 ....
139 message_queue:
140 engine: rabbitmq
141 members:
142 - host: 10.0.16.1
143 - host: 10.0.16.2
144 - host: 10.0.16.3
145 user: openstack
146 password: pwd
147 virtual_host: '/openstack'
148 ....
149
150Client-side RabbitMQ HA setup for volume component
151
152.. code-block:: yaml
153
154 cinder:
155 volume:
156 ....
157 message_queue:
158 engine: rabbitmq
159 members:
160 - host: 10.0.16.1
161 - host: 10.0.16.2
162 - host: 10.0.16.3
163 user: openstack
164 password: pwd
165 virtual_host: '/openstack'
166 ....
Filip Pytlounda2a0792015-10-06 16:28:31 +0200167
Kirill Bespalov01614c02017-07-31 17:06:09 +0300168
169**Client-side RabbitMQ TLS configuration.**
170
171|
172
173To enable TLS for oslo.messaging you need to provide the CA certificate.
174By default system-wide CA certs are used. Nothing should be specified except `ssl.enabled`.
175
176.. code-block:: yaml
177
178 cinder:
179 controller or volume:
180 ....
181 message_queue:
182 ssl:
183 enabled: True
184
185
186
187Use `cacert_file` option to specify the CA-cert file path explicitly:
188
189.. code-block:: yaml
190
191 cinder:
192 controller or volume:
193 ....
194 message_queue:
195 ssl:
196 enabled: True
197 cacert_file: /etc/ssl/rabbitmq-ca.pem
198
199To manage content of the `cacert_file` use the `cacert` option:
200
201.. code-block:: yaml
202
203 cinder:
204 controller or volume:
205 ....
206 message_queue:
207 ssl:
208 enabled: True
209 cacert: |
210
211 -----BEGIN CERTIFICATE-----
212 ...
213 -----END CERTIFICATE-------
214
215 cacert_file: /etc/openstack/rabbitmq-ca.pem
216
217
218Notice:
219 * The `message_queue.port` is set to **5671** (AMQPS) by default if `ssl.enabled=True`.
220 * Use `message_queue.ssl.version` if you need to specify protocol version. By default is TLSv1 for python < 2.7.9 and TLSv1_2 for version above.
221
222
223
Filip Pytlounda2a0792015-10-06 16:28:31 +0200224Cinder setup with zeroing deleted volumes
225
Alexander Noskov62496fb2017-02-27 16:42:54 +0100226.. code-block:: yaml
227
Filip Pytlounda2a0792015-10-06 16:28:31 +0200228 cinder:
229 controller:
230 enabled: true
231 wipe_method: zero
232 ...
233
234Cinder setup with shreding deleted volumes
235
236.. code-block:: yaml
237
238 cinder:
239 controller:
240 enabled: true
241 wipe_method: shred
242 ...
243
Dmitry Ukov56c29072017-05-04 16:48:29 +0400244Configuration of policy.json file
245
246.. code-block:: yaml
247
248 cinder:
249 controller:
250 ....
251 policy:
252 'volume:delete': 'rule:admin_or_owner'
253 # Add key without value to remove line from policy.json
254 'volume:extend':
255
Filip Pytlounda2a0792015-10-06 16:28:31 +0200256
257Default Cinder setup with iSCSI target
258
259.. code-block:: yaml
260
261 cinder:
262 controller:
263 enabled: true
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200264 version: mitaka
265 default_volume_type: lvmdriver-1
Filip Pytlounda2a0792015-10-06 16:28:31 +0200266 database:
267 engine: mysql
268 host: 127.0.0.1
269 port: 3306
270 name: cinder
271 user: cinder
272 password: pwd
273 identity:
274 engine: keystone
275 host: 127.0.0.1
276 port: 35357
277 tenant: service
278 user: cinder
279 password: pwd
280 message_queue:
281 engine: rabbitmq
282 host: 127.0.0.1
283 port: 5672
284 user: openstack
285 password: pwd
286 virtual_host: '/openstack'
Jakub Pavlikaf96c2a2016-01-08 15:49:54 +0100287 backend:
Jakub Pavlik3d437df2016-04-11 22:07:50 +0200288 lvmdriver-1:
289 engine: lvm
290 type_name: lvmdriver-1
291 volume_group: cinder-volume
Filip Pytlounda2a0792015-10-06 16:28:31 +0200292
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100293Cinder setup for IBM Storwize
Filip Pytlounda2a0792015-10-06 16:28:31 +0200294
295.. code-block:: yaml
296
297 cinder:
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100298 volume:
Filip Pytlounda2a0792015-10-06 16:28:31 +0200299 enabled: true
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100300 backend:
301 7k2_SAS:
302 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100303 type_name: 7k2 SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100304 host: 192.168.0.1
305 port: 22
306 user: username
307 password: pass
308 connection: FC/iSCSI
309 multihost: true
310 multipath: true
311 pool: SAS7K2
312 10k_SAS:
313 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100314 type_name: 10k SAS disk
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100315 host: 192.168.0.1
316 port: 22
317 user: username
318 password: pass
319 connection: FC/iSCSI
320 multihost: true
321 multipath: true
322 pool: SAS10K
323 15k_SAS:
324 engine: storwize
Jakub Pavlikedd46102016-01-08 16:20:38 +0100325 type_name: 15k SAS
Ales Komarekdf13bbd2016-01-05 21:33:36 +0100326 host: 192.168.0.1
327 port: 22
328 user: username
329 password: pass
330 connection: FC/iSCSI
331 multihost: true
332 multipath: true
333 pool: SAS15K
Filip Pytlounda2a0792015-10-06 16:28:31 +0200334
Jiri Broulik88548db2017-03-31 12:21:37 +0200335
336Cinder setup with NFS
337
338.. code-block:: yaml
339
340 cinder:
341 controller:
342 enabled: true
343 default_volume_type: nfs-driver
344 backend:
345 nfs-driver:
346 engine: nfs
347 type_name: nfs-driver
348 volume_group: cinder-volume
349 path: /var/lib/cinder/nfs
350 devices:
351 - 172.16.10.110:/var/nfs/cinder
352 options: rw,sync
353
354
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400355Cinder setup with NetApp
356
357.. code-block:: yaml
358
359 cinder:
360 controller:
361 backend:
362 netapp:
363 engine: netapp
364 type_name: netapp
365 user: openstack
366 vserver: vm1
367 server_hostname: 172.18.2.3
368 password: password
369 storage_protocol: nfs
370 transport_type: https
371 lun_space_reservation: enabled
372 use_multipath_for_image_xfer: True
Dmitry Stremkouskiffa53c02017-09-15 19:47:21 +0300373 nas_secure_file_operations: false
374 nas_secure_file_permissions: false
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400375 devices:
376 - 172.18.1.2:/vol_1
377 - 172.18.1.2:/vol_2
378 - 172.18.1.2:/vol_3
379 - 172.18.1.2:/vol_4
Jakub Pavlik94dc0c92017-06-14 14:53:23 +0200380 linux:
381 system:
382 package:
383 nfs-common:
384 version: latest
Alexey Chekunovf916f0c2017-05-25 13:29:45 +0400385
386
Filip Pytlounda2a0792015-10-06 16:28:31 +0200387Cinder setup with Hitachi VPS
388
389.. code-block:: yaml
390
391 cinder:
392 controller:
393 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100394 backend:
395 hus100_backend:
marcodaa52fa2016-01-25 23:49:50 +0100396 type_name: HUS100
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100397 backend: hus100_backend
398 engine: hitachi_vsp
399 connection: FC
Filip Pytlounda2a0792015-10-06 16:28:31 +0200400
Ondrej Smola16d66bd2017-01-15 13:56:03 +0100401Cinder setup with Hitachi VPS with defined ldev range
402
403.. code-block:: yaml
404
405 cinder:
406 controller:
407 enabled: true
408 backend:
409 hus100_backend:
410 type_name: HUS100
411 backend: hus100_backend
412 engine: hitachi_vsp
413 connection: FC
414 ldev_range: 0-1000
415
Filip Pytlounda2a0792015-10-06 16:28:31 +0200416Cinder setup with CEPH
417
418.. code-block:: yaml
419
420 cinder:
421 controller:
422 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100423 backend:
424 ceph_backend:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100425 type_name: standard-iops
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100426 backend: ceph_backend
427 pool: volumes
428 engine: ceph
429 user: cinder
430 secret_uuid: da74ccb7-aa59-1721-a172-0006b1aa4e3e
431 client_cinder_key: AQDOavlU6BsSJhAAnpFR906mvdgdfRqLHwu0Uw==
Michel Nederlofb43a4872017-06-20 09:36:47 +0200432 report_discard_supported: True
Filip Pytlounda2a0792015-10-06 16:28:31 +0200433
434http://ceph.com/docs/master/rbd/rbd-openstack/
435
436
437Cinder setup with HP3par
438
439.. code-block:: yaml
440
441 cinder:
442 controller:
443 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100444 backend:
445 hp3par_backend:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100446 type_name: hp3par
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100447 backend: hp3par_backend
448 user: hp3paruser
449 password: something
450 url: http://10.10.10.10/api/v1
451 cpg: OpenStackCPG
452 host: 10.10.10.10
453 login: hp3paradmin
454 sanpassword: something
455 debug: True
456 snapcpg: OpenStackSNAPCPG
Filip Pytlounda2a0792015-10-06 16:28:31 +0200457
458Cinder setup with Fujitsu Eternus
459
460.. code-block:: yaml
461
462 cinder:
463 volume:
464 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100465 backend:
466 10kThinPro:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100467 type_name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100468 engine: fujitsu
469 pool: 10kThinPro
470 host: 192.168.0.1
471 port: 5988
472 user: username
473 password: pass
474 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100475 name: 10kThinPro
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100476 10k_SAS:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100477 type_name: 10k_SAS
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100478 pool: SAS10K
479 engine: fujitsu
480 host: 192.168.0.1
481 port: 5988
482 user: username
483 password: pass
484 connection: FC/iSCSI
marcodaa52fa2016-01-25 23:49:50 +0100485 name: 10k_SAS
Filip Pytlounda2a0792015-10-06 16:28:31 +0200486
Jakub Pavlik9703c602015-10-15 18:52:47 +0200487Cinder setup with IBM GPFS filesystem
488
489.. code-block:: yaml
490
491 cinder:
492 volume:
493 enabled: true
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100494 backend:
495 GPFS-GOLD:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100496 type_name: GPFS-GOLD
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100497 engine: gpfs
498 mount_point: '/mnt/gpfs-openstack/cinder/gold'
marcodaa52fa2016-01-25 23:49:50 +0100499 GPFS-SILVER:
Jakub Pavlikedd46102016-01-08 16:20:38 +0100500 type_name: GPFS-SILVER
Jakub Pavlik5d7df0d2016-01-06 13:08:30 +0100501 engine: gpfs
502 mount_point: '/mnt/gpfs-openstack/cinder/silver'
Kirill Bespalov01614c02017-07-31 17:06:09 +0300503
Jakub Pavlik9f5988a2016-01-11 13:44:57 +0100504Cinder setup with HP LeftHand
505
506.. code-block:: yaml
507
508 cinder:
509 volume:
510 enabled: true
511 backend:
512 HP-LeftHand:
513 type_name: normal-storage
514 engine: hp_lefthand
515 api_url: 'https://10.10.10.10:8081/lhos'
516 username: user
517 password: password
518 clustername: cluster1
519 iscsi_chap_enabled: false
520
Jakub Pavlika63764f2016-01-11 14:41:06 +0100521Extra parameters for HP LeftHand
Jakub Pavlika63764f2016-01-11 14:41:06 +0100522
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100523.. code-block:: yaml
524
Kirill Bespalov01614c02017-07-31 17:06:09 +0300525 cinder type-key normal-storage set hplh:data_pl=r-10-2 hplh:provisioning=full
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100526
marcodaa52fa2016-01-25 23:49:50 +0100527Cinder setup with Solidfire
Jakub Pavlik5050dda2016-01-11 16:52:32 +0100528
529.. code-block:: yaml
530
531 cinder:
532 volume:
533 enabled: true
534 backend:
535 solidfire:
536 type_name: normal-storage
537 engine: solidfire
538 san_ip: 10.10.10.10
539 san_login: user
540 san_password: password
541 clustername: cluster1
542 sf_emulate_512: false
Filip Pytlounda2a0792015-10-06 16:28:31 +0200543
Alexander Noskov023a0032017-06-16 09:31:59 +0200544Cinder setup with Block Device driver
545
546.. code-block:: yaml
547
548 cinder:
549 volume:
550 enabled: true
551 backend:
552 bdd:
553 engine: bdd
554 enabled: true
555 type_name: bdd
556 devices:
557 - sdb
558 - sdc
559 - sdd
560
Ondrej Smolaed6abbf2017-04-25 11:55:44 +0200561Enable cinder-backup service for ceph
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100562
Ondrej Smolaed6abbf2017-04-25 11:55:44 +0200563.. code-block:: yaml
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100564
Ondrej Smolaed6abbf2017-04-25 11:55:44 +0200565 cinder:
566 controller:
567 enabled: true
568 version: mitaka
569 backup:
570 engine: ceph
571 ceph_conf: "/etc/ceph/ceph.conf"
572 ceph_pool: backup
573 ceph_stripe_count: 0
574 ceph_stripe_unit: 0
575 ceph_user: cinder
576 ceph_chunk_size: 134217728
577 restore_discard_excess_bytes: false
578 volume:
579 enabled: true
580 version: mitaka
581 backup:
582 engine: ceph
583 ceph_conf: "/etc/ceph/ceph.conf"
584 ceph_pool: backup
585 ceph_stripe_count: 0
586 ceph_stripe_unit: 0
587 ceph_user: cinder
588 ceph_chunk_size: 134217728
589 restore_discard_excess_bytes: false
Kirill Bespalov01614c02017-07-31 17:06:09 +0300590
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100591Enable auditing filter, ie: CADF
592
593.. code-block:: yaml
594
595 cinder:
596 controller:
597 audit:
598 enabled: true
599 ....
600 filter_factory: 'keystonemiddleware.audit:filter_factory'
601 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
602 ....
603 volume:
604 audit:
605 enabled: true
606 ....
607 filter_factory: 'keystonemiddleware.audit:filter_factory'
608 map_file: '/etc/pycadf/cinder_api_audit_map.conf'
609
Michel Nederlofb8603eb2017-02-09 10:04:38 +0100610
611Cinder setup with custom availability zones:
612
613.. code-block:: yaml
614
615 cinder:
616 controller:
617 default_availability_zone: my-default-zone
618 storage_availability_zone: my-custom-zone-name
619 cinder:
620 volume:
621 default_availability_zone: my-default-zone
622 storage_availability_zone: my-custom-zone-name
623
Andrii Ostapenkob7aa34d2017-04-20 14:22:44 +0300624
625Cinder setup with custom non-admin volume query filters:
626
627.. code-block:: yaml
628
629 cinder:
630 controller:
631 query_volume_filters:
632 - name
633 - status
634 - metadata
635 - availability_zone
636 - bootable
637
638
Alexander Noskov62496fb2017-02-27 16:42:54 +0100639public_endpoint and osapi_volume_base_url parameters:
640"public_endpoint" is used for configuring versions endpoint,
641"osapi_volume_base_URL" is used to present Cinder URL to users.
642They are useful when running Cinder under load balancer in SSL.
643
644.. code-block:: yaml
645
646 cinder:
647 controller:
648 public_endpoint_address: https://${_param:cluster_domain}:8776
649
Michel Nederlofb8603eb2017-02-09 10:04:38 +0100650The default availability zone is used when a volume has been created, without specifying a zone in the create request. (this zone must exist in your configuration obviously)
651The storage availability zone is the actual zone where the node belongs to. Make sure to specify this per node.
652Check the documentation of OpenStack for more information
653
Jiri Broulik47aa6b32017-07-10 18:39:15 +0200654
655Client role
656
657.. code-block:: yaml
658
659 cinder:
660 client:
661 enabled: true
662 identity:
663 host: 127.0.0.1
664 port: 35357
665 project: service
666 user: cinder
667 password: pwd
668 protocol: http
669 endpoint_type: internalURL
670 region_name: RegionOne
671 backend:
672 ceph:
673 type_name: standard-iops
674 engine: ceph
675 key:
676 conn_speed: fibre-10G
677
Oleg Iurchenko83ee09a2017-10-17 18:24:28 +0300678Enable Barbican integration
679
680.. code-block:: yaml
681
682 cinder:
683 controller:
684 barbican:
685 enabled: true
Jiri Broulik47aa6b32017-07-10 18:39:15 +0200686
Jakub Pavlikb513f132016-05-20 11:11:19 +0200687Documentation and Bugs
688============================
689
690To learn how to deploy OpenStack Salt, consult the documentation available
691online at:
692
Petr Michaleca1c7ff12016-11-29 16:32:50 +0100693https://wiki.openstack.org/wiki/OpenStackSalt
Jakub Pavlikb513f132016-05-20 11:11:19 +0200694
695In the unfortunate event that bugs are discovered, they should be reported to
696the appropriate bug tracker. If you obtained the software from a 3rd party
697operating system vendor, it is often wise to use their own bug tracker for
698reporting problems. In all other cases use the master OpenStack bug tracker,
699available at:
700
701 http://bugs.launchpad.net/openstack-salt
702
703Developers wishing to work on the OpenStack Salt project should always base
704their work on the latest formulas code, available from the master GIT
705repository at:
706
707 https://git.openstack.org/cgit/openstack/salt-formula-cinder
708
709Developers should also join the discussion on the IRC list, at:
710
711 https://wiki.openstack.org/wiki/Meetings/openstack-salt
Filip Pytlounb0f5c1f2017-02-02 13:02:03 +0100712
713Documentation and Bugs
714======================
715
716To learn how to install and update salt-formulas, consult the documentation
717available online at:
718
719 http://salt-formulas.readthedocs.io/
720
721In the unfortunate event that bugs are discovered, they should be reported to
722the appropriate issue tracker. Use Github issue tracker for specific salt
723formula:
724
725 https://github.com/salt-formulas/salt-formula-cinder/issues
726
727For feature requests, bug reports or blueprints affecting entire ecosystem,
728use Launchpad salt-formulas project:
729
730 https://launchpad.net/salt-formulas
731
732You can also join salt-formulas-users team and subscribe to mailing list:
733
734 https://launchpad.net/~salt-formulas-users
735
736Developers wishing to work on the salt-formulas projects should always base
737their work on master branch and submit pull request against specific formula.
738
739 https://github.com/salt-formulas/salt-formula-cinder
740
741Any questions or feedback is always welcome so feel free to join our IRC
742channel:
743
744 #salt-formulas @ irc.freenode.net