# NOTE(srwilkers): This overrides file provides a reference for dashboards for # the overall state of ceph clusters, ceph osds in those clusters, and the # status of ceph pools for those clusters conf: dashboards: ceph_cluster: __inputs: - name: DS_PROMETHEUS label: Prometheus description: Prometheus.IO type: datasource pluginId: prometheus pluginName: Prometheus __requires: - type: panel id: singlestat name: Singlestat version: '' - type: panel id: graph name: Graph version: '' - type: grafana id: grafana name: Grafana version: 3.1.1 - type: datasource id: prometheus name: Prometheus version: 1.0.0 id: title: Ceph - Cluster tags: - ceph - cluster style: dark timezone: browser editable: true hideControls: false sharedCrosshair: false rows: - collapse: false editable: true height: 150px panels: - cacheTimeout: colorBackground: false colorValue: true colors: - rgba(50, 172, 45, 0.97) - rgba(237, 129, 40, 0.89) - rgba(245, 54, 54, 0.9) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 21 interval: 1m isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 2 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: ceph_health_status{application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 refId: A step: 60 thresholds: '1,1' title: Status transparent: false type: singlestat valueFontSize: 100% valueMaps: - op: "=" text: N/A value: 'null' - op: "=" text: HEALTHY value: '0' - op: "=" text: WARNING value: '1' - op: "=" text: CRITICAL value: '2' valueName: current - cacheTimeout: colorBackground: false colorValue: false colors: - rgba(245, 54, 54, 0.9) - rgba(237, 129, 40, 0.89) - rgba(50, 172, 45, 0.97) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 22 interval: 1m isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 2 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: true lineColor: rgb(31, 120, 193) show: true targets: - expr: count(ceph_pool_max_avail{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: '' title: Pools transparent: false type: singlestat valueFontSize: 100% valueMaps: - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: false colorValue: false colors: - rgba(50, 172, 45, 0.97) - rgba(237, 129, 40, 0.89) - rgba(245, 54, 54, 0.9) datasource: "${DS_PROMETHEUS}" editable: true error: false format: bytes gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 33 interval: 1m isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 2 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: true lineColor: rgb(31, 120, 193) show: true targets: - expr: ceph_cluster_total_bytes{application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: 0.025,0.1 title: Cluster Capacity transparent: false type: singlestat valueFontSize: 100% valueMaps: - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: false colorValue: false colors: - rgba(50, 172, 45, 0.97) - rgba(237, 129, 40, 0.89) - rgba(245, 54, 54, 0.9) datasource: "${DS_PROMETHEUS}" editable: true error: false format: bytes gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 34 interval: 1m isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 2 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: true lineColor: rgb(31, 120, 193) show: true targets: - expr: ceph_cluster_total_used_bytes{application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: 0.025,0.1 title: Used Capacity transparent: false type: singlestat valueFontSize: 100% valueMaps: - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: false colorValue: true colors: - rgba(50, 172, 45, 0.97) - rgba(237, 129, 40, 0.89) - rgba(245, 54, 54, 0.9) datasource: "${DS_PROMETHEUS}" editable: true error: false format: percentunit gauge: maxValue: 100 minValue: 0 show: true thresholdLabels: false thresholdMarkers: true id: 23 interval: 1m isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 2 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: true lineColor: rgb(31, 120, 193) show: false targets: - expr: ceph_cluster_total_used_bytes/ceph_cluster_total_bytes{application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: '70,80' title: Current Utilization transparent: false type: singlestat valueFontSize: 100% valueMaps: - op: "=" text: N/A value: 'null' valueName: current title: New row - collapse: false editable: true height: 100px panels: - cacheTimeout: colorBackground: false colorValue: false colors: - rgba(245, 54, 54, 0.9) - rgba(237, 129, 40, 0.89) - rgba(50, 172, 45, 0.97) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 26 interval: isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 1 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: sum(ceph_osd_in{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: '' title: OSDs IN type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: true colorValue: false colors: - rgba(50, 172, 45, 0.97) - rgba(237, 40, 40, 0.89) - rgba(245, 54, 54, 0.9) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 27 interval: isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 1 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: sum(ceph_osd_metadata{application="ceph",release_group="$ceph_cluster"}) - sum(ceph_osd_in{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: '1,1' title: OSDs OUT type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: false colorValue: false colors: - rgba(245, 54, 54, 0.9) - rgba(237, 129, 40, 0.89) - rgba(50, 172, 45, 0.97) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 28 interval: isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 1 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: sum(ceph_osd_up{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: '' title: OSDs UP type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: true colorValue: false colors: - rgba(50, 172, 45, 0.97) - rgba(237, 40, 40, 0.89) - rgba(245, 54, 54, 0.9) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 29 interval: isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 1 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: sum(ceph_osd_metadata{application="ceph",release_group="$ceph_cluster"}) - sum(ceph_osd_up{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: '1,1' title: OSDs DOWN type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: false colorValue: true colors: - rgba(50, 172, 45, 0.97) - rgba(237, 129, 40, 0.89) - rgba(245, 54, 54, 0.9) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 30 interval: isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 2 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: true lineColor: rgb(31, 120, 193) show: true targets: - expr: avg(ceph_osd_numpg{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: '250,300' title: Average PGs per OSD type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: N/A value: 'null' valueName: current title: New row - collapse: false editable: true height: 250px panels: - aliasColors: Available: "#EAB839" Total Capacity: "#447EBC" Used: "#BF1B00" total_avail: "#6ED0E0" total_space: "#7EB26D" total_used: "#890F02" bars: false datasource: "${DS_PROMETHEUS}" editable: true error: false fill: 4 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) height: '300' id: 1 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true show: true total: false values: true lines: true linewidth: 0 links: [] minSpan: nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: - alias: Total Capacity fill: 0 linewidth: 3 stack: false span: 4 stack: true steppedLine: false targets: - expr: ceph_cluster_total_bytes{application="ceph",release_group="$ceph_cluster"} - ceph_cluster_total_used_bytes{application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Available refId: A step: 60 - expr: ceph_cluster_total_used_bytes interval: "$interval" intervalFactor: 1 legendFormat: Used refId: B step: 60 - expr: ceph_cluster_total_bytes interval: "$interval" intervalFactor: 1 legendFormat: Total Capacity refId: C step: 60 timeFrom: timeShift: title: Capacity tooltip: msResolution: false shared: true sort: 2 value_type: individual type: graph xaxis: show: true yaxes: - format: bytes label: logBase: 1 max: min: show: true - format: short label: logBase: 1 max: min: show: true - aliasColors: Total Capacity: "#7EB26D" Used: "#BF1B00" total_avail: "#6ED0E0" total_space: "#7EB26D" total_used: "#890F02" bars: false datasource: "${DS_PROMETHEUS}" decimals: 0 editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) thresholdLine: false height: '300' id: 3 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true show: true total: false values: true lines: true linewidth: 2 links: [] minSpan: nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] span: 4 stack: true steppedLine: false targets: - expr: sum(ceph_osd_op_w{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Write refId: A step: 60 - expr: sum(ceph_osd_op_r{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Read refId: B step: 60 timeFrom: timeShift: title: IOPS tooltip: msResolution: true shared: true sort: 2 value_type: individual type: graph xaxis: show: true yaxes: - format: none label: '' logBase: 1 max: min: 0 show: true - format: short label: logBase: 1 max: min: 0 show: true - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) height: '300' id: 7 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true show: true total: false values: true lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] span: 4 stack: true steppedLine: false targets: - expr: sum(ceph_osd_op_in_bytes{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Write refId: A step: 60 - expr: sum(ceph_osd_op_out_bytes{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Read refId: B step: 60 timeFrom: timeShift: title: Throughput tooltip: msResolution: false shared: true sort: 2 value_type: individual type: graph xaxis: show: true yaxes: - format: Bps label: logBase: 1 max: min: 0 show: true - format: short label: logBase: 1 max: min: 0 show: true repeat: showTitle: true title: CLUSTER - collapse: false editable: true height: 250px panels: - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) id: 18 isNew: true legend: alignAsTable: true avg: true current: true max: false min: false rightSide: true show: true total: false values: true lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: - alias: "/^Total.*$/" stack: false span: 12 stack: true steppedLine: false targets: - expr: ceph_cluster_total_objects{application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Total refId: A step: 60 timeFrom: timeShift: title: Objects in the Cluster tooltip: msResolution: false shared: true sort: 1 value_type: individual type: graph xaxis: show: true yaxes: - format: short label: logBase: 1 max: min: show: true - format: short label: logBase: 1 max: min: show: true - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) id: 19 isNew: true legend: alignAsTable: true avg: true current: true max: false min: false rightSide: true show: true total: false values: true lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: - alias: "/^Total.*$/" stack: false span: 6 stack: true steppedLine: false targets: - expr: sum(ceph_osd_numpg{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Total refId: A step: 60 - expr: sum(ceph_pg_active{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Active refId: B step: 60 - expr: sum(ceph_pg_inconsistent{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Inconsistent refId: C step: 60 - expr: sum(ceph_pg_creating{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Creating refId: D step: 60 - expr: sum(ceph_pg_recovering{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Recovering refId: E step: 60 - expr: sum(ceph_pg_down{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Down refId: F step: 60 timeFrom: timeShift: title: PGs tooltip: msResolution: false shared: true sort: 1 value_type: individual type: graph xaxis: show: true yaxes: - format: short label: logBase: 1 max: min: 0 show: true - format: short label: logBase: 1 max: min: show: true - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) id: 20 isNew: true legend: alignAsTable: true avg: true current: true max: false min: false rightSide: true show: true total: false values: true lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: - alias: "/^Total.*$/" stack: false span: 6 stack: true steppedLine: false targets: - expr: sum(ceph_pg_degraded{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Degraded refId: A step: 60 - expr: sum(ceph_pg_stale{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Stale refId: B step: 60 - expr: sum(ceph_pg_undersized{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Undersized refId: C step: 60 timeFrom: timeShift: title: Stuck PGs tooltip: msResolution: false shared: true sort: 1 value_type: individual type: graph xaxis: show: true yaxes: - format: short label: logBase: 1 max: min: 0 show: true - format: short label: logBase: 1 max: min: show: true title: New row time: from: now-1h to: now timepicker: refresh_intervals: - 5s - 10s - 30s - 1m - 5m - 15m - 30m - 1h - 2h - 1d time_options: - 5m - 15m - 1h - 6h - 12h - 24h - 2d - 7d - 30d templating: list: - current: text: Prometheus value: Prometheus hide: 0 label: Prometheus datasource name: DS_PROMETHEUS options: [] query: prometheus refresh: 1 regex: '' type: datasource - current: {} hide: 0 label: Cluster name: ceph_cluster options: [] type: query query: label_values(ceph_health_status, release_group) refresh: 1 sort: 2 datasource: "${DS_PROMETHEUS}" - auto: true auto_count: 10 auto_min: 1m current: tags: [] text: 1m value: 1m datasource: hide: 0 includeAll: false label: Interval multi: false name: interval options: - selected: false text: auto value: "$__auto_interval" - selected: true text: 1m value: 1m - selected: false text: 10m value: 10m - selected: false text: 30m value: 30m - selected: false text: 1h value: 1h - selected: false text: 6h value: 6h - selected: false text: 12h value: 12h - selected: false text: 1d value: 1d - selected: false text: 7d value: 7d - selected: false text: 14d value: 14d - selected: false text: 30d value: 30d query: 1m,10m,30m,1h,6h,12h,1d,7d,14d,30d refresh: 0 type: interval annotations: list: [] refresh: 5m schemaVersion: 12 version: 26 links: [] gnetId: 917 description: "Ceph Cluster overview.\r\n" ceph_osd: __inputs: - name: DS_PROMETHEUS label: Prometheus description: Prometheus.IO type: datasource pluginId: prometheus pluginName: Prometheus __requires: - type: panel id: singlestat name: Singlestat version: '' - type: panel id: graph name: Graph version: '' - type: grafana id: grafana name: Grafana version: 3.1.1 - type: datasource id: prometheus name: Prometheus version: 1.0.0 id: title: Ceph - OSD tags: - ceph - osd style: dark timezone: browser editable: true hideControls: false sharedCrosshair: false rows: - collapse: false editable: true height: 100px panels: - cacheTimeout: colorBackground: true colorValue: false colors: - rgba(245, 54, 54, 0.9) - rgba(237, 40, 40, 0.89) - rgba(50, 172, 45, 0.97) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 6 interval: isNew: true links: [] mappingType: 2 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' - from: '0' text: DOWN to: '0.99' - from: '0.99' text: UP to: '1' span: 1 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: ceph_osd_up{ceph_daemon="$osd",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 refId: A step: 60 thresholds: '0,1' timeFrom: title: Status transparent: false type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: DOWN value: '0' - op: "=" text: UP value: '1' - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: true colorValue: false colors: - rgba(245, 54, 54, 0.9) - rgba(237, 40, 40, 0.89) - rgba(50, 172, 45, 0.97) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 8 interval: isNew: true links: [] mappingType: 2 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' - from: '0' text: OUT to: '0.99' - from: '0.99' text: IN to: '1' span: 1 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: ceph_osd_in{ceph_daemon="$osd",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 refId: A step: 60 thresholds: '0,1' timeFrom: title: Available transparent: false type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: DOWN value: '0' - op: "=" text: UP value: '1' - op: "=" text: N/A value: 'null' valueName: current - cacheTimeout: colorBackground: false colorValue: false colors: - rgba(245, 54, 54, 0.9) - rgba(237, 129, 40, 0.89) - rgba(50, 172, 45, 0.97) datasource: "${DS_PROMETHEUS}" editable: true error: false format: none gauge: maxValue: 100 minValue: 0 show: false thresholdLabels: false thresholdMarkers: true id: 10 interval: isNew: true links: [] mappingType: 2 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 1 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: count(ceph_osd_metadata{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 refId: A step: 60 thresholds: '0,1' timeFrom: title: Total OSDs transparent: false type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: DOWN value: '0' - op: "=" text: UP value: '1' - op: "=" text: N/A value: 'null' valueName: current title: New row - collapse: false editable: true height: 250px panels: - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" decimals: 2 editable: true error: false fill: 1 grid: threshold1: 250 threshold1Color: rgba(216, 200, 27, 0.27) threshold2: 300 threshold2Color: rgba(234, 112, 112, 0.22) thresholdLine: true id: 5 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true show: true total: false values: true lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: - alias: "/^Average.*/" fill: 0 stack: false span: 10 stack: true steppedLine: false targets: - expr: ceph_osd_numpg{ceph_daemon=~"$osd",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Number of PGs - {{ $osd }} refId: A step: 60 - expr: avg(ceph_osd_numpg{application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Average Number of PGs in the Cluster refId: B step: 60 timeFrom: timeShift: title: PGs tooltip: msResolution: false shared: true sort: 0 value_type: individual type: graph xaxis: show: true yaxes: - format: short label: logBase: 1 max: min: 0 show: true - format: short label: logBase: 1 max: min: 0 show: true - cacheTimeout: colorBackground: false colorValue: true colors: - rgba(50, 172, 45, 0.97) - rgba(237, 129, 40, 0.89) - rgba(245, 54, 54, 0.9) datasource: "${DS_PROMETHEUS}" editable: true error: false format: percent gauge: maxValue: 100 minValue: 0 show: true thresholdLabels: false thresholdMarkers: true id: 7 interval: isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 2 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: true targets: - expr: (ceph_osd_stat_bytes_used{ceph_daemon=~"$osd",application="ceph",release_group="$ceph_cluster"}/ceph_osd_stat_bytes{ceph_daemon=~"$osd",application="ceph",release_group="$ceph_cluster"})*100 interval: "$interval" intervalFactor: 1 legendFormat: '' refId: A step: 60 thresholds: '60,80' timeFrom: title: Utilization transparent: false type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: N/A value: 'null' valueName: current showTitle: true title: 'OSD: $osd' - collapse: false editable: true height: 250px panels: - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" decimals: 2 editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) id: 2 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true show: true total: false values: true lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] span: 6 stack: true steppedLine: false targets: - expr: ceph_osd_stat_bytes_used{ceph_daemon=~"$osd",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Used - {{ osd.$osd }} metric: ceph_osd_used_bytes refId: A step: 60 - expr: ceph_osd_stat_bytes{ceph_daemon=~"$osd",application="ceph",release_group="$ceph_cluster"} - ceph_osd_stat_bytes_used{ceph_daemon=~"$osd",application="ceph",release_group="$ceph_cluster"} hide: false interval: "$interval" intervalFactor: 1 legendFormat: Available - {{ $osd }} metric: ceph_osd_avail_bytes refId: B step: 60 timeFrom: timeShift: title: OSD Storage tooltip: msResolution: false shared: true sort: 0 value_type: individual type: graph xaxis: show: true yaxes: - format: bytes label: logBase: 1 max: min: 0 show: true - format: short label: logBase: 1 max: min: 0 show: true - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" decimals: 5 editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) id: 9 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true show: true total: false values: true lines: false linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 2 points: true renderer: flot seriesOverrides: [] span: 6 stack: false steppedLine: false targets: - expr: (ceph_osd_stat_bytes_used{ceph_daemon=~"$osd",application="ceph",release_group="$ceph_cluster"}/ceph_osd_stat_bytes{ceph_daemon=~"$osd",application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 legendFormat: Available - {{ $osd }} metric: ceph_osd_avail_bytes refId: A step: 60 timeFrom: timeShift: title: Utilization Variance tooltip: msResolution: false shared: true sort: 0 value_type: cumulative type: graph xaxis: show: true yaxes: - format: none label: logBase: 1 max: min: show: true - format: none label: logBase: 1 max: min: show: true time: from: now-1h to: now timepicker: refresh_intervals: - 5s - 10s - 30s - 1m - 5m - 15m - 30m - 1h - 2h - 1d time_options: - 5m - 15m - 1h - 6h - 12h - 24h - 2d - 7d - 30d templating: list: - current: text: Prometheus value: Prometheus hide: 0 label: Prometheus datasource name: DS_PROMETHEUS options: [] query: prometheus refresh: 1 regex: '' type: datasource - current: {} hide: 0 label: Cluster name: ceph_cluster options: [] type: query query: label_values(ceph_health_status, release_group) refresh: 1 sort: 2 datasource: "${DS_PROMETHEUS}" - auto: true auto_count: 10 auto_min: 1m current: selected: true text: 1m value: 1m datasource: hide: 0 includeAll: false label: Interval multi: false name: interval options: - selected: false text: auto value: "$__auto_interval" - selected: true text: 1m value: 1m - selected: false text: 10m value: 10m - selected: false text: 30m value: 30m - selected: false text: 1h value: 1h - selected: false text: 6h value: 6h - selected: false text: 12h value: 12h - selected: false text: 1d value: 1d - selected: false text: 7d value: 7d - selected: false text: 14d value: 14d - selected: false text: 30d value: 30d query: 1m,10m,30m,1h,6h,12h,1d,7d,14d,30d refresh: 0 type: interval - current: {} datasource: "${DS_PROMETHEUS}" hide: 0 includeAll: false label: OSD multi: false name: osd options: [] query: label_values(ceph_osd_metadata{release_group="$ceph_cluster"}, ceph_daemon) refresh: 1 regex: '' type: query annotations: list: [] refresh: 15m schemaVersion: 12 version: 18 links: [] gnetId: 923 description: CEPH OSD Status. ceph_pool: __inputs: - name: DS_PROMETHEUS label: Prometheus description: Prometheus.IO type: datasource pluginId: prometheus pluginName: Prometheus __requires: - type: panel id: graph name: Graph version: '' - type: panel id: singlestat name: Singlestat version: '' - type: grafana id: grafana name: Grafana version: 3.1.1 - type: datasource id: prometheus name: Prometheus version: 1.0.0 id: title: Ceph - Pools tags: - ceph - pools style: dark timezone: browser editable: true hideControls: false sharedCrosshair: false rows: - collapse: false editable: true height: 250px panels: - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" decimals: 2 editable: true error: false fill: 4 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) height: '' id: 2 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true rightSide: true show: true total: false values: true lines: true linewidth: 0 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: - alias: "/^Total.*$/" fill: 0 linewidth: 4 stack: false - alias: "/^Raw.*$/" color: "#BF1B00" fill: 0 linewidth: 4 span: 10 stack: true steppedLine: false targets: - expr: ceph_pool_max_avail{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Total - {{ $pool }} refId: A step: 60 - expr: ceph_pool_bytes_used{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Used - {{ $pool }} refId: B step: 60 - expr: ceph_pool_max_avail{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"} - ceph_pool_bytes_used{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Available - {{ $pool }} refId: C step: 60 - expr: ceph_pool_raw_bytes_used{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Raw - {{ $pool }} refId: D step: 60 timeFrom: timeShift: title: "[[pool_name]] Pool Storage" tooltip: msResolution: false shared: true sort: 0 value_type: individual type: graph xaxis: show: true yaxes: - format: bytes label: logBase: 1 max: min: 0 show: true - format: short label: logBase: 1 max: min: 0 show: true - cacheTimeout: colorBackground: false colorValue: true colors: - rgba(245, 54, 54, 0.9) - rgba(237, 129, 40, 0.89) - rgba(50, 172, 45, 0.97) datasource: "${DS_PROMETHEUS}" decimals: 2 editable: true error: false format: percentunit gauge: maxValue: 1 minValue: 0 show: true thresholdLabels: false thresholdMarkers: true id: 10 interval: isNew: true links: [] mappingType: 1 mappingTypes: - name: value to text value: 1 - name: range to text value: 2 maxDataPoints: 100 nullPointMode: connected nullText: postfix: '' postfixFontSize: 50% prefix: '' prefixFontSize: 50% rangeMaps: - from: 'null' text: N/A to: 'null' span: 2 sparkline: fillColor: rgba(31, 118, 189, 0.18) full: false lineColor: rgb(31, 120, 193) show: false targets: - expr: (ceph_pool_bytes_used{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"} / ceph_pool_max_avail{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"}) interval: "$interval" intervalFactor: 1 refId: A step: 60 thresholds: '' title: "[[pool_name]] Pool Usage" type: singlestat valueFontSize: 80% valueMaps: - op: "=" text: N/A value: 'null' valueName: current showTitle: true title: 'Pool: $pool' - collapse: false editable: true height: 250px panels: - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) height: '' id: 7 isNew: true legend: avg: false current: false max: false min: false show: true total: false values: false lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] span: 6 stack: false steppedLine: false targets: - expr: ceph_pool_objects{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Objects - {{ $pool_name }} refId: A step: 60 - expr: ceph_pool_dirty{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"} interval: "$interval" intervalFactor: 1 legendFormat: Dirty Objects - {{ $pool_name }} refId: B step: 60 timeFrom: timeShift: title: Objects in Pool [[pool_name]] tooltip: msResolution: false shared: true sort: 0 value_type: cumulative type: graph xaxis: show: true yaxes: - format: short label: logBase: 1 max: min: 0 show: true - format: short label: logBase: 1 max: min: 0 show: true - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" decimals: 2 editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) thresholdLine: false id: 4 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true show: true total: false values: true lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] span: 6 stack: true steppedLine: false targets: - expr: irate(ceph_pool_rd{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"}[3m]) interval: "$interval" intervalFactor: 1 legendFormat: Read - {{ $pool_name }} refId: B step: 60 - expr: irate(ceph_pool_wr{pool_id=~"$pool",application="ceph",release_group="$ceph_cluster"}[3m]) interval: "$interval" intervalFactor: 1 legendFormat: Write - {{ $pool_name }} refId: A step: 60 timeFrom: timeShift: title: "[[pool_name]] Pool IOPS" tooltip: msResolution: false shared: true sort: 0 value_type: individual type: graph xaxis: show: true yaxes: - format: none label: IOPS logBase: 1 max: min: 0 show: true - format: short label: IOPS logBase: 1 max: min: 0 show: false - aliasColors: {} bars: false datasource: "${DS_PROMETHEUS}" decimals: 2 editable: true error: false fill: 1 grid: threshold1: threshold1Color: rgba(216, 200, 27, 0.27) threshold2: threshold2Color: rgba(234, 112, 112, 0.22) id: 5 interval: "$interval" isNew: true legend: alignAsTable: true avg: true current: true max: true min: true show: true total: false values: true lines: true linewidth: 2 links: [] nullPointMode: connected percentage: false pointradius: 5 points: false renderer: flot seriesOverrides: [] span: 12 stack: true steppedLine: false targets: - expr: irate(ceph_pool_rd_bytes{pool_id="$pool",application="ceph",release_group="$ceph_cluster"}[3m]) interval: "$interval" intervalFactor: 1 legendFormat: Read Bytes - {{ $pool_name }} refId: A step: 60 - expr: irate(ceph_pool_wr_bytes{pool_id="$pool",application="ceph",release_group="$ceph_cluster"}[3m]) interval: "$interval" intervalFactor: 1 legendFormat: Written Bytes - {{ $pool_name }} refId: B step: 60 timeFrom: timeShift: title: "[[pool_name]] Pool Throughput" tooltip: msResolution: false shared: true sort: 0 value_type: individual type: graph xaxis: show: true yaxes: - format: Bps label: logBase: 1 max: min: 0 show: true - format: Bps label: logBase: 1 max: min: 0 show: true title: New row time: from: now-3h to: now timepicker: refresh_intervals: - 5s - 10s - 30s - 1m - 5m - 15m - 30m - 1h - 2h - 1d time_options: - 5m - 15m - 1h - 6h - 12h - 24h - 2d - 7d - 30d templating: list: - current: text: Prometheus value: Prometheus hide: 0 label: Prometheus datasource name: DS_PROMETHEUS options: [] query: prometheus refresh: 1 regex: '' type: datasource - current: {} hide: 0 label: Cluster name: ceph_cluster options: [] type: query query: label_values(ceph_health_status, release_group) refresh: 1 sort: 2 datasource: "${DS_PROMETHEUS}" - auto: true auto_count: 10 auto_min: 1m current: selected: true text: 1m value: 1m datasource: hide: 0 includeAll: false label: Interval multi: false name: interval options: - selected: false text: auto value: "$__auto_interval" - selected: true text: 1m value: 1m - selected: false text: 10m value: 10m - selected: false text: 30m value: 30m - selected: false text: 1h value: 1h - selected: false text: 6h value: 6h - selected: false text: 12h value: 12h - selected: false text: 1d value: 1d - selected: false text: 7d value: 7d - selected: false text: 14d value: 14d - selected: false text: 30d value: 30d query: 1m,10m,30m,1h,6h,12h,1d,7d,14d,30d refresh: 0 type: interval - current: {} datasource: "${DS_PROMETHEUS}" hide: 0 includeAll: false label: Pool multi: false name: pool options: [] query: label_values(ceph_pool_objects{release_group="$ceph_cluster"}, pool_id) refresh: 1 regex: '' type: query - current: {} datasource: "${DS_PROMETHEUS}" hide: 0 includeAll: false label: Pool multi: false name: pool_name options: [] query: label_values(ceph_pool_metadata{release_group="$ceph_cluster",pool_id="[[pool]]" }, name) refresh: 1 regex: '' type: query annotations: list: [] refresh: 5m schemaVersion: 12 version: 22 links: [] gnetId: 926 description: Ceph Pools dashboard.