rbd-mirror: configure pool and peer

The rbd mirror configuration was only available for non containerized
deployment and was also imcomplete.
We now enable the mirroring on the pool and add the remote peer in both
scenarios.

The default mirroring mode is set to 'pool' but can be configured via
the ceph_rbd_mirror_mode variable.

This commit also fixes an issue on the rbd mirror command if the ceph
cluster name isn't using the default value (ceph) due to a missing
--cluster parameter to the command.

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1665877

Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
(cherry picked from commit 7e5e21741e)
pull/4433/head
Dimitri Savineau 2019-09-04 14:35:20 -04:00 committed by mergify[bot]
parent 51f18f9076
commit 3fded4b8ec
4 changed files with 14 additions and 9 deletions

View File

@ -30,6 +30,7 @@ dummy:
#ceph_rbd_mirror_configure: false
#ceph_rbd_mirror_pool: ""
#ceph_rbd_mirror_mode: pool
# NOTE (leseb): the following variable needs the name of the remote cluster.
# The name of this cluster must be different than your local cluster simply

View File

@ -22,6 +22,7 @@ ceph_rbd_mirror_local_user: "admin"
ceph_rbd_mirror_configure: false
ceph_rbd_mirror_pool: ""
ceph_rbd_mirror_mode: pool
# NOTE (leseb): the following variable needs the name of the remote cluster.
# The name of this cluster must be different than your local cluster simply

View File

@ -1,4 +1,9 @@
---
- name: add a peer
command: "rbd mirror pool peer add {{ ceph_rbd_mirror_pool }} {{ ceph_rbd_mirror_remote_user }}@{{ ceph_rbd_mirror_remote_cluster }}"
- name: enable mirroring on the pool
command: "{{ container_exec_cmd | default('') }} rbd --cluster {{ cluster }} mirror pool enable {{ ceph_rbd_mirror_pool }} {{ ceph_rbd_mirror_mode }}"
changed_when: false
- name: add a mirroring peer
command: "{{ container_exec_cmd | default('') }} rbd --cluster {{ cluster }} mirror pool peer add {{ ceph_rbd_mirror_pool }} {{ ceph_rbd_mirror_remote_user }}@{{ ceph_rbd_mirror_remote_cluster }}"
changed_when: false
failed_when: false

View File

@ -8,14 +8,8 @@
when: cephx | bool
- name: tasks for non-containerized deployment
when: not containerized_deployment | bool
block:
- name: include start_rbd_mirror.yml
include_tasks: start_rbd_mirror.yml
- name: include configure_mirroring.yml
include_tasks: configure_mirroring.yml
when: ceph_rbd_mirror_configure | bool
when: not containerized_deployment | bool
- name: tasks for containerized deployment
when: containerized_deployment | bool
@ -26,3 +20,7 @@
- name: include container/main.yml
include_tasks: container/main.yml
- name: include configure_mirroring.yml
include_tasks: configure_mirroring.yml
when: ceph_rbd_mirror_configure | bool