ceph-ansible/roles/ceph-mon/tasks/ceph_keys.yml

56 lines
1.4 KiB
YAML

---
# NOTE (leseb): wait for mon discovery and quorum resolution
# the admin key is not instantanely created so we have to wait a bit
- name: wait for client.admin key exists
wait_for: path=/etc/ceph/ceph.client.admin.keyring
- name: create Ceph REST API keyring
command: >
ceph auth get-or-create client.restapi osd 'allow *' mon 'allow *' -o /etc/ceph/ceph.client.restapi.keyring
creates=/etc/ceph/ceph.client.restapi.keyring
changed_when: false
when:
cephx and
groups[restapi_group_name] is defined
- include: openstack_config.yml
when:
openstack_config and
cephx
- name: find Ceph keys
shell: ls -1 /etc/ceph/*.keyring
changed_when: false
register: ceph_keys
when: cephx
- name: set keys permissions
file: >
path={{ item }}
mode=0600
owner=root
group=root
with_items:
- "{{ ceph_keys.stdout_lines }}"
- name: copy keys to the ansible server
fetch: >
src={{ item }}
dest=fetch/{{ fsid }}/{{ item }}
flat=yes
with_items:
- "{{ ceph_keys.stdout_lines }}"
- /var/lib/ceph/bootstrap-osd/ceph.keyring
- /var/lib/ceph/bootstrap-rgw/ceph.keyring
- /var/lib/ceph/bootstrap-mds/ceph.keyring
when: cephx
- name: drop in a motd script to report status when logging in
copy: >
src=precise/92-ceph
dest=/etc/update-motd.d/92-ceph
owner=root
group=root
mode=0755
when: ansible_distribution_release == 'precise'