Bug 1680108 - Heketi metrics don't work with OCP 3.11 Prometheus
Summary: Heketi metrics don't work with OCP 3.11 Prometheus
Keywords:
Status: CLOSED DUPLICATE of bug 1661218
Alias: None
Product: Red Hat Gluster Storage
Classification: Red Hat Storage
Component: CNS-deployment
Version: ocs-3.11
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
: ---
Assignee: Humble Chirammal
QA Contact: Prasanth
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-02-22 17:37 UTC by Patric Uebele
Modified: 2019-06-17 20:06 UTC (History)
14 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-05-09 20:55:48 UTC
Embargoed:


Attachments (Terms of Use)

Description Patric Uebele 2019-02-22 17:37:53 UTC
Description of problem:
The documented way to enable heketi metrics does not work with OCP 3.11, since in OCP 3.11 Prometheus works with ServiceMonitors and not with ConfigMaps as in OCP 3.10.

Version-Release number of selected component (if applicable): (OCS 3.11 & OCS 3.10) + OCP 3.11

How reproducible:
Every time

Steps to Reproduce:
1. # oc get cm prometheus -n openshift-monitoring
2.
3.

Actual results:
No resources found.
Error from server (NotFound): configmaps "prometheus" not found

Expected results:
Description of Prometheus CM

Additional info:
According to Christian Heidenreich, the proper way to enable additional metrics (including heketi's) is to deploy an additional Prometheus.

Comment 2 John Mulligan 2019-02-25 18:46:58 UTC
Hi Patric, unless the metrics endpoint Heketi provides is failing to work correctly I don't really see this as a heketi bug per-se. Heketi itself doesn't control how Prometheus finds the endpoint.  Can we find a more approprite component for this issue, like "CNS-deployment" perhaps or maybe a doc component?

Comment 3 Patric Uebele 2019-02-25 18:52:49 UTC
Hi John, thanks, you're right. CNS-deployment is better.

Comment 4 Yaniv Kaul 2019-03-10 08:49:43 UTC
Michael, who's looking into this? Metrics (and especially alerts we can have on top of them) are critical.
It's unclear to me how QE tested it.

Comment 5 Michael Adam 2019-03-11 17:26:26 UTC
(In reply to Yaniv Kaul from comment #4)
> Michael, who's looking into this?

Further below.

> Metrics (and especially alerts we can have on top of them) are critical.

Agreed.

> It's unclear to me how QE tested it.

Same here.

Here's the doc:

https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/3.11/html-single/operations_guide/#enable_vol_metrics

Heketi as such just provides a set of metrics when the `/metrics` url is queried.

From reading the description of this BZ, it seems like this is a regression in OpenShift, i.e. the way prometheus is set up has changed in openshift 3.11, and hence our instructions do not work any more. So I think we will adapt the doc steps, and this will turn into a doc BZ.

Steps:

1. Needinfo on Karthick / Kasturi to tell us whether this part has been tested for 3.11.0/3.11.1/3.11.2, and if so, how was it successful.
2. Needinfo on Humble /reassigning to figure out the correct steps for OCP 3.11 (or tell us who can take care of this).

Comment 6 RamaKasturi 2019-03-11 17:46:41 UTC
(In reply to Michael Adam from comment #5)
> (In reply to Yaniv Kaul from comment #4)
> > Michael, who's looking into this?
> 
> Further below.
> 
> > Metrics (and especially alerts we can have on top of them) are critical.
> 
> Agreed.
> 
> > It's unclear to me how QE tested it.
> 
> Same here.
> 
> Here's the doc:
> 
> https://access.redhat.com/documentation/en-us/
> red_hat_openshift_container_storage/3.11/html-single/operations_guide/
> #enable_vol_metrics
> 
> Heketi as such just provides a set of metrics when the `/metrics` url is
> queried.
> 
> From reading the description of this BZ, it seems like this is a regression
> in OpenShift, i.e. the way prometheus is set up has changed in openshift
> 3.11, and hence our instructions do not work any more. So I think we will
> adapt the doc steps, and this will turn into a doc BZ.
> 
> Steps:
> 
> 1. Needinfo on Karthick / Kasturi to tell us whether this part has been
> tested for 3.11.0/3.11.1/3.11.2, and if so, how was it successful.

We have it tested during 3.11 and 3.11.1 and have raised a doc bug to get this corrected. Below is the doc bug for the same which is getting fixed for 3.11.2

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

> 2. Needinfo on Humble /reassigning to figure out the correct steps for OCP
> 3.11 (or tell us who can take care of this).

clearing the needinfo on me and krk since i have provided the requested details.

Comment 7 RamaKasturi 2019-03-11 17:48:30 UTC
setting back the need info on humble as this was cleared with the above comment.

Comment 8 Michael Adam 2019-03-11 17:58:34 UTC
Thanks Kasturi,

So we should just close this one as a duplicate of existing the doc bug and collaborate on that one for the solution.

Patric, agreed?

Comment 9 Patric Uebele 2019-03-12 09:53:57 UTC
(In reply to Michael Adam from comment #8)
> Thanks Kasturi,
> 
> So we should just close this one as a duplicate of existing the doc bug and
> collaborate on that one for the solution.
> 
> Patric, agreed?

Hi Michael, the problem with the suggested doc approach I see is that it creates an additional ServiceMonitor in the openshift-monitoring namespace.

OpenShift docs explicitly state this as an unsupported operation (https://access.redhat.com/documentation/en-us/openshift_container_platform/3.11/html-single/configuring_clusters/#persistent-storage):

Explicitly unsupported cases include:

Creating additional ServiceMonitor objects in the openshift-monitoring namespace, thereby extending the targets the cluster monitoring Prometheus instance scrapes. This can cause collisions and load differences that cannot be accounted for, therefore the Prometheus setup can be unstable.

We'd need a properly supported solution.

Comment 10 Yaniv Kaul 2019-04-14 14:32:58 UTC
Status?


Note You need to log in before you can comment on or make changes to this bug.