4,
5
),
- $.simpleGraphPanel(
- {},
- 'CPU Busy - Top 10 Hosts',
- 'Show the top 10 busiest hosts by cpu',
- 'percent',
- null,
- 0,
- |||
- topk(10,
- 100 * (
- 1 - (
- avg by(instance) (
- rate(node_cpu_seconds_total{mode='idle',instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*"}[$__rate_interval]) or
+ $.timeSeriesPanel(
+ title='CPU Busy - Top 10 Hosts',
+ datasource='$datasource',
+ gridPosition={ x: 0, y: 5, w: 12, h: 9 },
+ unit='percent',
+ axisLabel='',
+ min=0,
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ spanNulls=true,
+ )
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ topk(10,
+ 100 * (
+ 1 - (
+ avg by(instance) (
+ rate(node_cpu_seconds_total{mode='idle',instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*"}[$__rate_interval]) or
rate(node_cpu{mode='idle',instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*"}[$__rate_interval])
+ )
)
)
)
- )
- |||,
- '{{instance}}',
- 0,
- 5,
- 12,
- 9
- ),
- $.simpleGraphPanel(
- {},
- 'Network Load - Top 10 Hosts',
- 'Top 10 hosts by network load',
- 'Bps',
- null,
- 0,
- |||
- topk(10, (sum by(instance) (
- (
- rate(node_network_receive_bytes{instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*",device!="lo"}[$__rate_interval]) or
- rate(node_network_receive_bytes_total{instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*",device!="lo"}[$__rate_interval])
- ) +
- (
- rate(node_network_transmit_bytes{instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*",device!="lo"}[$__rate_interval]) or
- rate(node_network_transmit_bytes_total{instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*",device!="lo"}[$__rate_interval])
- ) unless on (device, instance)
- label_replace((node_bonding_slaves > 0), "device", "$1", "master", "(.+)"))
- ))
- |||,
- '{{instance}}',
- 12,
- 5,
- 12,
- 9
- ),
+ |||,
+ '{{instance}}'
+ ),
+ ]),
+ $.timeSeriesPanel(
+ title='Network Load - Top 10 Hosts',
+ datasource='$datasource',
+ gridPosition={ x: 12, y: 5, w: 12, h: 9 },
+ unit='Bps',
+ axisLabel='',
+ min=0,
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ spanNulls=true,
+ )
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ topk(10, (sum by(instance) (
+ (
+ rate(node_network_receive_bytes{instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*",device!="lo"}[$__rate_interval]) or
+ rate(node_network_receive_bytes_total{instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*",device!="lo"}[$__rate_interval])
+ ) +
+ (
+ rate(node_network_transmit_bytes{instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*",device!="lo"}[$__rate_interval]) or
+ rate(node_network_transmit_bytes_total{instance=~"($osd_hosts|$mon_hosts|$mds_hosts|$rgw_hosts).*",device!="lo"}[$__rate_interval])
+ ) unless on (device, instance)
+ label_replace((node_bonding_slaves > 0), "device", "$1", "master", "(.+)"))
+ ))
+ |||,
+ '{{instance}}'
+ ),
+ ]),
]),
'host-details.json':
$.dashboardSchema(
3,
5
),
- $.simpleGraphPanel(
- {
- interrupt: '#447EBC',
- steal: '#6D1F62',
- system: '#890F02',
- user: '#3F6833',
- wait: '#C15C17',
- },
- 'CPU Utilization',
- "Shows the CPU breakdown. When multiple servers are selected, only the first host's cpu data is shown",
- 'percent',
- '% Utilization',
- null,
- |||
- sum by (mode) (
- rate(node_cpu{instance=~"($ceph_hosts)([\\\\.:].*)?", mode=~"(irq|nice|softirq|steal|system|user|iowait)"}[$__rate_interval]) or
- rate(node_cpu_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?", mode=~"(irq|nice|softirq|steal|system|user|iowait)"}[$__rate_interval])
- ) / (
- scalar(
- sum(rate(node_cpu{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
- rate(node_cpu_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]))
- ) * 100
- )
- |||,
- '{{mode}}',
- 3,
- 1,
- 6,
- 10
- ),
- $.simpleGraphPanel(
- {
- Available: '#508642',
- Free: '#508642',
- Total: '#bf1b00',
- Used: '#bf1b00',
- total: '#bf1b00',
- used: '#0a50a1',
- },
- 'RAM Usage',
- '',
- 'bytes',
- 'RAM used',
- null,
- |||
- node_memory_MemFree{instance=~"$ceph_hosts([\\\\.:].*)?"} or
- node_memory_MemFree_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
- |||,
- 'Free',
- 9,
- 1,
- 6,
- 10
+ $.timeSeriesPanel(
+ title='CPU Utilization',
+ datasource='$datasource',
+ gridPosition={ x: 3, y: 1, w: 6, h: 10 },
+ unit='percent',
+ axisLabel='% Utilization',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
+ )
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ sum by (mode) (
+ rate(node_cpu{instance=~"($ceph_hosts)([\\\\.:].*)?", mode=~"(irq|nice|softirq|steal|system|user|iowait)"}[$__rate_interval]) or
+ rate(node_cpu_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?", mode=~"(irq|nice|softirq|steal|system|user|iowait)"}[$__rate_interval])
+ ) / (
+ scalar(
+ sum(rate(node_cpu{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
+ rate(node_cpu_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]))
+ ) * 100
+ )
+ |||,
+ '{{mode}}'
+ ),
+ ]),
+ $.timeSeriesPanel(
+ title='RAM Usage',
+ datasource='$datasource',
+ gridPosition={ x: 9, y: 1, w: 6, h: 10 },
+ unit='bytes',
+ axisLabel='RAM used',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
)
- .addTargets(
- [
- $.addTargetSchema(
- |||
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ node_memory_MemFree{instance=~"$ceph_hosts([\\\\.:].*)?"} or
+ node_memory_MemFree_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
+ |||,
+ 'Free'
+ ),
+ $.addTargetSchema(
+ |||
+ node_memory_MemTotal{instance=~"$ceph_hosts([\\\\.:].*)?"} or
+ node_memory_MemTotal_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
+ |||,
+ 'total'
+ ),
+ $.addTargetSchema(
+ |||
+ (
+ node_memory_Cached{instance=~"$ceph_hosts([\\\\.:].*)?"} or
+ node_memory_Cached_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
+ ) + (
+ node_memory_Buffers{instance=~"$ceph_hosts([\\\\.:].*)?"} or
+ node_memory_Buffers_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
+ ) + (
+ node_memory_Slab{instance=~"$ceph_hosts([\\\\.:].*)?"} or
+ node_memory_Slab_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
+ )
+ |||,
+ 'buffers/cache'
+ ),
+ $.addTargetSchema(
+ |||
+ (
node_memory_MemTotal{instance=~"$ceph_hosts([\\\\.:].*)?"} or
- node_memory_MemTotal_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
- |||,
- 'total'
- ),
- $.addTargetSchema(
- |||
+ node_memory_MemTotal_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
+ ) - (
(
+ node_memory_MemFree{instance=~"$ceph_hosts([\\\\.:].*)?"} or
+ node_memory_MemFree_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
+ ) + (
node_memory_Cached{instance=~"$ceph_hosts([\\\\.:].*)?"} or
node_memory_Cached_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
) + (
node_memory_Slab{instance=~"$ceph_hosts([\\\\.:].*)?"} or
node_memory_Slab_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
)
- |||,
- 'buffers/cache'
- ),
- $.addTargetSchema(
- |||
- (
- node_memory_MemTotal{instance=~"$ceph_hosts([\\\\.:].*)?"} or
- node_memory_MemTotal_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
- ) - (
- (
- node_memory_MemFree{instance=~"$ceph_hosts([\\\\.:].*)?"} or
- node_memory_MemFree_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
- ) + (
- node_memory_Cached{instance=~"$ceph_hosts([\\\\.:].*)?"} or
- node_memory_Cached_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
- ) + (
- node_memory_Buffers{instance=~"$ceph_hosts([\\\\.:].*)?"} or
- node_memory_Buffers_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
- ) +
- (
- node_memory_Slab{instance=~"$ceph_hosts([\\\\.:].*)?"} or
- node_memory_Slab_bytes{instance=~"$ceph_hosts([\\\\.:].*)?"}
- )
- )
- |||,
- 'used'
- ),
- ]
- )
+ )
+ |||,
+ 'used'
+ ),
+ ])
.addSeriesOverride(
{
alias: 'total',
stack: false,
}
),
- $.simpleGraphPanel(
- {},
- 'Network Load',
- "Show the network load (rx,tx) across all interfaces (excluding loopback 'lo')",
- 'decbytes',
- 'Send (-) / Receive (+)',
- null,
- |||
- sum by (device) (
- rate(
- node_network_receive_bytes{instance=~"($ceph_hosts)([\\\\.:].*)?",device!="lo"}[$__rate_interval]) or
- rate(node_network_receive_bytes_total{instance=~"($ceph_hosts)([\\\\.:].*)?",device!="lo"}[$__rate_interval]
- )
- )
- |||,
- '{{device}}.rx',
- 15,
- 1,
- 6,
- 10
- )
- .addTargets(
- [
- $.addTargetSchema(
- |||
- sum by (device) (
- rate(node_network_transmit_bytes{instance=~"($ceph_hosts)([\\\\.:].*)?",device!="lo"}[$__rate_interval]) or
- rate(node_network_transmit_bytes_total{instance=~"($ceph_hosts)([\\\\.:].*)?",device!="lo"}[$__rate_interval])
- )
- |||,
- '{{device}}.tx'
- ),
- ]
+ $.timeSeriesPanel(
+ title='Network Load',
+ datasource='$datasource',
+ gridPosition={ x: 15, y: 1, w: 6, h: 10 },
+ unit='decbytes',
+ axisLabel='Send (-) / Receive (+)',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
)
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ sum by (device) (
+ rate(node_network_receive_bytes{instance=~"($ceph_hosts)([\\\\.:].*)?",device!="lo"}[$__rate_interval]) or
+ rate(node_network_receive_bytes_total{instance=~"($ceph_hosts)([\\\\.:].*)?",device!="lo"}[$__rate_interval])
+ )
+ |||,
+ '{{device}}.rx'
+ ),
+ $.addTargetSchema(
+ |||
+ sum by (device) (
+ rate(node_network_transmit_bytes{instance=~"($ceph_hosts)([\\\\.:].*)?",device!="lo"}[$__rate_interval]) or
+ rate(node_network_transmit_bytes_total{instance=~"($ceph_hosts)([\\\\.:].*)?",device!="lo"}[$__rate_interval])
+ )
+ |||,
+ '{{device}}.tx'
+ ),
+ ])
.addSeriesOverride(
{ alias: '/.*tx/', transform: 'negative-Y' }
),
- $.simpleGraphPanel(
- {},
- 'Network drop rate',
- '',
- 'pps',
- 'Send (-) / Receive (+)',
- null,
- |||
- rate(node_network_receive_drop{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval]) or
- rate(node_network_receive_drop_total{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval])
- |||,
- '{{device}}.rx',
- 21,
- 1,
- 3,
- 5
- )
- .addTargets(
- [
- $.addTargetSchema(
- |||
- rate(node_network_transmit_drop{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval]) or
- rate(node_network_transmit_drop_total{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval])
- |||,
- '{{device}}.tx'
- ),
- ]
+ $.timeSeriesPanel(
+ title='Network drop rate',
+ datasource='$datasource',
+ gridPosition={ x: 21, y: 1, w: 3, h: 5 },
+ unit='pps',
+ axisLabel='Send (-) / Receive (+)',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
)
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ rate(node_network_receive_drop{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval]) or
+ rate(node_network_receive_drop_total{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval])
+ |||,
+ '{{device}}.rx'
+ ),
+ $.addTargetSchema(
+ |||
+ rate(node_network_transmit_drop{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval]) or
+ rate(node_network_transmit_drop_total{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval])
+ |||,
+ '{{device}}.tx'
+ ),
+ ])
.addSeriesOverride(
{
alias: '/.*tx/',
3,
5
),
- $.simpleGraphPanel(
- {},
- 'Network error rate',
- '',
- 'pps',
- 'Send (-) / Receive (+)',
- null,
- |||
- rate(node_network_receive_errs{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval]) or
- rate(node_network_receive_errs_total{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval])
- |||,
- '{{device}}.rx',
- 21,
- 6,
- 3,
- 5
+ $.timeSeriesPanel(
+ title='Network error rate',
+ datasource='$datasource',
+ gridPosition={ x: 21, y: 6, w: 3, h: 5 },
+ unit='pps',
+ axisLabel='Send (-) / Receive (+)',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
)
- .addTargets(
- [$.addTargetSchema(
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ rate(node_network_receive_errs{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval]) or
+ rate(node_network_receive_errs_total{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval])
+ |||,
+ '{{device}}.rx'
+ ),
+ $.addTargetSchema(
|||
rate(node_network_transmit_errs{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval]) or
- rate(node_network_transmit_errs_total{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval])
+ rate(node_network_transmit_errs_total{instance=~"$ceph_hosts([\\\\.:].*)?"}[$__rate_interval])
|||,
'{{device}}.tx'
- )]
- )
+ ),
+ ])
.addSeriesOverride(
{
alias: '/.*tx/',
transform: 'negative-Y',
}
),
- $.addRowSchema(false,
- true,
- 'OSD Disk Performance Statistics') + { gridPos: { x: 0, y: 11, w: 24, h: 1 } },
- $.simpleGraphPanel(
- {},
- '$ceph_hosts Disk IOPS',
- "For any OSD devices on the host, this chart shows the iops per physical device. Each device is shown by it's name and corresponding OSD id value",
- 'ops',
- 'Read (-) / Write (+)',
- null,
- |||
- label_replace(
- (
- rate(node_disk_writes_completed{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
- rate(node_disk_writes_completed_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])
- ), "instance", "$1", "instance", "([^:.]*).*"
- ) * on(instance, device) group_left(ceph_daemon) label_replace(
- label_replace(
- ceph_disk_occupation_human{%(matchers)s}, "device", "$1", "device", "/dev/(.*)"
- ), "instance", "$1", "instance", "([^:.]*).*"
- )
- ||| % $.matchers(),
- '{{device}}({{ceph_daemon}}) writes',
- 0,
- 12,
- 11,
- 9
+ $.addRowSchema(
+ false,
+ true,
+ 'OSD Disk Performance Statistics'
+ ) + { gridPos: { x: 0, y: 11, w: 24, h: 1 } },
+ $.timeSeriesPanel(
+ title='$ceph_hosts Disk IOPS',
+ datasource='$datasource',
+ gridPosition={ x: 0, y: 12, w: 11, h: 9 },
+ unit='ops',
+ axisLabel='Read (-) / Write (+)',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
)
- .addTargets(
- [
- $.addTargetSchema(
- |||
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ label_replace(
+ (
+ rate(node_disk_writes_completed{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
+ rate(node_disk_writes_completed_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])
+ ), "instance", "$1", "instance", "([^:.]*).*"
+ ) * on(instance, device) group_left(ceph_daemon) label_replace(
label_replace(
- (
- rate(node_disk_reads_completed{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
- rate(node_disk_reads_completed_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])
- ), "instance", "$1", "instance", "([^:.]*).*"
- ) * on(instance, device) group_left(ceph_daemon) label_replace(
- label_replace(
- ceph_disk_occupation_human{%(matchers)s},"device", "$1", "device", "/dev/(.*)"
- ), "instance", "$1", "instance", "([^:.]*).*"
- )
- ||| % $.matchers(),
- '{{device}}({{ceph_daemon}}) reads'
- ),
- ]
- )
+ ceph_disk_occupation_human{%(matchers)s}, "device", "$1", "device", "/dev/(.*)"
+ ), "instance", "$1", "instance", "([^:.]*).*"
+ )
+ ||| % $.matchers(),
+ '{{device}}({{ceph_daemon}}) writes'
+ ),
+ $.addTargetSchema(
+ |||
+ label_replace(
+ (
+ rate(node_disk_reads_completed{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
+ rate(node_disk_reads_completed_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])
+ ), "instance", "$1", "instance", "([^:.]*).*"
+ ) * on(instance, device) group_left(ceph_daemon) label_replace(
+ label_replace(
+ ceph_disk_occupation_human{%(matchers)s}, "device", "$1", "device", "/dev/(.*)"
+ ), "instance", "$1", "instance", "([^:.]*).*"
+ )
+ ||| % $.matchers(),
+ '{{device}}({{ceph_daemon}}) reads'
+ ),
+ ])
.addSeriesOverride(
{ alias: '/.*reads/', transform: 'negative-Y' }
),
- $.simpleGraphPanel(
- {},
- '$ceph_hosts Throughput by Disk',
- 'For OSD hosts, this chart shows the disk bandwidth (read bytes/sec + write bytes/sec) of the physical OSD device. Each device is shown by device name, and corresponding OSD id',
- 'Bps',
- 'Read (-) / Write (+)',
- null,
- |||
- label_replace(
- (
- rate(node_disk_bytes_written{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
- rate(node_disk_written_bytes_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])
- ), "instance", "$1", "instance", "([^:.]*).*") * on(instance, device)
+ $.timeSeriesPanel(
+ title='$ceph_hosts Throughput by Disk',
+ datasource='$datasource',
+ gridPosition={ x: 12, y: 12, w: 11, h: 9 },
+ unit='Bps',
+ axisLabel='Read (-) / Write (+)',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
+ )
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ label_replace(
+ (
+ rate(node_disk_bytes_written{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
+ rate(node_disk_written_bytes_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])
+ ), "instance", "$1", "instance", "([^:.]*).*"
+ ) * on(instance, device)
group_left(ceph_daemon) label_replace(
label_replace(ceph_disk_occupation_human{%(matchers)s}, "device", "$1", "device", "/dev/(.*)"),
"instance", "$1", "instance", "([^:.]*).*"
)
- ||| % $.matchers(),
- '{{device}}({{ceph_daemon}}) write',
- 12,
- 12,
- 11,
- 9
- )
- .addTargets(
- [$.addTargetSchema(
+ ||| % $.matchers(),
+ '{{device}}({{ceph_daemon}}) write'
+ ),
+ $.addTargetSchema(
|||
label_replace(
(
rate(node_disk_bytes_read{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) or
rate(node_disk_read_bytes_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])
- ),
- "instance", "$1", "instance", "([^:.]*).*") * on(instance, device)
- group_left(ceph_daemon) label_replace(
- label_replace(ceph_disk_occupation_human{%(matchers)s}, "device", "$1", "device", "/dev/(.*)"),
- "instance", "$1", "instance", "([^:.]*).*"
- )
+ ), "instance", "$1", "instance", "([^:.]*).*"
+ ) * on(instance, device)
+ group_left(ceph_daemon) label_replace(
+ label_replace(ceph_disk_occupation_human{%(matchers)s}, "device", "$1", "device", "/dev/(.*)"),
+ "instance", "$1", "instance", "([^:.]*).*"
+ )
||| % $.matchers(),
'{{device}}({{ceph_daemon}}) read'
- )]
- )
+ ),
+ ])
.addSeriesOverride(
{ alias: '/.*read/', transform: 'negative-Y' }
),
- $.simpleGraphPanel(
- {},
- '$ceph_hosts Disk Latency',
- "For OSD hosts, this chart shows the latency at the physical drive. Each drive is shown by device name, with it's corresponding OSD id",
- 's',
- '',
- null,
- |||
- max by(instance, device) (label_replace(
- (rate(node_disk_write_time_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])) /
- clamp_min(rate(node_disk_writes_completed_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]), 0.001) or
- (rate(node_disk_read_time_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])) /
- clamp_min(rate(node_disk_reads_completed_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]), 0.001),
- "instance", "$1", "instance", "([^:.]*).*"
- )) * on(instance, device) group_left(ceph_daemon) label_replace(
+ $.timeSeriesPanel(
+ title='$ceph_hosts Disk Latency',
+ datasource='$datasource',
+ gridPosition={ x: 0, y: 21, w: 11, h: 9 },
+ unit='s',
+ axisLabel='',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
+ )
+ .addTargets([
+ $.addTargetSchema(
+ |||
+ max by(instance, device) (
+ label_replace(
+ (
+ (rate(node_disk_write_time_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])) /
+ clamp_min(rate(node_disk_writes_completed_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]), 0.001) or
+ (rate(node_disk_read_time_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval])) /
+ clamp_min(rate(node_disk_reads_completed_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]), 0.001)
+ ),
+ "instance", "$1", "instance", "([^:.]*).*"
+ )
+ ) * on(instance, device) group_left(ceph_daemon) label_replace(
+ label_replace(
+ ceph_disk_occupation_human{instance=~"($ceph_hosts)([\\\\.:].*)?"},
+ "device", "$1", "device", "/dev/(.*)"
+ ), "instance", "$1", "instance", "([^:.]*).*"
+ )
+ ||| % $.matchers(),
+ '{{device}}({{ceph_daemon}})'
+ ),
+ ]),
+ $.timeSeriesPanel(
+ title='$ceph_hosts Disk utilization',
+ datasource='$datasource',
+ gridPosition={ x: 12, y: 21, w: 11, h: 9 },
+ unit='percent',
+ axisLabel='%Util',
+ drawStyle='line',
+ fillOpacity=8,
+ showPoints='never',
+ tooltip={ mode: 'multi', sort: 'none' },
+ colorMode='palette-classic',
+ spanNulls=true,
+ )
+ .addTargets([
+ $.addTargetSchema(
+ |||
label_replace(
- ceph_disk_occupation_human{instance=~"($ceph_hosts)([\\\\.:].*)?"},
- "device", "$1", "device", "/dev/(.*)"
- ), "instance", "$1", "instance", "([^:.]*).*"
- )
- ||| % $.matchers(),
- '{{device}}({{ceph_daemon}})',
- 0,
- 21,
- 11,
- 9
- ),
- $.simpleGraphPanel(
- {},
- '$ceph_hosts Disk utilization',
- 'Show disk utilization % (util) of any OSD devices on the host by the physical device name and associated OSD id.',
- 'percent',
- '%Util',
- null,
- |||
- label_replace(
- (
- (rate(node_disk_io_time_ms{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) / 10) or
- rate(node_disk_io_time_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) * 100
- ), "instance", "$1", "instance", "([^:.]*).*"
- ) * on(instance, device) group_left(ceph_daemon) label_replace(
- label_replace(ceph_disk_occupation_human{instance=~"($ceph_hosts)([\\\\.:].*)?", %(matchers)s},
- "device", "$1", "device", "/dev/(.*)"), "instance", "$1", "instance", "([^:.]*).*"
- )
- ||| % $.matchers(),
- '{{device}}({{ceph_daemon}})',
- 12,
- 21,
- 11,
- 9
- ),
+ (
+ (rate(node_disk_io_time_ms{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) / 10) or
+ rate(node_disk_io_time_seconds_total{instance=~"($ceph_hosts)([\\\\.:].*)?"}[$__rate_interval]) * 100
+ ), "instance", "$1", "instance", "([^:.]*).*"
+ ) * on(instance, device) group_left(ceph_daemon) label_replace(
+ label_replace(ceph_disk_occupation_human{instance=~"($ceph_hosts)([\\\\.:].*)?", %(matchers)s},
+ "device", "$1", "device", "/dev/(.*)"), "instance", "$1", "instance", "([^:.]*).*"
+ )
+ ||| % $.matchers(),
+ '{{device}}({{ceph_daemon}})'
+ ),
+ ]),
$.addTableExtended(
datasource='${datasource}',
"valueName": "current"
},
{
- "aliasColors": {
- "interrupt": "#447EBC",
- "steal": "#6D1F62",
- "system": "#890F02",
- "user": "#3F6833",
- "wait": "#C15C17"
- },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "Shows the CPU breakdown. When multiple servers are selected, only the first host's cpu data is shown",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "% Utilization",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "percent"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 10,
"w": 6,
"y": 1
},
"id": 4,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [ ],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
"expr": "sum by (mode) (\n rate(node_cpu{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\", mode=~\"(irq|nice|softirq|steal|system|user|iowait)\"}[$__rate_interval]) or\n rate(node_cpu_seconds_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\", mode=~\"(irq|nice|softirq|steal|system|user|iowait)\"}[$__rate_interval])\n) / (\n scalar(\n sum(rate(node_cpu{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_cpu_seconds_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]))\n ) * 100\n)\n",
"refId": "A"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "CPU Utilization",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "percent",
- "label": "% Utilization",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
- "aliasColors": {
- "Available": "#508642",
- "Free": "#508642",
- "Total": "#bf1b00",
- "Used": "#bf1b00",
- "total": "#bf1b00",
- "used": "#0a50a1"
- },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "RAM used",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "bytes"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 10,
"w": 6,
"y": 1
},
"id": 5,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [
{
"alias": "total",
"stack": false
}
],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
- "expr": "node_memory_MemFree{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_MemFree_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n",
+ "expr": "node_memory_MemFree{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\nnode_memory_MemFree_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "Free",
"refId": "A"
},
{
- "expr": "node_memory_MemTotal{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_MemTotal_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n",
+ "expr": "node_memory_MemTotal{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\nnode_memory_MemTotal_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "total",
"refId": "C"
},
{
- "expr": "(\n node_memory_MemTotal{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_MemTotal_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n) - (\n (\n node_memory_MemFree{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_MemFree_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n ) + (\n node_memory_Cached{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_Cached_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n ) + (\n node_memory_Buffers{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_Buffers_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n ) +\n (\n node_memory_Slab{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_Slab_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n )\n)\n",
+ "expr": "(\n node_memory_MemTotal{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_MemTotal_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n) - (\n (\n node_memory_MemFree{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_MemFree_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n ) + (\n node_memory_Cached{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_Cached_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n ) + (\n node_memory_Buffers{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_Buffers_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n ) + (\n node_memory_Slab{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"} or\n node_memory_Slab_bytes{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}\n )\n)\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "used",
"refId": "D"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "RAM Usage",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "bytes",
- "label": "RAM used",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
- "aliasColors": { },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "Show the network load (rx,tx) across all interfaces (excluding loopback 'lo')",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "Send (-) / Receive (+)",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "decbytes"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 10,
"w": 6,
"y": 1
},
"id": 6,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [
{
"alias": "/.*tx/",
"transform": "negative-Y"
}
],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
- "expr": "sum by (device) (\n rate(\n node_network_receive_bytes{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\",device!=\"lo\"}[$__rate_interval]) or\n rate(node_network_receive_bytes_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\",device!=\"lo\"}[$__rate_interval]\n )\n)\n",
+ "expr": "sum by (device) (\n rate(node_network_receive_bytes{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\",device!=\"lo\"}[$__rate_interval]) or\n rate(node_network_receive_bytes_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\",device!=\"lo\"}[$__rate_interval])\n)\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}.rx",
"refId": "B"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "Network Load",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": "Send (-) / Receive (+)",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
- "aliasColors": { },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "Send (-) / Receive (+)",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "pps"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 5,
"w": 3,
"y": 1
},
"id": 7,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [
{
"alias": "/.*tx/",
"transform": "negative-Y"
}
],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
- "expr": "rate(node_network_receive_drop{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_network_receive_drop_total{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval])\n",
+ "expr": "rate(node_network_receive_drop{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\nrate(node_network_receive_drop_total{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval])\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}.rx",
"refId": "A"
},
{
- "expr": "rate(node_network_transmit_drop{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_network_transmit_drop_total{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval])\n",
+ "expr": "rate(node_network_transmit_drop{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\nrate(node_network_transmit_drop_total{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval])\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}.tx",
"refId": "B"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "Network drop rate",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "pps",
- "label": "Send (-) / Receive (+)",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
"cacheTimeout": null,
"valueName": "current"
},
{
- "aliasColors": { },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "Send (-) / Receive (+)",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "pps"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 5,
"w": 3,
"y": 6
},
"id": 9,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [
{
"alias": "/.*tx/",
"transform": "negative-Y"
}
],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
- "expr": "rate(node_network_receive_errs{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_network_receive_errs_total{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval])\n",
+ "expr": "rate(node_network_receive_errs{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\nrate(node_network_receive_errs_total{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval])\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}.rx",
"refId": "A"
},
{
- "expr": "rate(node_network_transmit_errs{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_network_transmit_errs_total{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval])\n",
+ "expr": "rate(node_network_transmit_errs{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\nrate(node_network_transmit_errs_total{instance=~\"$ceph_hosts([\\\\\\\\.:].*)?\"}[$__rate_interval])\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}.tx",
"refId": "B"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "Network error rate",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "pps",
- "label": "Send (-) / Receive (+)",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
"collapse": false,
"type": "row"
},
{
- "aliasColors": { },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "For any OSD devices on the host, this chart shows the iops per physical device. Each device is shown by it's name and corresponding OSD id value",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "Read (-) / Write (+)",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "ops"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 9,
"w": 11,
"y": 12
},
"id": 11,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [
{
"alias": "/.*reads/",
"transform": "negative-Y"
}
],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
"expr": "label_replace(\n (\n rate(node_disk_writes_completed{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_disk_writes_completed_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n) * on(instance, device) group_left(ceph_daemon) label_replace(\n label_replace(\n ceph_disk_occupation_human{cluster=~\"$cluster\", }, \"device\", \"$1\", \"device\", \"/dev/(.*)\"\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)\n",
"refId": "A"
},
{
- "expr": "label_replace(\n (\n rate(node_disk_reads_completed{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_disk_reads_completed_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n) * on(instance, device) group_left(ceph_daemon) label_replace(\n label_replace(\n ceph_disk_occupation_human{cluster=~\"$cluster\", },\"device\", \"$1\", \"device\", \"/dev/(.*)\"\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)\n",
+ "expr": "label_replace(\n (\n rate(node_disk_reads_completed{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_disk_reads_completed_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n) * on(instance, device) group_left(ceph_daemon) label_replace(\n label_replace(\n ceph_disk_occupation_human{cluster=~\"$cluster\", }, \"device\", \"$1\", \"device\", \"/dev/(.*)\"\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}({{ceph_daemon}}) reads",
"refId": "B"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "$ceph_hosts Disk IOPS",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "ops",
- "label": "Read (-) / Write (+)",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
- "aliasColors": { },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "For OSD hosts, this chart shows the disk bandwidth (read bytes/sec + write bytes/sec) of the physical OSD device. Each device is shown by device name, and corresponding OSD id",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "Read (-) / Write (+)",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "Bps"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 9,
"w": 11,
"y": 12
},
"id": 12,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [
{
"alias": "/.*read/",
"transform": "negative-Y"
}
],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
- "expr": "label_replace(\n (\n rate(node_disk_bytes_written{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_disk_written_bytes_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\") * on(instance, device)\n group_left(ceph_daemon) label_replace(\n label_replace(ceph_disk_occupation_human{cluster=~\"$cluster\", }, \"device\", \"$1\", \"device\", \"/dev/(.*)\"),\n \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n )\n",
+ "expr": "label_replace(\n (\n rate(node_disk_bytes_written{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_disk_written_bytes_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n) * on(instance, device)\ngroup_left(ceph_daemon) label_replace(\n label_replace(ceph_disk_occupation_human{cluster=~\"$cluster\", }, \"device\", \"$1\", \"device\", \"/dev/(.*)\"),\n \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}({{ceph_daemon}}) write",
"refId": "A"
},
{
- "expr": "label_replace(\n (\n rate(node_disk_bytes_read{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_disk_read_bytes_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])\n ),\n \"instance\", \"$1\", \"instance\", \"([^:.]*).*\") * on(instance, device)\n group_left(ceph_daemon) label_replace(\n label_replace(ceph_disk_occupation_human{cluster=~\"$cluster\", }, \"device\", \"$1\", \"device\", \"/dev/(.*)\"),\n \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n )\n",
+ "expr": "label_replace(\n (\n rate(node_disk_bytes_read{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) or\n rate(node_disk_read_bytes_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n) * on(instance, device)\ngroup_left(ceph_daemon) label_replace(\n label_replace(ceph_disk_occupation_human{cluster=~\"$cluster\", }, \"device\", \"$1\", \"device\", \"/dev/(.*)\"),\n \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}({{ceph_daemon}}) read",
"refId": "B"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "$ceph_hosts Throughput by Disk",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": "Read (-) / Write (+)",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
- "aliasColors": { },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "For OSD hosts, this chart shows the latency at the physical drive. Each drive is shown by device name, with it's corresponding OSD id",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "s"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 9,
"w": 11,
"y": 21
},
"id": 13,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [ ],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
- "expr": "max by(instance, device) (label_replace(\n (rate(node_disk_write_time_seconds_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])) /\n clamp_min(rate(node_disk_writes_completed_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]), 0.001) or\n (rate(node_disk_read_time_seconds_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])) /\n clamp_min(rate(node_disk_reads_completed_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]), 0.001),\n \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)) * on(instance, device) group_left(ceph_daemon) label_replace(\n label_replace(\n ceph_disk_occupation_human{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"},\n \"device\", \"$1\", \"device\", \"/dev/(.*)\"\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)\n",
+ "expr": "max by(instance, device) (\n label_replace(\n (\n (rate(node_disk_write_time_seconds_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])) /\n clamp_min(rate(node_disk_writes_completed_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]), 0.001) or\n (rate(node_disk_read_time_seconds_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval])) /\n clamp_min(rate(node_disk_reads_completed_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]), 0.001)\n ),\n \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n )\n) * on(instance, device) group_left(ceph_daemon) label_replace(\n label_replace(\n ceph_disk_occupation_human{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"},\n \"device\", \"$1\", \"device\", \"/dev/(.*)\"\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)\n",
"format": "time_series",
"intervalFactor": 1,
"legendFormat": "{{device}}({{ceph_daemon}})",
"refId": "A"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "$ceph_hosts Disk Latency",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "s",
- "label": "",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
- "aliasColors": { },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
"datasource": "$datasource",
- "description": "Show disk utilization % (util) of any OSD devices on the host by the physical device name and associated OSD id.",
"fieldConfig": {
"defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
"custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "%Util",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
"fillOpacity": 8,
- "showPoints": "never"
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 0,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": true,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [ ]
},
"unit": "percent"
- }
+ },
+ "overrides": [ ]
},
- "fill": 1,
- "fillGradient": 0,
"gridPos": {
"h": 9,
"w": 11,
"y": 21
},
"id": 14,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "sideWidth": null,
- "total": false,
- "values": false
+ "options": {
+ "legend": {
+ "calcs": [ ],
+ "displayMode": "list",
+ "placement": "bottom",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "none"
+ }
},
- "lines": true,
- "linewidth": 1,
- "links": [ ],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "repeat": null,
+ "pluginVersion": "9.1.3",
"seriesOverrides": [ ],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
"targets": [
{
"expr": "label_replace(\n (\n (rate(node_disk_io_time_ms{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) / 10) or\n rate(node_disk_io_time_seconds_total{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\"}[$__rate_interval]) * 100\n ), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n) * on(instance, device) group_left(ceph_daemon) label_replace(\n label_replace(ceph_disk_occupation_human{instance=~\"($ceph_hosts)([\\\\\\\\.:].*)?\", cluster=~\"$cluster\", },\n \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\"\n)\n",
"refId": "A"
}
],
- "thresholds": [ ],
- "timeFrom": null,
- "timeShift": null,
"title": "$ceph_hosts Disk utilization",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "timeseries",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [ ]
- },
- "yaxes": [
- {
- "format": "percent",
- "label": "%Util",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
+ "type": "timeseries"
},
{
"columns": [ ],