Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 2082361

Summary: CephDashboardNetwork parameter to set ceph dashboard on the external api network.
Product: Red Hat OpenStack Reporter: Matt Flusche <mflusche>
Component: openstack-tripleo-heat-templatesAssignee: Francesco Pantano <fpantano>
Status: CLOSED NOTABUG QA Contact: Alfredo <alfrgarc>
Severity: high Docs Contact:
Priority: high    
Version: 16.2 (Train)CC: alfrgarc, dhill, duash, fpantano, jhardee, mburns, ramishra
Target Milestone: ---Keywords: Reopened, Triaged
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-01-23 14:32:22 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Matt Flusche 2022-05-05 21:23:05 UTC
Description of problem:

The docs here[1] and this bug[2] seem to indicate that setting CephDashboardNetwork will allow the setup the ceph dashboard on a configurable network, such as:

  parameter_defaults:
     CephDashboardNetwork: external

However, this doesn't seem to work and looking at the current THT it looks like the only options are to create a storage_dashboard network or the default ctlplane  

/usr/share/openstack-tripleo-heat-templates/network/service_net_map.j2.yaml:

     CephDashboardNetwork: {{ _service_nets.get('storage_dashboard', 'ctlplane') }}


[1] - https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.2/html/deploying_an_overcloud_with_containerized_red_hat_ceph/adding-ceph-dashboard

[2] - https://bugzilla.redhat.com/show_bug.cgi?id=2073417



Version-Release number of selected component (if applicable):
openstack-tripleo-heat-templates-11.6.1-2.20220116004912.el8ost.noarch (current)


How reproducible:
100%

Steps to Reproduce:
1. deploy with custom CephDashboardNetwork above


Additional info:

Comment 2 Matt Flusche 2022-05-11 20:53:31 UTC
I tested the ServiceNetMap change and that is still not enough for this change.

$ openstack stack resource show overcloud ServiceNetMap -c attributes -f json|grep ceph
      "ceph_cluster_network": "storage_mgmt",
      "ceph_dashboard_network": "external",
      "ceph_grafana_network": "storage",
      "ceph_mon_network": "storage",
      "ceph_rgw_network": "storage",
      "ceph_storage_hostname_resolve_network": "storage",
      "ceph_storage_metrics_qdr_network": "storage",

However, the vip is still on the ctlplane network:

$  grep dashboard_frontend_vip /var/lib/mistral/overcloud/ceph-ansible/group_vars/all.yml
dashboard_frontend_vip: 172.16.9.104

$ openstack subnet show ctlplane-subnet -c cidr -f value
172.16.9.0/24

From the code here it doesn't look like only ctlplane and storage_dashboard network are supported:

/usr/share/ansible/roles/tripleo-ceph-work-dir/tasks/prepare.yml

- name: set dashboard_vip variable if dashboard is enabled
  block:
    - name: set dashboard_frontend variable
      set_fact:
        ceph_ansible_group_vars_all: "{{ ceph_ansible_group_vars_all | combine({ 'dashboard_frontend_vip': dashboard_vip | default() })
                                     | combine({ 'prometheus_frontend_vip': monitoring_stack_vip | default()})
                                     | combine({ 'alertmanager_frontend_vip': monitoring_stack_vip | default()}) }}"
      vars:
        dashboard_vip: |-
          {% set dashboard_vip = control_virtual_ip %}
          {% if 'StorageDashboard' in enabled_networks %}
          {%     set dashboard_vip = net_vip_map.get('storage_dashboard') %}
          {% endif %}
          {{ dashboard_vip }}