Ansible playbooks to deploy Ceph, the distributed filesystem.
 
 
 
 
Go to file
Sébastien Han 3e058bff06 ci: reboot with ansible instead of vagrant reload
vagrant is serialized and takes a lot of time compare to simple reboot.
See the benchmarks below for 3 VMs:

[leseb@rick docker]$ time ANSIBLE_SSH_ARGS="-F
/home/leseb/reproduce-ci/tmp.zgGC7d5mIC/build/workspace/ceph-ansible/tests/functional/centos/7/docker/vagrant_ssh_config"  ansible-playbook -i /home/leseb/reproduce-ci/tmp.zgGC7d5mIC/build/workspace/ceph-ansible/tests/functional/centos/7/docker/hosts reboot.yml

PLAY [mons]
****************************************************************************************************************************************************************************************************

TASK [Gathering Facts]
*****************************************************************************************************************************************************************************************
ok: [mon1]
ok: [mon2]
ok: [mon0]

TASK [restart machine]
*****************************************************************************************************************************************************************************************
changed: [mon2]
changed: [mon1]
changed: [mon0]

TASK [wait for server to boot]
*********************************************************************************************************************************************************************************
ok: [mon2 -> localhost]
ok: [mon0 -> localhost]
ok: [mon1 -> localhost]

TASK [uptime]
**************************************************************************************************************************************************************************************************
changed: [mon2]
changed: [mon0]
changed: [mon1]

PLAY RECAP
*****************************************************************************************************************************************************************************************************
mon0                       : ok=4    changed=2    unreachable=0
failed=0
mon1                       : ok=4    changed=2    unreachable=0
failed=0
mon2                       : ok=4    changed=2    unreachable=0
failed=0

real    0m35.112s
user    0m5.737s
sys     0m1.849s

[leseb@rick docker]$ time vagrant reload
==> mon0: Halting domain...
==> mon0: Starting domain.
==> mon0: Waiting for domain to get an IP address...
==> mon0: Waiting for SSH to become available...
==> mon0: Creating shared folders metadata...
==> mon0: Rsyncing folder:
/home/leseb/reproduce-ci/tmp.zgGC7d5mIC/build/workspace/ceph-ansible/tests/functional/centos/7/docker/
=> /home/vagrant/sync
==> mon0: Machine already provisioned. Run `vagrant provision` or use
the `--provision`
==> mon0: flag to force provisioning. Provisioners marked to run always
will still run.
==> mon1: Halting domain...
==> mon1: Starting domain.
==> mon1: Waiting for domain to get an IP address...
==> mon1: Waiting for SSH to become available...
==> mon1: Creating shared folders metadata...
==> mon1: Rsyncing folder:
/home/leseb/reproduce-ci/tmp.zgGC7d5mIC/build/workspace/ceph-ansible/tests/functional/centos/7/docker/
=> /home/vagrant/sync
==> mon1: Machine already provisioned. Run `vagrant provision` or use
the `--provision`
==> mon1: flag to force provisioning. Provisioners marked to run always
will still run.
==> mon2: Halting domain...
==> mon2: Starting domain.
==> mon2: Waiting for domain to get an IP address...
==> mon2: Waiting for SSH to become available...
==> mon2: Creating shared folders metadata...
==> mon2: Rsyncing folder:
/home/leseb/reproduce-ci/tmp.zgGC7d5mIC/build/workspace/ceph-ansible/tests/functional/centos/7/docker/
=> /home/vagrant/sync
==> mon2: Machine already provisioned. Run `vagrant provision` or use
the `--provision`
==> mon2: flag to force provisioning. Provisioners marked to run always
will still run.

real    1m31.850s
user    0m7.387s
sys     0m0.796s

Reboot via Ansible: 0m35.112s
Reboot via vagrant: 1m31.850s

We save 1/3 time.

Signed-off-by: Sébastien Han <seb@redhat.com>
2017-10-13 09:04:26 +02:00
contrib contrib: backport auto create PR 2017-10-11 15:19:34 +02:00
docker docker: add README documenting directory purpose 2016-09-21 18:21:50 -04:00
docs Docs: fix error `Unknown target name` 2017-10-10 11:36:03 +02:00
group_vars mds: precisely define cephfs pool 2017-10-12 15:56:04 +02:00
infrastructure-playbooks Merge pull request #2044 from major/avoid-jinja-in-when 2017-10-12 22:23:06 +02:00
library resync ceph-iscsi-gw with old upstream 2017-09-12 18:06:10 -06:00
plugins/actions sync config_template plugin with master branch 2016-11-08 10:12:16 -06:00
profiles Common: Add profiles 2017-07-19 11:50:03 +02:00
roles Merge pull request #2044 from major/avoid-jinja-in-when 2017-10-12 22:23:06 +02:00
tests ci: reboot with ansible instead of vagrant reload 2017-10-13 09:04:26 +02:00
.gitignore common: do not run tasks in main.yml, use include 2016-12-09 16:00:46 +01:00
LICENSE Add Ceph Playbook 2014-03-03 19:08:51 +01:00
Makefile Makefile: remove fedpkg dependency for "srpm" 2017-09-13 10:46:37 -06:00
README-MULTISITE.md Experimental RGW Multisite Support 2016-08-16 14:57:01 -04:00
README.rst docs: remove the old README and link to the hosted docs 2017-08-17 16:03:04 -05:00
Vagrantfile ci: disable vnc console 2017-10-09 17:25:45 +02:00
action_plugins Adding symlink to action_plugins so this works in ansible tower 2016-12-12 10:57:51 -05:00
ansible.cfg ansible.cfg: increase ssh timeout 2017-09-06 11:26:36 +02:00
ceph-aio-no-vagrant.sh osd: simplify scenarios 2017-08-03 10:20:39 +02:00
ceph-ansible.spec.in Merge pull request #1900 from ceph/rpm-all-yaml 2017-09-18 14:52:11 +02: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 Remove jinja2 delimiters from `when` keys 2017-10-12 11:27:42 -05:00
site.yml.sample Remove jinja2 delimiters from `when` keys 2017-10-12 11:27:42 -05: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: reboot with ansible instead of vagrant reload 2017-10-13 09:04:26 +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 vagrant: use group_vars for ceph pkg source 2016-10-21 10:46:11 -04:00
vagrant_variables.yml.openstack vagrantfile: Ensure `devices` variable is a list 2017-07-13 00:44:49 +02:00
vagrant_variables.yml.sample vagrantfile: Ensure `devices` variable is a list 2017-07-13 00:44:49 +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-2.2/