2016-05-06 02:20:03 +08:00
|
|
|
---
|
2017-10-09 23:10:39 +08:00
|
|
|
- name: install redhat nfs-ganesha-ceph package
|
|
|
|
package:
|
|
|
|
name: nfs-ganesha-ceph
|
|
|
|
when:
|
|
|
|
- nfs_file_gw
|
|
|
|
- ansible_os_family == 'RedHat'
|
|
|
|
|
|
|
|
- name: install nfs cephfs gateway
|
|
|
|
package:
|
|
|
|
name: nfs-ganesha-ceph
|
|
|
|
when:
|
|
|
|
- nfs_file_gw
|
|
|
|
- ansible_os_family == 'RedHat'
|
|
|
|
|
|
|
|
- name: install redhat nfs-ganesha-rgw and ceph-radosgw packages
|
|
|
|
package:
|
|
|
|
name: "{{ item }}"
|
|
|
|
with_items:
|
|
|
|
- nfs-ganesha-rgw
|
|
|
|
- ceph-radosgw
|
|
|
|
when:
|
|
|
|
- nfs_obj_gw
|
|
|
|
- ansible_os_family == 'RedHat'
|
|
|
|
|
|
|
|
- name: install jemalloc for debian
|
|
|
|
apt:
|
|
|
|
name: libjemalloc1
|
|
|
|
state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
|
|
|
|
update_cache: yes
|
|
|
|
when:
|
|
|
|
- (ceph_origin == 'repository' or ceph_origin == 'distro')
|
|
|
|
- ceph_repository != 'rhcs'
|
|
|
|
- ansible_os_family == 'Debian'
|
|
|
|
|
|
|
|
# debian installation
|
|
|
|
- name: install nfs cephfs gateway
|
|
|
|
package:
|
|
|
|
name: nfs-ganesha-ceph
|
|
|
|
when:
|
|
|
|
- (ceph_origin == 'repository' or ceph_origin == 'distro')
|
|
|
|
- ceph_repository != 'rhcs'
|
|
|
|
- ansible_os_family == 'Debian'
|
|
|
|
- nfs_file_gw
|
|
|
|
|
|
|
|
- name: install nfs rgw gateway
|
|
|
|
package:
|
|
|
|
name: "{{ item }}"
|
|
|
|
with_items:
|
|
|
|
- nfs-ganesha-rgw
|
|
|
|
- radosgw
|
|
|
|
when:
|
|
|
|
- (ceph_origin == 'repository' or ceph_origin == 'distro')
|
|
|
|
- ceph_repository != 'rhcs'
|
|
|
|
- ansible_os_family == 'Debian'
|
|
|
|
- nfs_obj_gw
|
|
|
|
|
|
|
|
# debian_rhcs installation
|
|
|
|
- name: install red hat storage nfs gateway for debian
|
|
|
|
apt:
|
|
|
|
name: nfs-ganesha
|
|
|
|
state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
|
|
|
|
when:
|
|
|
|
- (ceph_origin == 'repository' or ceph_origin == 'distro')
|
|
|
|
- ceph_repository == 'rhcs'
|
|
|
|
|
|
|
|
- name: install red hat storage nfs file gateway
|
|
|
|
apt:
|
|
|
|
name: nfs-ganesha-ceph
|
|
|
|
state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
|
|
|
|
when:
|
|
|
|
- (ceph_origin == 'repository' or ceph_origin == 'distro')
|
|
|
|
- ceph_repository == 'rhcs'
|
|
|
|
- nfs_file_gw
|
|
|
|
|
|
|
|
- name: install red hat storage nfs obj gateway
|
|
|
|
apt:
|
|
|
|
name: nfs-ganesha-rgw
|
|
|
|
state: "{{ (upgrade_ceph_packages|bool) | ternary('latest','present') }}"
|
|
|
|
when:
|
|
|
|
- (ceph_origin == 'repository' or ceph_origin == 'distro')
|
|
|
|
- ceph_repository == 'rhcs'
|
|
|
|
- nfs_obj_gw
|
|
|
|
|
2017-09-27 05:16:43 +08:00
|
|
|
# NOTE (leseb): we use root:ceph for permissions since ganesha
|
|
|
|
# does not have the right selinux context to read ceph directories.
|
2017-09-19 22:19:14 +08:00
|
|
|
- name: create rados gateway and ganesha directories
|
2017-09-11 11:34:36 +08:00
|
|
|
file:
|
|
|
|
path: "{{ item }}"
|
|
|
|
state: directory
|
|
|
|
owner: "ceph"
|
|
|
|
group: "ceph"
|
|
|
|
mode: "0755"
|
|
|
|
with_items:
|
|
|
|
- /var/lib/ceph/bootstrap-rgw
|
|
|
|
- /var/lib/ceph/radosgw
|
|
|
|
- /var/lib/ceph/radosgw/{{ cluster }}-rgw.{{ ansible_hostname }}
|
|
|
|
- "{{ rbd_client_admin_socket_path }}"
|
2017-09-27 05:16:43 +08:00
|
|
|
- /var/log/ceph
|
|
|
|
- /var/run/ceph/
|
2017-09-11 11:34:36 +08:00
|
|
|
when:
|
|
|
|
- nfs_obj_gw
|
|
|
|
|
|
|
|
- name: copy rados gateway bootstrap key
|
|
|
|
copy:
|
|
|
|
src: "{{ fetch_directory }}/{{ fsid }}{{ item.name }}"
|
|
|
|
dest: "{{ item.name }}"
|
|
|
|
owner: "ceph"
|
|
|
|
group: "ceph"
|
|
|
|
mode: "0600"
|
|
|
|
with_items:
|
|
|
|
- { name: "/var/lib/ceph/bootstrap-rgw/{{ cluster }}.keyring", copy_key: true }
|
|
|
|
- { name: "/etc/ceph/{{ cluster }}.client.admin.keyring", copy_key: "{{ copy_admin_key }}" }
|
|
|
|
when:
|
|
|
|
- nfs_obj_gw
|
|
|
|
- cephx
|
|
|
|
- item.copy_key|bool
|
|
|
|
|
|
|
|
- name: create rados gateway keyring
|
|
|
|
command: ceph --cluster {{ cluster }} --name client.bootstrap-rgw --keyring /var/lib/ceph/bootstrap-rgw/{{ cluster }}.keyring auth get-or-create client.rgw.{{ ansible_hostname }} osd 'allow rwx' mon 'allow rw' -o /var/lib/ceph/radosgw/{{ cluster }}-rgw.{{ ansible_hostname }}/keyring
|
|
|
|
args:
|
|
|
|
creates: /var/lib/ceph/radosgw/{{ cluster }}-rgw.{{ ansible_hostname }}/keyring
|
|
|
|
changed_when: false
|
|
|
|
when:
|
|
|
|
- nfs_obj_gw
|
|
|
|
- cephx
|
|
|
|
|
|
|
|
- name: set rados gateway key permissions
|
|
|
|
file:
|
|
|
|
path: /var/lib/ceph/radosgw/{{ cluster }}-rgw.{{ ansible_hostname }}/keyring
|
|
|
|
owner: "ceph"
|
|
|
|
group: "ceph"
|
|
|
|
mode: "0600"
|
2017-09-15 06:48:53 +08:00
|
|
|
when:
|
2017-10-07 03:21:35 +08:00
|
|
|
- nfs_obj_gw
|
2017-09-15 06:48:53 +08:00
|
|
|
- cephx
|
2017-09-11 11:34:36 +08:00
|
|
|
|
2017-09-20 18:35:00 +08:00
|
|
|
- name: change ownership on /var/log/ganesha
|
|
|
|
file:
|
2017-09-27 05:16:43 +08:00
|
|
|
path: /var/log/ganesha
|
|
|
|
owner: "root"
|
|
|
|
group: "root"
|
|
|
|
mode: "0755"
|