From 1269b50737e808c4d4ec3c4ca3a86afc938fa5e3 Mon Sep 17 00:00:00 2001 From: Alex Krzos Date: Wed, 16 Mar 2016 14:27:02 -0400 Subject: [PATCH] WIP - Adding OSE collectd/Dashboard. Change-Id: I028e8787a893801eb9459b561966afb88cfa5f65 --- ansible/README.collectd-generic.md | 3 + ansible/install/collectd-generic.yml | 9 + ansible/install/dashboards-generic.yml | 2 + .../templates/ose.collectd.conf.j2 | 84 + .../roles/collectd-generic/vars/main.yml | 3 + .../ose_general_system_performance.json.j2 | 2510 +++++++++++++++++ .../roles/dashboard-generic/vars/main.yml | 22 + 7 files changed, 2633 insertions(+) create mode 100644 ansible/install/roles/collectd-generic/templates/ose.collectd.conf.j2 create mode 100644 ansible/install/roles/dashboard-generic/templates/ose_general_system_performance.json.j2 diff --git a/ansible/README.collectd-generic.md b/ansible/README.collectd-generic.md index 096b0f964..77cc8d01a 100644 --- a/ansible/README.collectd-generic.md +++ b/ansible/README.collectd-generic.md @@ -38,6 +38,9 @@ x.x.x.x # An ip address of a Red Hat Cloud Forms appliance or ManageIQ appliance [graphite] x.x.x.x # An ip address of a Graphite/Grafana Server +[ose] +x.x.x.x # An ip address of a Red Hat Openshift Enterprise Node + [satellite6] x.x.x.x # An ip address of a Red Hat Satellite 6 Server ``` diff --git a/ansible/install/collectd-generic.yml b/ansible/install/collectd-generic.yml index 3e92b4a4b..0fb5533b4 100644 --- a/ansible/install/collectd-generic.yml +++ b/ansible/install/collectd-generic.yml @@ -9,6 +9,7 @@ # ansible-playbook -i hosts install/collectd-generic.yml --tags="cfme-vmdb" # ansible-playbook -i hosts install/collectd-generic.yml --tags="cfme" # ansible-playbook -i hosts install/collectd-generic.yml --tags="graphite" +# ansible-playbook -i hosts install/collectd-generic.yml --tags="ose" # ansible-playbook -i hosts install/collectd-generic.yml --tags="satellite6" # ansible-playbook -i hosts install/collectd-generic.yml --tags="baremetal,guest" # @@ -55,6 +56,14 @@ - collectd-generic tags: graphite +- hosts: ose + remote_user: root + vars: + config_type: ose + roles: + - collectd-generic + tags: ose + - hosts: satellite6 remote_user: root vars: diff --git a/ansible/install/dashboards-generic.yml b/ansible/install/dashboards-generic.yml index 327b07fa0..7315c514a 100644 --- a/ansible/install/dashboards-generic.yml +++ b/ansible/install/dashboards-generic.yml @@ -31,6 +31,8 @@ process_list_name: CFME-VMware - template_name: graphite process_list_name: Graphite + - template_name: ose + process_list_name: OpenShift-Enterprise - template_name: satellite6 process_list_name: Satellite6 roles: diff --git a/ansible/install/roles/collectd-generic/templates/ose.collectd.conf.j2 b/ansible/install/roles/collectd-generic/templates/ose.collectd.conf.j2 new file mode 100644 index 000000000..93bb68660 --- /dev/null +++ b/ansible/install/roles/collectd-generic/templates/ose.collectd.conf.j2 @@ -0,0 +1,84 @@ +# Installed by Browbeat Ansible Installer +# Config type: {{config_type}} + +# Interval default is 10s +Interval {{collectd_interval}} + +# Hostname for this machine, if not defined, use gethostname(2) system call +Hostname "{{inventory_hostname}}" + +# Allow collectd to log +LoadPlugin syslog + +# Loaded Plugins: +LoadPlugin write_graphite +LoadPlugin cpu +LoadPlugin df +LoadPlugin disk +LoadPlugin interface +LoadPlugin irq +LoadPlugin load +LoadPlugin memory +LoadPlugin numa +LoadPlugin processes +LoadPlugin swap +LoadPlugin turbostat +LoadPlugin unixsock +LoadPlugin uptime + +# Open unix domain socket for collectdctl + + SocketFile "/var/run/collectd-unixsock" + SocketGroup "collectd" + SocketPerms "0770" + DeleteSocket true + + +# Graphite Host Configuration + + + Host "{{graphite_host}}" + Port "2003" + Prefix "{{graphite_prefix}}." + Protocol "tcp" + LogSendErrors true + StoreRates true + AlwaysAppendDS false + EscapeCharacter "_" + + + + + ValuesPercentage true + + + + Disk "/^[hsv]d[a-z]+[0-9]?$/" + IgnoreSelected false + + + + # Openshift Master + ProcessMatch "openshift master" "/usr/bin/openshift.+start.+master" + ProcessMatch "openshift node" "/usr/bin/openshift.+start.+node" + + ProcessMatch "ovsdb-server monitor" "ovsdb-server.+monitoring" + ProcessMatch "ovsdb-server" "ovsdb-server.+/etc/openvswitch/conf.db" + ProcessMatch "ovsdb-vswitchd monitor" "ovs-vswitchd.+monitoring" + ProcessMatch "ovsdb-vswitchd" "ovs-vswitchd.+unix:/var/run/openvswitch/db.sock" + + ProcessMatch "docker daemon" "/usr/bin/docker.+daemon" + + ProcessMatch "pod" "pod" + + # Collect on collectd process + ProcessMatch "collectd" "/usr/sbin/collectd.+-C.+/etc/collectd.conf" + + + + ReportBytes true + ValuesPercentage true + + +# Include other collectd configuration files +Include "/etc/collectd.d" diff --git a/ansible/install/roles/collectd-generic/vars/main.yml b/ansible/install/roles/collectd-generic/vars/main.yml index 7b3ec4146..d18e76b8a 100644 --- a/ansible/install/roles/collectd-generic/vars/main.yml +++ b/ansible/install/roles/collectd-generic/vars/main.yml @@ -17,6 +17,9 @@ collectd_packages: graphite: - collectd - collectd-turbostat + ose: + - collectd + - collectd-turbostat satellite6: - collectd - collectd-turbostat diff --git a/ansible/install/roles/dashboard-generic/templates/ose_general_system_performance.json.j2 b/ansible/install/roles/dashboard-generic/templates/ose_general_system_performance.json.j2 new file mode 100644 index 000000000..d3eecd7c0 --- /dev/null +++ b/ansible/install/roles/dashboard-generic/templates/ose_general_system_performance.json.j2 @@ -0,0 +1,2510 @@ +{% set vars = {'panel_idx': 0, 'temp_count': 0} %} +{ + "dashboard": { + "annotations": { + "list": [] + }, + "editable": true, + "hideControls": false, + "id": null, + "links": [], + "overwrite": true, + "rows": [ + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": 0, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": [ + { + "refId": "A", + "target": "alias(averageSeries($Cloud.$Node.cpu-*.cpu-system), 'System')" + }, + { + "refId": "B", + "target": "alias(averageSeries($Cloud.$Node.cpu-*.cpu-user), 'User')" + }, + { + "refId": "C", + "target": "alias(averageSeries($Cloud.$Node.cpu-*.cpu-nice), 'Nice')" + }, + { + "refId": "D", + "target": "alias(averageSeries($Cloud.$Node.cpu-*.cpu-steal), 'Steal')" + }, + { + "refId": "E", + "target": "alias(averageSeries($Cloud.$Node.cpu-*.cpu-softirq), 'SoftIRQ')" + }, + { + "refId": "F", + "target": "alias(averageSeries($Cloud.$Node.cpu-*.cpu-interrupt), 'Interrupt')" + }, + { + "refId": "G", + "target": "alias(averageSeries($Cloud.$Node.cpu-*.cpu-wait), 'Wait')" + }, + { + "refId": "H", + "target": "alias(averageSeries($Cloud.$Node.cpu-*.cpu-idle), 'Idle')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - All CPUs", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "percent", + "short" + ] + } + ], + "showTitle": true, + "title": "CPU All" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": 0, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": true, + "show": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": "cpus0", + "scopedVars": {}, + "seriesOverrides": [], + "span": null, + "stack": true, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias(averageSeries($Cloud.$Node.$cpus0.cpu-system), 'System')", + "textEditor": false + }, + { + "refId": "B", + "target": "alias(averageSeries($Cloud.$Node.$cpus0.cpu-user), 'User')", + "textEditor": false + }, + { + "refId": "C", + "target": "alias(averageSeries($Cloud.$Node.$cpus0.cpu-nice), 'Nice')", + "textEditor": false + }, + { + "refId": "D", + "target": "alias(averageSeries($Cloud.$Node.$cpus0.cpu-steal), 'Steal')", + "textEditor": false + }, + { + "refId": "E", + "target": "alias(averageSeries($Cloud.$Node.$cpus0.cpu-softirq), 'SoftIRQ')", + "textEditor": false + }, + { + "refId": "F", + "target": "alias(averageSeries($Cloud.$Node.$cpus0.cpu-interrupt), 'Interrupt')", + "textEditor": false + }, + { + "refId": "G", + "target": "alias(averageSeries($Cloud.$Node.$cpus0.cpu-wait), 'Wait')", + "textEditor": false + }, + { + "refId": "H", + "target": "alias(averageSeries($Cloud.$Node.$cpus0.cpu-idle), 'Idle')", + "textEditor": false + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $cpus0", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "percent", + "short" + ] + } + ], + "showTitle": true, + "title": "Per CPU Logical CPU Core (0-9)" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": 0, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": true, + "show": true, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "repeat": "cpus00", + "scopedVars": {}, + "seriesOverrides": [], + "span": 12, + "stack": true, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias(averageSeries($Cloud.$Node.$cpus00.cpu-system), 'System')", + "textEditor": false + }, + { + "refId": "B", + "target": "alias(averageSeries($Cloud.$Node.$cpus00.cpu-user), 'User')", + "textEditor": false + }, + { + "refId": "C", + "target": "alias(averageSeries($Cloud.$Node.$cpus00.cpu-nice), 'Nice')", + "textEditor": false + }, + { + "refId": "D", + "target": "alias(averageSeries($Cloud.$Node.$cpus00.cpu-steal), 'Steal')", + "textEditor": false + }, + { + "refId": "E", + "target": "alias(averageSeries($Cloud.$Node.$cpus00.cpu-softirq), 'SoftIRQ')", + "textEditor": false + }, + { + "refId": "F", + "target": "alias(averageSeries($Cloud.$Node.$cpus00.cpu-interrupt), 'Interrupt')", + "textEditor": false + }, + { + "refId": "G", + "target": "alias(averageSeries($Cloud.$Node.$cpus00.cpu-wait), 'Wait')", + "textEditor": false + }, + { + "refId": "H", + "target": "alias(averageSeries($Cloud.$Node.$cpus00.cpu-idle), 'Idle')", + "textEditor": false + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $cpus00", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "percent", + "short" + ] + } + ], + "showTitle": true, + "title": "Per CPU Logical CPU Core (10-99)" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": 0, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.memory.memory-slab_unrecl, 'Slab Unrecl')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.memory.memory-used, 'Used')" + }, + { + "refId": "C", + "target": "alias($Cloud.$Node.memory.memory-buffered, 'Buffered')" + }, + { + "refId": "D", + "target": "alias($Cloud.$Node.memory.memory-slab_recl, 'Slab Recl')" + }, + { + "refId": "E", + "target": "alias($Cloud.$Node.memory.memory-cached, 'Cached')" + }, + { + "refId": "F", + "target": "alias($Cloud.$Node.memory.memory-free, 'Free')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Memory in Bytes", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "bytes", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": 0, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": [ + { + "hide": true, + "refId": "A", + "target": "$Cloud.$Node.memory.memory-slab_unrecl" + }, + { + "hide": true, + "refId": "B", + "target": "$Cloud.$Node.memory.memory-used" + }, + { + "hide": true, + "refId": "C", + "target": "$Cloud.$Node.memory.memory-buffered" + }, + { + "hide": true, + "refId": "D", + "target": "$Cloud.$Node.memory.memory-slab_recl" + }, + { + "hide": true, + "refId": "E", + "target": "$Cloud.$Node.memory.memory-cached" + }, + { + "hide": true, + "refId": "F", + "target": "$Cloud.$Node.memory.memory-free" + }, + { + "hide": true, + "refId": "G", + "target": "sumSeries($Cloud.$Node.memory.*)" + }, + { + "refId": "H", + "target": "alias(asPercent(#A, #G), 'Slab Unrecl')" + }, + { + "refId": "I", + "target": "alias(asPercent(#B, #G), 'Used')" + }, + { + "refId": "J", + "target": "alias(asPercent(#C, #G), 'Buffered')" + }, + { + "refId": "K", + "target": "alias(asPercent(#D, #G), 'Slab Recl')" + }, + { + "refId": "L", + "target": "alias(asPercent(#E, #G), 'Cached')" + }, + { + "refId": "M", + "target": "alias(asPercent(#F, #G), 'Free')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Memory in Percentage", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "percent", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": 0, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.swap.swap-used, 'Used')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.swap.swap-cached, 'Cached')" + }, + { + "refId": "C", + "target": "alias($Cloud.$Node.swap.swap-free, 'Free')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Swap Usage", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "bits", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": 0, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.swap.swap_io-in, 'In')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.swap.swap_io-out, 'Out')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Swap IO", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "bytes", + "short" + ] + } + ], + "showTitle": true, + "title": "Memory & Swap" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "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": "Write", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.$Disk.disk_ops.read, 'Read')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.$Disk.disk_ops.write, 'Write')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Disk iops", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "iops", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "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": "Write", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.$Disk.disk_octets.read, 'Read')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.$Disk.disk_octets.write, 'Write')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Disk Throughput", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "Bps", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "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": "Write", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.$Disk.disk_merged.read, 'Read')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.$Disk.disk_merged.write, 'Write')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Disk Merged iops", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "iops", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "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": "Write", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.$Disk.pending_operations, 'Pending Ops')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Disk Pending Operations", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "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": "Write", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.$Disk.disk_time.read, 'Read')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.$Disk.disk_time.write, 'Write')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Disk Average Time (Estimated)", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "ms", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "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": "Weighted Time", + "yaxis": 2 + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias(scale($Cloud.$Node.$Disk.disk_io_time.io_time, 0.1), 'Time')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.$Disk.disk_io_time.weighted_io_time, 'Weighted Time')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Disk IO Time", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "percent", + "ms" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "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": "Write", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": true, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.df-root.percent_bytes-reserved, 'Reserved')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.df-root.percent_bytes-used, 'Used')" + }, + { + "refId": "C", + "target": "alias($Cloud.$Node.df-root.percent_bytes-free, 'Free')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - / Partition Capacity", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "percent", + "short" + ] + } + ], + "showTitle": true, + "title": "Disk" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "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": "RX", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.$Interface.if_packets.tx, 'TX')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.$Interface.if_packets.rx, 'RX')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Interface Network IO", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "pps", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "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": "RX", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias(scale($Cloud.$Node.$Interface.if_octets.tx, 8), 'TX')" + }, + { + "refId": "B", + "target": "alias(scale($Cloud.$Node.$Interface.if_octets.rx, 8), 'RX')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Interface Network Throughput", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "bps", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "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": "RX", + "transform": "negative-Y" + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.$Interface.if_errors.tx, 'TX')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.$Interface.if_errors.rx, 'RX')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - $Interface Errors", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Network" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "decimals": 2, + "editable": true, + "error": false, + "fill": 0, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": 0, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": false, + "avg": true, + "current": true, + "max": true, + "min": true, + "rightSide": false, + "show": false, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [ + { + "alias": "SMI Count", + "yaxis": 2 + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "aliasByNode(scale(aliasSub($Cloud.$Node.turbostat-cpu*.gauge-TSC, 'turbostat-', 'tsc-'), 1000000), 2)" + }, + { + "refId": "B", + "target": "alias(sumSeries($Cloud.$Node.turbostat-cpu*.count), 'SMI Count')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Gauge TSC & SMI Count", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "hertz", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 0, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "rightSide": true, + "show": false, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "aliasByNode(scale(aliasSub($Cloud.$Node.turbostat-cpu*.frequency-average, 'turbostat-', ''), 1000000), 2)" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - turbostat Freq Avg", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "hertz", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "decimals": 2, + "editable": true, + "error": false, + "fill": 0, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "rightSide": true, + "show": false, + "total": false, + "values": true + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "aliasByNode(scale($Cloud.$Node.turbostat-cpu*.frequency-busy, 1000000), 2)" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - turbostat Freq Busy", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "hertz", + "short" + ] + } + ], + "showTitle": true, + "title": "Turbostat" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 0, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "aliasByNode(aliasSub(aliasSub($Cloud.$Node.numa-*.vmpage_action-interleave_hit, 'numa-', ''), 'vmpage_action-', ''), 2, 3)" + }, + { + "refId": "B", + "target": "aliasByNode(aliasSub(aliasSub($Cloud.$Node.numa-*.vmpage_action-local_node, 'numa-', ''), 'vmpage_action-', ''), 2, 3)" + }, + { + "refId": "C", + "target": "aliasByNode(aliasSub(aliasSub($Cloud.$Node.numa-*.vmpage_action-numa_foreign, 'numa-', ''), 'vmpage_action-', ''), 2, 3)" + }, + { + "refId": "D", + "target": "aliasByNode(aliasSub(aliasSub($Cloud.$Node.numa-*.vmpage_action-numa_hit, 'numa-', ''), 'vmpage_action-', ''), 2, 3)" + }, + { + "refId": "E", + "target": "aliasByNode(aliasSub(aliasSub($Cloud.$Node.numa-*.vmpage_action-numa_miss, 'numa-', ''), 'vmpage_action-', ''), 2, 3)" + }, + { + "refId": "F", + "target": "aliasByNode(aliasSub(aliasSub($Cloud.$Node.numa-*.vmpage_action-other_node, 'numa-', ''), 'vmpage_action-', ''), 2, 3)" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Numastat", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Numa" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 0, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": false, + "steppedLine": false, + "targets": [ + { + "refId": "B", + "target": "aliasByNode(aliasSub($Cloud.$Node.irq.irq-[A-Z]*, 'irq-', ''), 3)", + "textEditor": false + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - IRQ", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": [ + { + "refId": "B", + "target": "alias(sumSeries($Cloud.$Node.irq.irq-[0-9]*), 'Interrupts')", + "textEditor": false + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Interrupts", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "IRQ" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "decimals": 1, + "editable": true, + "error": false, + "fill": 0, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "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": "uptime", + "lines": false, + "yaxis": 2 + } + ], + "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.load.load.shortterm, '1m avg')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.load.load.midterm, '5m avg')" + }, + { + "refId": "C", + "target": "alias($Cloud.$Node.load.load.longterm, '15m avg')" + }, + { + "refId": "D", + "target": "alias($Cloud.$Node.uptime.uptime, 'uptime')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Load Averages / Uptime", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "s" + ] + } + ], + "showTitle": true, + "title": "Load / Uptime" + }, + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": [ + { + "refId": "A", + "target": "alias($Cloud.$Node.processes.ps_state-running, 'Running')" + }, + { + "refId": "B", + "target": "alias($Cloud.$Node.processes.ps_state-stopped, 'Stopped')" + }, + { + "refId": "C", + "target": "alias($Cloud.$Node.processes.ps_state-sleeping, 'Sleeping')" + }, + { + "refId": "D", + "target": "alias($Cloud.$Node.processes.ps_state-blocked, 'Blocked')" + }, + { + "refId": "E", + "target": "alias($Cloud.$Node.processes.ps_state-paging, 'Paging')" + }, + { + "refId": "F", + "target": "alias($Cloud.$Node.processes.ps_state-zombies, 'Zombies')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Processes State", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": false, + "steppedLine": false, + "targets": [ + { + "refId": "B", + "target": "alias($Cloud.$Node.processes.fork_rate, 'Fork Rate')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Fork Rate", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Processes" + }, +{# Loop over per-process options here #} + {% for metrics in per_process_metrics %} + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + + {% for panel in per_process_panels[item.process_list_name] %} + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "decimals": 0, + "editable": true, + "error": false, + "fill": 0, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": false, + "current": true, + "max": true, + "min": true, + "rightSide": 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": false, + "steppedLine": false, + "targets": [ + {% if vars.update({'temp_count': 0}) %} {% endif %} + {% if metrics.name|match('Process CPU') %} + { + "hide": true, + "refId": "{{vars.temp_count|to_grafana_refid}}", + "target": "alias(sumSeries(offset(scale($Cloud.$Node.cpu-*.cpu-idle, 0), 1)), 'cores')" + }, + {% if vars.update({'temp_count': (vars.temp_count + 1)}) %} {% endif %} + {% endif %} + {% for process in panel.processes %} + {% for metric in metrics.metrics %} + { + "refId": "{{vars.temp_count|to_grafana_refid}}", + {% if metrics.name|match('Process CPU') %} + "target": "alias(divideSeries(scale($Cloud.$Node.processes-{{process|replace('.', '_')|replace(':', '_')|replace(' ', '_')}}{{metric.query}}, 0.0001), #A), '{{process}} {{metric.name}}')" + {% else %} + "target": "alias($Cloud.$Node.processes-{{process|replace('.', '_')|replace(':', '_')|replace(' ', '_')}}{{metric.query}}, '{{process}} {{metric.name}}')" + {% endif %} + {% if not loop.last %} + }, + {% endif %} + {% if vars.update({'temp_count': (vars.temp_count + 1)}) %} {% endif %} + {% endfor %} + {% if loop.last %} + } + {% else %} + }, + {% endif %} + {% endfor %} + ], + "timeFrom": null, + "timeShift": null, + "title": "{{panel.name}}", + "tooltip": { + "shared": true, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "{{metrics.y1units}}", + "short" + ] + {% if loop.last %} + } + {% else %} + }, + {% endif %} + {% endfor %} + ], + "showTitle": true, + "title": "Openshift Enterprise {{metrics.name}}" + }, + {% endfor %} +{# End Loop over per-process options here #} + { + "collapse": true, + "editable": true, + "height": "200px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": 0, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} + "id": {{vars.panel_idx}}, + "isNew": true, + "legend": { + "alignAsTable": true, + "avg": true, + "current": true, + "max": true, + "min": true, + "rightSide": 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": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "aliasByNode($Cloud.$Node.tail-*.counter-total, 2)" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "$Cloud - $Node - Tail", + "tooltip": { + "shared": true, + "value_type": "individual" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Tail" + } + ], + "schemaVersion": 8, + "sharedCrosshair": false, + "style": "dark", + "tags": [], + "templating": { + "list": [ + { + "allFormat": "glob", + "current": { + "text": "None", + "value": "None" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Cloud", + "options": [], + "query": "*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "text": "None", + "value": "None" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node", + "options": [], + "query": "$Cloud.*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "text": "interface", + "value": "interface" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Interface", + "options": [], + "query": "$Cloud.$Node.interface-*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "text": "disk", + "value": "disk" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Disk", + "options": [], + "query": "$Cloud.$Node.disk-*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "text": "All", + "value": "{cpu-0,cpu-1,cpu-2,cpu-3,cpu-4,cpu-5,cpu-6,cpu-7,cpu-8,cpu-9}" + }, + "datasource": null, + "hideLabel": true, + "includeAll": true, + "label": "", + "multi": true, + "multiFormat": "glob", + "name": "cpus0", + "options": [], + "query": "$Cloud.$Node.cpu-[0-9]", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "text": "All", + "value": "{cpu-10,cpu-11,cpu-12,cpu-13,cpu-14,cpu-15,cpu-16,cpu-17,cpu-18,cpu-19,cpu-20,cpu-21,cpu-22,cpu-23}" + }, + "datasource": null, + "hideLabel": true, + "includeAll": true, + "multi": true, + "multiFormat": "glob", + "name": "cpus00", + "options": [], + "query": "$Cloud.$Node.cpu-[1-9][0-9]", + "refresh": true, + "type": "query" + } + ] + }, + "time": { + "from": "now-1h", + "to": "now" + }, + "timepicker": { + "now": true, + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "browser", + "title": "{{item.process_list_name}} General System Performance", + "version": 1 + } +} diff --git a/ansible/install/roles/dashboard-generic/vars/main.yml b/ansible/install/roles/dashboard-generic/vars/main.yml index 6fbe68469..c134020e6 100644 --- a/ansible/install/roles/dashboard-generic/vars/main.yml +++ b/ansible/install/roles/dashboard-generic/vars/main.yml @@ -738,6 +738,28 @@ per_process_panels: - name: "Collectd" processes: - collectd + OpenShift-Enterprise: + - name: "OpenShift" + processes: + - "openshift master" + - "openshift node" + - name: "Open vSwitch Server" + processes: + - "ovsdb-server monitor" + - "ovsdb-server" + - name: "Open vSwitchd" + processes: + - "ovsdb-vswitchd monitor" + - "ovsdb-vswitchd" + - name: "Docker" + processes: + - "docker daemon" + - name: "pods" + processes: + - "pod" + - name: "Collectd" + processes: + - collectd Satellite6: - name: "Summerized" processes: