From d617626ef4b0636cf19a46ce809514b8e79e9725 Mon Sep 17 00:00:00 2001 From: Dimitri Savineau Date: Wed, 2 Oct 2019 14:15:45 -0400 Subject: [PATCH] ceph-dashboard: remove rgw api host,port,scheme We don't need to have dedicated variables for the RGW integration into the Ceph Dashboard and need to be manually filled. Instead we can use the current values from the RGW nodes by using the IP and port from the first RGW instance of the first RGW node via the radosgw_address and radosgw_frontend_port variables. We don't need to specify all RGW nodes, this will be done automatically with one node. The RGW api scheme is using the radosgw_frontend_ssl_certificate variable to determine if the value is http or https. This variable is also reuse as a condition for the ssl verify task. Signed-off-by: Dimitri Savineau (cherry picked from commit b9e93ad7a60772e953c3d88346bf94db4131dcf6) --- group_vars/all.yml.sample | 3 --- group_vars/rhcs.yml.sample | 3 --- roles/ceph-dashboard/tasks/configure_dashboard.yml | 13 ++++++------- roles/ceph-defaults/defaults/main.yml | 3 --- 4 files changed, 6 insertions(+), 16 deletions(-) diff --git a/group_vars/all.yml.sample b/group_vars/all.yml.sample index c856e6650..8e5fa4534 100644 --- a/group_vars/all.yml.sample +++ b/group_vars/all.yml.sample @@ -711,9 +711,6 @@ dummy: #dashboard_crt: '' #dashboard_key: '' #dashboard_rgw_api_user_id: ceph-dashboard -#dashboard_rgw_api_host: '' -#dashboard_rgw_api_port: '' -#dashboard_rgw_api_scheme: '' #dashboard_rgw_api_admin_resource: '' #dashboard_rgw_api_no_ssl_verify: False #node_exporter_container_image: prom/node-exporter:latest diff --git a/group_vars/rhcs.yml.sample b/group_vars/rhcs.yml.sample index b2e046b2b..78365fe4f 100644 --- a/group_vars/rhcs.yml.sample +++ b/group_vars/rhcs.yml.sample @@ -711,9 +711,6 @@ ceph_docker_registry_auth: true #dashboard_crt: '' #dashboard_key: '' #dashboard_rgw_api_user_id: ceph-dashboard -#dashboard_rgw_api_host: '' -#dashboard_rgw_api_port: '' -#dashboard_rgw_api_scheme: '' #dashboard_rgw_api_admin_resource: '' #dashboard_rgw_api_no_ssl_verify: False node_exporter_container_image: registry.redhat.io/openshift4/ose-prometheus-node-exporter:v4.1 diff --git a/roles/ceph-dashboard/tasks/configure_dashboard.yml b/roles/ceph-dashboard/tasks/configure_dashboard.yml index bf249d5ce..9fb96f017 100644 --- a/roles/ceph-dashboard/tasks/configure_dashboard.yml +++ b/roles/ceph-dashboard/tasks/configure_dashboard.yml @@ -147,25 +147,22 @@ changed_when: false - name: set the rgw host - command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} dashboard set-rgw-api-host {{ dashboard_rgw_api_host }}" + command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} dashboard set-rgw-api-host {{ hostvars[groups[rgw_group_name][0]]['rgw_instances'][0]['radosgw_address'] }}" changed_when: false delegate_to: "{{ groups[mon_group_name][0] }}" run_once: true - when: dashboard_rgw_api_host != '' - name: set the rgw port - command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} dashboard set-rgw-api-port {{ dashboard_rgw_api_port }}" + command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} dashboard set-rgw-api-port {{ hostvars[groups[rgw_group_name][0]]['rgw_instances'][0]['radosgw_frontend_port'] }}" changed_when: false delegate_to: "{{ groups[mon_group_name][0] }}" run_once: true - when: dashboard_rgw_api_port != '' - name: set the rgw scheme - command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} dashboard set-rgw-api-scheme {{ dashboard_rgw_api_scheme }}" + command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} dashboard set-rgw-api-scheme {{ 'https' if radosgw_frontend_ssl_certificate else 'http' }}" changed_when: false delegate_to: "{{ groups[mon_group_name][0] }}" run_once: true - when: dashboard_rgw_api_scheme != '' - name: set the rgw admin resource command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} dashboard set-rgw-api-admin-resource {{ dashboard_rgw_api_admin_resource }}" @@ -179,7 +176,9 @@ changed_when: false delegate_to: "{{ groups[mon_group_name][0] }}" run_once: true - when: dashboard_rgw_api_no_ssl_verify | bool + when: + - dashboard_rgw_api_no_ssl_verify | bool + - radosgw_frontend_ssl_certificate | length > 0 - name: disable mgr dashboard module (restart) command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} mgr module disable dashboard" diff --git a/roles/ceph-defaults/defaults/main.yml b/roles/ceph-defaults/defaults/main.yml index 3b452ff51..5d68b7efc 100644 --- a/roles/ceph-defaults/defaults/main.yml +++ b/roles/ceph-defaults/defaults/main.yml @@ -703,9 +703,6 @@ dashboard_admin_password: admin dashboard_crt: '' dashboard_key: '' dashboard_rgw_api_user_id: ceph-dashboard -dashboard_rgw_api_host: '' -dashboard_rgw_api_port: '' -dashboard_rgw_api_scheme: '' dashboard_rgw_api_admin_resource: '' dashboard_rgw_api_no_ssl_verify: False node_exporter_container_image: prom/node-exporter:latest