############################################################################## # Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others. # # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- - name: chown of glance/api.log shell: chown -R glance:glance /var/log/glance when: inventory_hostname in groups['controller'] tags: - ceph_conf_glance ignore_errors: "True" - name: modify glance-api.conf for ceph shell: | sed -i 's/^\(default_store\).*/\1 = rbd/g' /etc/glance/glance-api.conf; sed -i '/^\[glance_store/a rbd_store_pool = images' \ /etc/glance/glance-api.conf; sed -i '/^\[glance_store/a rbd_store_user = glance' \ /etc/glance/glance-api.conf; sed -i '/^\[glance_store/a rbd_store_ceph_conf = /etc/ceph/ceph.conf' \ /etc/glance/glance-api.conf; sed -i '/^\[glance_store/a rbd_store_chunk_size = 8' \ /etc/glance/glance-api.conf; sed -i '/^\[glance_store/a show_image_direct_url=True' \ /etc/glance/glance-api.conf; when: inventory_hostname in groups['controller'] tags: - ceph_conf_glance - name: remove glance-api log shell: | rm -f /var/log/glance/api.log; chown -R glance:glance /var/log/glance; when: inventory_hostname in groups['controller'] tags: - ceph_conf_glance ignore_errors: "True" - name: restart glance service shell: service {{ glance_service }} restart register: result until: result.rc == 0 retries: 10 delay: 3 when: inventory_hostname in groups['controller'] tags: - ceph_conf_glance - name: modify cinder.conf for ceph shell: | sed -i 's/^\(volume_driver\).*/\1 = cinder.volume.drivers.rbd.RBDDriver/g' \ /etc/cinder/cinder.conf; sed -i 's/^\(rbd_secret_uuid\).*/\1 = {{ ceph_uuid }}/g' \ /etc/cinder/cinder.conf; crudini --set /etc/cinder/cinder.conf DEFAULT enabled_backends \ ceph; crudini --del /etc/cinder/cinder.conf lvm crudini --set /etc/cinder/cinder.conf ceph volume_driver \ cinder.volume.drivers.rbd.RBDDriver; crudini --set /etc/cinder/cinder.conf ceph volume_backend_name \ ceph; crudini --set /etc/cinder/cinder.conf ceph rbd_pool volumes; crudini --set /etc/cinder/cinder.conf ceph rbd_ceph_conf \ /etc/ceph/ceph.conf; crudini --set /etc/cinder/cinder.conf ceph rbd_flatten_volume_from_snapshot \ false; crudini --set /etc/cinder/cinder.conf ceph rbd_max_clone_depth \ 5; crudini --set /etc/cinder/cinder.conf ceph rbd_store_chunk_size \ 4; crudini --set /etc/cinder/cinder.conf ceph rados_connect_timeout \ -1; crudini --set /etc/cinder/cinder.conf ceph glance_api_version \ 2; crudini --set /etc/cinder/cinder.conf ceph rbd_user \ cinder; crudini --set /etc/cinder/cinder.conf ceph rbd_secret_uuid \ {{ ceph_uuid }}; when: inventory_hostname in groups['compute'] tags: - ceph_conf_cinder - name: restart cinder service shell: service {{ cinder_service }} restart register: result until: result.rc == 0 retries: 10 delay: 3 when: inventory_hostname in groups['compute'] tags: - ceph_conf_cinder - name: modify nova.conf for ceph shell: | sed -i 's/^\(images_type\).*/\1 = rbd/g' \ /etc/nova/nova-compute.conf; sed -i 's/^\(rbd_secret_uuid\).*/\1 = {{ ceph_uuid }}/g' \ /etc/nova/nova-compute.conf; when: inventory_hostname in groups['compute'] tags: - ceph_conf_nova - name: modify nova.conf libvirt for ceph blockinfile: dest: /etc/nova/nova-compute.conf insertafter: "libvirt" block: | images_rbd_pool = vms images_rbd_ceph_conf = /etc/ceph/ceph.conf rbd_user = cinder rbd_secret_uuid = {{ ceph_uuid }} disk_cachemodes = "network=writeback" live_migration_flag = "{{ live_migration_flag | join(',') }}" when: inventory_hostname in groups['compute'] tags: - ceph_conf_nova - name: restart nova service shell: service {{ nova_service }} restart register: result until: result.rc == 0 retries: 10 delay: 3 when: inventory_hostname in groups['compute'] tags: - ceph_conf_nova