ceph-ansible/roles/ceph-common/tasks/main.yml

129 lines
3.6 KiB
YAML
Raw Normal View History

---
- include: ./checks/check_system.yml
- include: ./checks/check_mandatory_vars.yml
- include: ./checks/check_firewall.yml
- include: ./misc/system_tuning.yml
when: osd_group_name in group_names
2014-09-05 03:14:11 +08:00
- include: ./pre_requisites/prerequisite_ice.yml
when: ceph_stable_ice
- include: ./pre_requisites/prerequisite_rh_storage_iso_install.yml
when:
ceph_stable_rh_storage and
ceph_stable_rh_storage_iso_install
- include: ./pre_requisites/prerequisite_rh_storage_cdn_install.yml
when:
ceph_stable_rh_storage and
ceph_stable_rh_storage_cdn_install
- include: ./installs/install_on_redhat.yml
when: ansible_os_family == 'RedHat'
- include: ./installs/install_on_debian.yml
when: ansible_os_family == 'Debian'
- include: ./installs/install_rgw_on_redhat.yml
when:
ansible_os_family == 'RedHat' and
radosgw_frontend == 'apache' and
rgw_group_name in group_names
- include: ./installs/install_rgw_on_debian.yml
when:
ansible_os_family == 'Debian' and
radosgw_frontend == 'apache' and
rgw_group_name in group_names
# NOTE (leseb): be careful with the following
# somehow the YAML syntax using "is_ceph_infernalis: {{"
# does NOT work, so we keep this syntax styling...
- set_fact:
is_ceph_infernalis={{ (ceph_stable and ceph_stable_release not in ceph_stable_releases) or (ceph_stable_rh_storage and (rh_storage_version.stdout | version_compare('0.94', '>'))) }}
- name: check for a ceph socket
shell: "stat /var/run/ceph/*.asok > /dev/null 2>&1"
changed_when: false
failed_when: false
register: socket
- name: check for a rados gateway socket
shell: "stat {{ rbd_client_admin_socket_path }}*.asok > /dev/null 2>&1"
changed_when: false
failed_when: false
register: socketrgw
- name: create a local fetch directory if it does not exist
local_action: file path={{ fetch_directory }} state=directory
changed_when: false
sudo: false
run_once: true
- name: generate cluster uuid
local_action: shell uuidgen | tee {{ fetch_directory }}/ceph_cluster_uuid.conf
2015-09-04 00:18:53 +08:00
creates="{{ fetch_directory }}/ceph_cluster_uuid.conf"
register: cluster_uuid
sudo: false
- name: read cluster uuid if it already exists
local_action: command cat {{ fetch_directory }}/ceph_cluster_uuid.conf
2015-09-04 00:18:53 +08:00
removes="{{ fetch_directory }}/ceph_cluster_uuid.conf"
changed_when: false
register: cluster_uuid
sudo: false
- name: create ceph conf directory
file:
path: /etc/ceph
state: directory
owner: "{{ conf_directory_owner }}"
group: "{{ conf_directory_group }}"
mode: "{{ conf_directory_mode }}"
- name: generate ceph configuration file
config_template:
2015-09-04 00:18:53 +08:00
src: ceph.conf.j2
dest: /etc/ceph/ceph.conf
owner: "{{ conf_file_owner }}"
group: "{{ conf_file_group }}"
mode: "{{ conf_file_mode }}"
config_overrides: "{{ ceph_conf_overrides }}"
config_type: ini
notify:
- restart ceph mons
- restart ceph mons on ubuntu
- restart ceph mons with systemd
- restart ceph osds
- restart ceph osds on ubuntu
- restart ceph osds with systemd
- restart ceph mdss
- restart ceph mdss on ubuntu
- restart ceph mdss with systemd
- restart ceph rgws
- restart ceph rgws on ubuntu
- restart ceph rgws on red hat
- restart ceph rgws with systemd
- name: create rbd client directory (before infernalis)
2015-09-04 00:18:53 +08:00
file:
path: "{{ rbd_client_admin_socket_path }}"
state: directory
owner: root
group: root
mode: 0644
when: not is_ceph_infernalis
- name: create rbd client directory (for infernalis or after)
file:
path: "{{ rbd_client_admin_socket_path }}"
state: directory
owner: ceph
group: ceph
mode: 0770
when: is_ceph_infernalis