Ansible playbooks to deploy Ceph, the distributed filesystem.
 
 
 
 
Go to file
Guillaume Abrioux 7d0e072da4 purge_cluster: fix bug when building device list
there is some leftover on devices when purging osds because of a invalid
device list construction.

typical error:
```
changed: [osd3] => (item=/dev/sda sda1) => {
    "changed": true,
    "cmd": "# if the disk passed is a raw device AND the boot system disk\n if parted -s \"/dev/sda sda1\" print | grep -sq boot; then\n echo \"Looks like /dev/sda sda1 has a boot partition,\"\n echo \"if you want to delete specific partitions point to the partition instead of the raw device\"\n echo \"Do not use your system disk!\"\n exit 1\n fi\n echo sgdisk -Z \"/dev/sda sda1\"\n echo dd if=/dev/zero of=\"/dev/sda sda1\" bs=1M count=200\n echo udevadm settle --timeout=600",
    "delta": "0:00:00.015188",
    "end": "2018-05-16 12:41:40.408597",
    "item": "/dev/sda sda1",
    "rc": 0,
    "start": "2018-05-16 12:41:40.393409"
}

STDOUT:

sgdisk -Z /dev/sda sda1
dd if=/dev/zero of=/dev/sda sda1 bs=1M count=200
udevadm settle --timeout=600

STDERR:

Error: Could not stat device /dev/sda sda1 - No such file or directory.
```

the devices list in the task `resolve parent device` isn't built
properly because the command used to resolve the parent device doesn't
return the expected output

eg:

```
changed: [osd3] => (item=/dev/sda1) => {
    "changed": true,
    "cmd": "echo /dev/$(lsblk -no pkname \"/dev/sda1\")",
    "delta": "0:00:00.013634",
    "end": "2018-05-16 12:41:09.068166",
    "item": "/dev/sda1",
    "rc": 0,
    "start": "2018-05-16 12:41:09.054532"
}

STDOUT:

/dev/sda sda1
```

For instance, it will result with a devices list like:
`['/dev/sda sda1', '/dev/sdb', '/dev/sdc sdc1']`
where we expect to have:
`['/dev/sda', '/dev/sdb', '/dev/sdc']`

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

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 9cad113e2f)
2018-05-22 16:44:06 +02:00
contrib contrib: do not skip ci on backport 2017-12-14 17:23:02 +01:00
docker docker: add README documenting directory purpose 2016-09-21 18:21:50 -04:00
docs Fixed wrong path of ceph.conf in docs. 2018-04-10 10:33:25 +02:00
group_vars tests: update the type for the rule used in pools 2018-04-30 08:15:18 +02:00
infrastructure-playbooks purge_cluster: fix bug when building device list 2018-05-22 16:44:06 +02:00
library mon/client: remove acl code 2018-04-23 18:34:58 +02:00
plugins config_template: resync with upstream 2018-04-23 10:17:24 +02:00
profiles Common: Add profiles 2017-07-19 11:50:03 +02:00
roles defaults: restart_osd_daemon unit spaces 2018-05-22 09:43:10 +02:00
tests tests: update the type for the rule used in pools 2018-04-30 08:15:18 +02:00
.gitignore Revert "add .vscode/ to gitignore" 2018-04-27 13:20:04 +02:00
LICENSE Add Ceph Playbook 2014-03-03 19:08:51 +01:00
Makefile Makefile: handle "beta" Git tags 2018-01-12 14:45:19 +01:00
README-MULTISITE.md Experimental RGW Multisite Support 2016-08-16 14:57:01 -04:00
README.rst Update Documentation example link to 3.0 2018-02-07 16:34:45 +01:00
Vagrantfile remove unsed ceph_rgw_civetweb_port variable 2018-03-14 14:22:00 +01:00
ansible.cfg Tune ansible.cfg 2018-03-14 13:51:13 +01:00
ceph-aio-no-vagrant.sh osd: simplify scenarios 2017-08-03 10:20:39 +02:00
ceph-ansible.spec.in ci: test on ansible 2.4.2 2018-01-11 17:27:42 +01:00
dummy-ansible-hosts Fix Travis 2015-01-21 16:33:26 +01:00
example-ansible-role-requirements.yml add a galaxy dependency file example 2016-02-12 15:55:42 +01:00
generate_group_vars_sample.sh generate_group_vars_sample: rhcs.yml.sample 2017-08-03 23:05:42 +02:00
monitor_keys_example Add Monitor Keys example 2015-01-30 16:17:46 +01:00
rhcs_edits.txt common: refactor installation method 2017-08-30 10:52:01 +02:00
rundep.sample Allow ceph-ansible to be run on a locally built/installed Ceph 2016-08-12 10:02:15 -04:00
rundep_installer.sh Allow ceph-ansible to be run on a locally built/installed Ceph 2016-08-12 10:02:15 -04:00
site-docker.yml.sample playbook: improve facts gathering 2018-05-04 14:28:19 +02:00
site.yml.sample playbook: improve facts gathering 2018-05-04 14:28:19 +02:00
test.yml remove rbd-mirror as well from testing. No packages are available yet 2016-04-12 07:38:13 -04:00
tox.ini ci: test ansible 2.5 2018-04-23 10:17:24 +02:00
vagrant_variables.yml.atomic vagrantfile: Ensure `devices` variable is a list 2017-07-13 00:44:49 +02:00
vagrant_variables.yml.linode remove kernel.pid_max 2018-02-23 13:57:57 +01:00
vagrant_variables.yml.openstack vagrantfile: Ensure `devices` variable is a list 2017-07-13 00:44:49 +02:00
vagrant_variables.yml.sample remove kernel.pid_max 2018-02-23 13:57:57 +01: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/