mirror of https://github.com/ceph/ceph-ansible.git
73 lines
2.9 KiB
YAML
73 lines
2.9 KiB
YAML
---
|
|
- name: get keys from monitors
|
|
ceph_key:
|
|
name: client.admin
|
|
cluster: "{{ cluster }}"
|
|
output_format: plain
|
|
state: info
|
|
environment:
|
|
CEPH_CONTAINER_IMAGE: "{{ ceph_docker_registry + '/' + ceph_docker_image + ':' + ceph_docker_image_tag if containerized_deployment | bool else None }}"
|
|
CEPH_CONTAINER_BINARY: "{{ container_binary }}"
|
|
register: _admin_key
|
|
delegate_to: "{{ groups.get(mon_group_name)[0] }}"
|
|
run_once: true
|
|
when:
|
|
- cephx | bool
|
|
- copy_admin_key | bool
|
|
no_log: "{{ no_log_on_ceph_key_tasks }}"
|
|
|
|
- name: copy ceph key(s) if needed
|
|
copy:
|
|
dest: "/etc/ceph/{{ cluster }}.client.admin.keyring"
|
|
content: "{{ _admin_key.stdout + '\n' }}"
|
|
owner: "{{ ceph_uid if containerized_deployment | bool else 'ceph' }}"
|
|
group: "{{ ceph_uid if containerized_deployment | bool else 'ceph' }}"
|
|
mode: "{{ ceph_keyring_permissions }}"
|
|
when:
|
|
- cephx | bool
|
|
- copy_admin_key | bool
|
|
no_log: "{{ no_log_on_ceph_key_tasks }}"
|
|
|
|
- name: add mgr ip address to trusted list with dashboard - ipv4
|
|
set_fact:
|
|
trusted_ip_list: '{{ trusted_ip_list | default("") }}{{ "," if trusted_ip_list is defined else "" }}{{ hostvars[item]["ansible_facts"]["all_ipv4_addresses"] | ips_in_ranges(public_network.split(",")) | first }}'
|
|
with_items: '{{ groups[mgr_group_name] | default(groups[mon_group_name]) }}'
|
|
when:
|
|
- dashboard_enabled | bool
|
|
- ip_version == 'ipv4'
|
|
|
|
- name: add mgr ip address to trusted list with dashboard - ipv6
|
|
set_fact:
|
|
trusted_ip_list: '{{ trusted_ip_list | default("") }}{{ "," if trusted_ip_list is defined else "" }}{{ hostvars[item]["ansible_facts"]["all_ipv6_addresses"] | ips_in_ranges(public_network.split(",")) | last }}'
|
|
with_items: '{{ groups[mgr_group_name] | default(groups[mon_group_name]) }}'
|
|
when:
|
|
- dashboard_enabled | bool
|
|
- ip_version == 'ipv6'
|
|
|
|
- name: deploy gateway settings, used by the ceph_iscsi_config modules
|
|
config_template:
|
|
src: "{{ role_path }}/templates/iscsi-gateway.cfg.j2"
|
|
dest: /etc/ceph/iscsi-gateway.cfg
|
|
config_type: ini
|
|
config_overrides: '{{ iscsi_conf_overrides }}'
|
|
mode: "0600"
|
|
notify: restart ceph rbd-target-api-gw
|
|
|
|
- name: set_fact container_exec_cmd
|
|
set_fact:
|
|
container_exec_cmd: "{{ container_binary }} exec ceph-mon-{{ hostvars[groups[mon_group_name][0]]['ansible_facts']['hostname'] }}"
|
|
delegate_to: "{{ groups[mon_group_name][0] }}"
|
|
when: containerized_deployment | bool
|
|
|
|
- name: create iscsi pool
|
|
ceph_pool:
|
|
name: "{{ iscsi_pool_name }}"
|
|
cluster: "{{ cluster }}"
|
|
size: "{{ iscsi_pool_size | default(omit) }}"
|
|
application: "rbd"
|
|
run_once: true
|
|
delegate_to: "{{ groups[mon_group_name][0] }}"
|
|
environment:
|
|
CEPH_CONTAINER_IMAGE: "{{ ceph_docker_registry + '/' + ceph_docker_image + ':' + ceph_docker_image_tag if containerized_deployment | bool else None }}"
|
|
CEPH_CONTAINER_BINARY: "{{ container_binary }}"
|