Ansible playbooks to deploy Ceph, the distributed filesystem.
 
 
 
 
Go to file
Dimitri Savineau dcd02e6494 ceph_volume: fix multiple db/wal devices
When using the lvm batch ceph-volume subcommand with dedicated devices
for bluestore (db/wal) then the list of devices is convert to a string
instead of being extended via an iterable.
This was working with only one dedicated device but starting with more
then the ceph_volume module fails.

TASK [ceph-osd : use ceph-volume lvm batch to create bluestore osds] **
fatal: [xxxxxx]: FAILED! => changed=true
  cmd:
  - ceph-volume
  - --cluster
  - ceph
  - lvm
  - batch
  - --bluestore
  - --yes
  - --prepare
  - --osds-per-device
  - '4'
  - /dev/nvme2n1
  - /dev/nvme3n1
  - /dev/nvme4n1
  - /dev/nvme5n1
  - /dev/nvme6n1
  - --db-devices
  - /dev/nvme0n1 /dev/nvme1n1
  - --report
  - --format=json
  msg: non-zero return code
  rc: 2
  stderr: |2-
     stderr: lsblk: /dev/nvme0n1 /dev/nvme1n1: not a block device
     stderr: error: /dev/nvme0n1 /dev/nvme1n1: No such file or directory
     stderr: Unknown device, --name=, --path=, or absolute path in /dev/ or /sys expected.
    usage: ceph-volume lvm batch [-h] [--db-devices [DB_DEVICES [DB_DEVICES ...]]]
                                 [--wal-devices [WAL_DEVICES [WAL_DEVICES ...]]]
                                 [--journal-devices [JOURNAL_DEVICES [JOURNAL_DEVICES ...]]]
                                 [--no-auto] [--bluestore] [--filestore]
                                 [--report] [--yes] [--format {json,pretty}]
                                 [--dmcrypt]
                                 [--crush-device-class CRUSH_DEVICE_CLASS]
                                 [--no-systemd]
                                 [--osds-per-device OSDS_PER_DEVICE]
                                 [--block-db-size BLOCK_DB_SIZE]
                                 [--block-wal-size BLOCK_WAL_SIZE]
                                 [--journal-size JOURNAL_SIZE] [--prepare]
                                 [--osd-ids [OSD_IDS [OSD_IDS ...]]]
                                 [DEVICES [DEVICES ...]]
    ceph-volume lvm batch: error: Unable to proceed with non-existing device: /dev/nvme0n1 /dev/nvme1n1

So the dedicated device list is considered as a single string.

This commit also adds the block_db_devices and wal_devices documentation
to the ceph_volume module.

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1816713

Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
(cherry picked from commit 760b6cd7b0)
2020-03-30 10:04:26 -04:00
.github/ISSUE_TEMPLATE Update issue templates 2018-07-12 14:10:15 +02:00
contrib remove ceph restapi references 2019-06-20 15:15:10 -04:00
docs switch to ansible 2.8 2019-05-21 09:17:46 +02:00
group_vars ceph-defaults: update container tag for nautilus 2020-03-30 09:55:05 +02:00
infrastructure-playbooks doc: update infra playbooks statements 2020-03-16 14:43:35 +01:00
library ceph_volume: fix multiple db/wal devices 2020-03-30 10:04:26 -04:00
plugins ipaddrs_in_ranges: fix python indent 2019-10-28 15:54:31 +01:00
profiles Common: Add profiles 2017-07-19 11:50:03 +02:00
roles ceph-defaults: update container tag for nautilus 2020-03-30 09:55:05 +02:00
tests ceph_volume: fix multiple db/wal devices 2020-03-30 10:04:26 -04:00
.gitignore remove ceph-agent role and references 2019-06-17 15:56:00 -04:00
.travis.yml move library/plugins tests files under tests dir 2019-10-28 15:54:31 +01:00
CONTRIBUTING.md remove ceph-agent role and references 2019-06-17 15:56:00 -04:00
LICENSE Add Ceph Playbook 2014-03-03 19:08:51 +01:00
Makefile makefile: change distro to el8 2019-02-20 08:10:30 +00:00
README-MULTISITE-MULTIREALM.md rgw multisite: enable more than 1 realm per cluster 2020-03-04 14:39:23 -05:00
README-MULTISITE.md rgw multisite: enable more than 1 realm per cluster 2020-03-04 14:39:23 -05:00
README.rst Update Documentation example link to 3.0 2018-02-07 16:34:45 +01:00
RELEASE-NOTE.md Add a release note 2020-03-26 18:12:16 -04:00
Vagrantfile tests: revert vagrant_variable file name detection 2019-11-25 14:52:57 +01:00
ansible.cfg ansible.cfg: do not enforce PreferredAuthentications 2019-12-11 08:56:44 -05:00
ceph-ansible.spec.in Remove validate action and notario dependency 2019-10-15 10:21:54 -04:00
dashboard.yml ceph-facts: move grafana fact to dedicated file 2020-01-13 16:28:23 -05:00
dummy-ansible-hosts Fix Travis 2015-01-21 16:33:26 +01:00
generate_group_vars_sample.sh remove ceph-agent role and references 2019-06-17 15:56:00 -04:00
raw_install_python.yml install python-xml on SUSE/openSUSE only if python2 is installed 2019-09-27 17:50:10 +02:00
requirements.txt requirements: enforce ansible version requirement 2020-02-27 09:56:55 -05:00
rhcs_edits.txt rhcs_edits: Update grafana version 2020-03-16 18:10:20 -04:00
site-container.yml.sample nfs: fix nfs with external ceph cluster support 2020-03-19 21:39:56 -04:00
site-docker.yml.sample site: symlink site-docker to site-container 2018-11-27 16:47:40 +00:00
site.yml.sample nfs: fix nfs with external ceph cluster support 2020-03-19 21:39:56 -04:00
test.yml Remove spurious ceph. prefix for roles path in test.yml 2019-01-11 11:10:52 +01:00
tox-dashboard.ini tests: remove useless setting 2019-07-17 09:04:20 +00:00
tox-docker2podman.ini tests: add a docker2podman scenario 2020-01-10 17:41:27 +01:00
tox-external_clients.ini config: fix external client scenario 2020-01-31 13:37:10 +01:00
tox-filestore_to_bluestore.ini tox: set extras vars for filestore-to-bluestore 2020-01-28 22:21:49 -05:00
tox-podman.ini purge: rename playbook (container) 2019-12-04 09:12:41 -05:00
tox-update.ini tests: fix update scenario 2020-03-06 16:10:03 +01:00
tox.ini tox: update shrink scenario configuration 2020-03-03 15:19:45 +01:00
vagrant_variables.yml.sample Fix units and add ability to have a dedicated instance 2019-06-12 11:48:12 +02:00

README.rst

ceph-ansible
============
Ansible playbooks for Ceph, the distributed filesystem.

Please refer to our hosted documentation here: http://docs.ceph.com/ceph-ansible/master/

You can view documentation for our ``stable-*`` branches by substituting ``master`` in the link
above for the name of the branch. For example: http://docs.ceph.com/ceph-ansible/stable-3.0/