New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mgr/dashboard: Grafana dashboard updates and additions #24314

Merged
merged 17 commits into from Oct 19, 2018

Conversation

Projects
None yet
6 participants
@pcuzner
Contributor

pcuzner commented Sep 27, 2018

This PR tidies up some anomalies (editable flags) in some of the dashboards, and add the overview dashboards for the Hosts and OSD sections of the ceph dashboard UI

Signed-off-by: Paul Cuzner pcuzner@redhat.com

@LenzGr LenzGr requested a review from jan--f Sep 28, 2018

@b-ranto

This comment has been minimized.

Contributor

b-ranto commented Sep 28, 2018

@pcuzner Can you update these in a similar fashion that the ceph-cluster.json uses datasource? The ceph-cluster.json defines $dashboard variable in templating and then uses the variable as a datasource. The variable queries for all the available prometheus datasources. This makes the datasource configurable if there is more than a single prometheus datasource.

@jan--f

Thanks for putting this up. I'll just restate some questions I already added to http://tracker.ceph.com/issues/24998

  • fill: I notice that most graphs have fill=1. My suggestion would be to reserve fill for stacked plots, whereas non-stacked should have fill=0. This just helps distinguishing which is which on sight.

  • stacked vs not: Imho some graphs should not be stacked. E.g. RAM and CPU util make perfect sense to be stacked, network load maybe less so. For graphs with read/write or tx/rx "transform": "negative-Y" can be helpful (cp. Cluster io https://raw.githubusercontent.com/ceph/ceph/master/monitoring/grafana/screenshots/ceph-cluster1.png)

  • Personally I prefer linewidth = 1 in all plots. Again a matter of taste, however I find it helps with clarity graphs with lots of line plots.

I think this is on a good way! A discussion of the above points might help with the distillation of a "basic theme", i.e. a general preference in line width, fill settings and such.

@@ -8,5 +8,7 @@ plugin](http://docs.ceph.com/docs/master/mgr/prometheus/) and the
### Other requirements
- Mimic or newer
- Luminous 12.2.5 or newer

This comment has been minimized.

@jan--f

jan--f Sep 28, 2018

Member

I have not tested the existing cluster dashboard against a recent luminous. Maybe it would be better to create subdirectories in monitoring/grafana/?

This comment has been minimized.

@pcuzner

pcuzner Oct 1, 2018

Contributor

Thanks Jan. I'll reply in the tracker.

This comment has been minimized.

@b-ranto

b-ranto Oct 1, 2018

Contributor

As long as data exporting goes, the prometheus module in luminous should be on par with what we have in master. We might need a later version (12.2.8 probably) for it to be true though.

@pcuzner

This comment has been minimized.

Contributor

pcuzner commented Oct 1, 2018

@b-ranto Is there a label name that has been defined for this? Happy to make the change, but I'd prefer to do it just the once for each dashboard

@b-ranto

This comment has been minimized.

Contributor

b-ranto commented Oct 1, 2018

@pcuzner You only need to do it once for dashboard. You just need to define $datasource templating variable like so

https://github.com/ceph/ceph/blob/master/monitoring/grafana/dashboards/ceph-cluster.json#L1108

and then you can use datasource: $datasource everywhere else:

https://github.com/ceph/ceph/blob/master/monitoring/grafana/dashboards/ceph-cluster.json#L1023

@pcuzner

This comment has been minimized.

Contributor

pcuzner commented Oct 2, 2018

@b-ranto yes I know how templating works :) My point was what's the label name for the datasource variable that will appear on all the dashboards...do we call it "Prometheus", or simply "Datasource"

@b-ranto

This comment has been minimized.

Contributor

b-ranto commented Oct 2, 2018

@pcuzner Ah, yeah, with the definition that is currently in ceph-cluster.json it shows up as datasource but I would be fine either way (as long as it is consistent). I suppose it is falling back to the name of the template variable when you don't give it any label name.

pcuzner added some commits Aug 17, 2018

Initial grafana dashboard definitions
Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
Add Host level details dashboard
The host-details.json file provides a view of host
level metrics. The panels are arranged in two
rows;
Overview : Cpu/RAM/Network related stats
OSD Performance: OSD physical drive stats

The overview row is shown by default. Click on
the OSD Performance row to show the remaining
graphs

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
Screenshots added for all dashboards
Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
Added new Overview dashboards
These new dashboard definitions provide the high
level views for the hosts in the cluster and the
OSDs.

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
Updated requirements information
Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
Refresh of the dashboards
Fixes some minor anomalies and tested against
node_exporter 0.15 and 0.16

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
Fix linewidth issue in pools overview dashboard
Linewidth was set to two, but the idea is that
a linewidth of >1 is reserved for eye-catcher
plot lines like maximums

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
MGR/dashboard: make grafana datasource selectable
Grafana dashboard updated to use a templating
variable for the datasource

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
Document the current state of the dashboards
Signed-off-by: Paul Cuzner <pcuzner@redhat.com>

@pcuzner pcuzner force-pushed the rhcs-dashboard:dashboards branch from acd5238 to a848411 Oct 8, 2018

@a2batic

This comment has been minimized.

Member

a2batic commented Oct 16, 2018

@jan--f @b-ranto , please provide your review for the pull request.

@b-ranto

lgtm

@LenzGr LenzGr merged commit 94aefee into ceph:master Oct 19, 2018

5 checks passed

Docs: build check OK - docs built
Details
Signed-off-by all commits in this PR are signed
Details
Unmodified Submodules submodules for project are unmodified
Details
make check make check succeeded
Details
make check (arm64) make check succeeded
Details
@jan--f

This comment has been minimized.

Member

jan--f commented Oct 19, 2018

Ok...I guess were not going for or discussing a uniform style?

@LenzGr

This comment has been minimized.

Contributor

LenzGr commented Oct 19, 2018

Ok...I guess were not going for or discussing a uniform style?

My apologies @jan--f - I thought all open items had been addressed already. Let's address any remaining improvements as follow-up PRs then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment