Bug 1984193

Summary: [RFE] Provide configuration to collect ceph mon metrics via collectd
Product: Red Hat OpenStack Reporter: Leif Madsen <lmadsen>
Component: puppet-tripleoAssignee: OSP Team <rhos-maint>
Status: CLOSED WONTFIX QA Contact: Leonid Natapov <lnatapov>
Severity: high Docs Contact: Joanne O'Flynn <joflynn>
Priority: medium    
Version: 16.2 (Train)CC: jjoyce, jschluet, mrunge, slinaber, tvignaud
Target Milestone: ---Keywords: FutureFeature, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-12-16 16:51:42 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:
Bug Depends On: 2073540    
Bug Blocks: 1702811, 1944792    

Description Leif Madsen 2021-07-20 22:56:27 UTC
Description of problem:

Provide configuration compatible with OSP16.1 that allows for the enablement of the ceph plugin on controllers where ceph mons are scheduled.


Version-Release number of selected component (if applicable):

OSP16.1+
STF 1.3+


Actual results:

When deploying collectd for ceph monitoring, the ceph plugin is only deployed on ceph nodes (CephStorage role). In order to be able to get information about the ceph cluster besides OSD information, we need to be able to enable the ceph plugin on controllers where Ceph mons are deployed.

Expected results:

Collectd ceph plugin should be enabled on controllers and collectd pointed at the ceph-mon.controller-X.asok socket.


Additional info:

Something like this...

ControllerExtraConfig:
   collectd::plugin::ceph::daemons:
      - ceph-mon.controller-0
      - ceph-mon.controller-1
      - ceph-mon.controller-2

Also need to figure out how to enable the `ceph` plugin on controllers in addition to the ceph storage nodes.

Resulting configuration:

# Generated by Puppet
<LoadPlugin ceph>
  Globals false
</LoadPlugin>

<Plugin ceph>
  LongRunAvgLatency false
  ConvertSpecialMetricTypes true

  <Daemon "ceph-mon.controller-0">
    SocketPath "/var/run/ceph/ceph-mon.controller-0.asok"
  </Daemon>
  <Daemon "ceph-mon.controller-1">
    SocketPath "/var/run/ceph/ceph-mon.controller-1.asok"
  </Daemon>
  <Daemon "ceph-mon.controller-2">
    SocketPath "/var/run/ceph/ceph-mon.controller-2.asok"
  </Daemon>
</Plugin>

Comment 1 Leif Madsen 2021-09-30 18:27:46 UTC
I think this is going to be a change in the logic for puppet or THT, but I want to investigate if there is an override / documentation method we can use in the meantime.

Comment 4 Leif Madsen 2022-06-16 16:53:04 UTC
I believe this needs to be dealt with on the deployment of OSP, so I'm changing the project to reflect that.