From 966106905edddb6515391d82e3e7ab73257603de Mon Sep 17 00:00:00 2001 From: Alex Krzos Date: Thu, 14 Jul 2016 13:32:57 -0400 Subject: [PATCH] Improve/Consolidate Collectd Configs & Grafana Dashboards Collectd Configs: + Improvements to the maintainability of these config files + Versions appended to end of each per-process captured that the specific process was used in OpenStack + Collect on for Gnocchi, Aodh, and Sahara + Remove Satellite6 and OSE collectd configurations + Cleaned up Undercloud, Controller, Compute and Ceph Collectd Configurations to contain "mostly" processes that exist on machines of that type Dashboards: + Add Gnocchi, Aodh, and Sahara per-process graphs + s/glance-agent/glance-api/ "bug" + Remove non-OpenStack Dashboards (OSE, Satellite 6) from Repo + Consolidate Guest, Baremetal, and Graphite Dashboards with OpenStack Dashboards in single playbook grafana-dashboards.yml + Update the Cloud System Performance Dashboard to allow comparsion with timeshifting + Add several comments to clarify the three types of dashboards + Removed DivideSeries from Graphite, Baremetal, and Guest Dashboards to match behavior of the OpenStack Dashboards for per-process graphs Change-Id: I0c5c994324bd202b02a6175b261b84b183499d0e --- ansible/install/collectd-generic.yml | 18 - ansible/install/dashboards-generic.yml | 23 - ansible/install/dashboards-openstack.yml | 28 - ansible/install/grafana-dashboards.yml | 40 + .../roles/collectd-generic/handlers/main.yml | 7 - .../roles/collectd-generic/tasks/main.yml | 32 - .../templates/ose-metrics.py.j2 | 23 - .../templates/ose.collectd.conf.j2 | 91 - .../templates/satellite6.collectd.conf.j2 | 161 - .../roles/collectd-generic/vars/main.yml | 7 - .../templates/ceph.collectd.conf.j2 | 20 +- .../templates/compute.collectd.conf.j2 | 116 +- .../templates/controller.collectd.conf.j2 | 201 +- .../templates/undercloud.collectd.conf.j2 | 197 +- .../roles/dashboard-generic/tasks/main.yml | 26 - .../ose_general_system_performance.json.j2 | 2731 -------------- ...ellite6_general_system_performance.json.j2 | 3338 ----------------- .../roles/dashboard-generic/vars/main.yml | 165 - .../cloud_system_performance_comparsion.json | 1416 ++++--- .../fix-ids.py | 3 +- .../tasks/main.yml | 44 +- .../templates/all_cpu_graphs.json.j2 | 0 .../templates/all_disk_graphs.json.j2 | 0 .../templates/all_memory_graphs.json.j2 | 0 .../templates/all_network_graphs.json.j2 | 0 ...remetal_general_system_performance.json.j2 | 12 +- ...raphite_general_system_performance.json.j2 | 12 +- .../guest_general_system_performance.json.j2 | 12 +- ...enstack_general_system_performance.json.j2 | 8 +- .../vars/main.yml | 114 +- 30 files changed, 1339 insertions(+), 7506 deletions(-) delete mode 100644 ansible/install/dashboards-generic.yml delete mode 100644 ansible/install/dashboards-openstack.yml create mode 100644 ansible/install/grafana-dashboards.yml delete mode 100644 ansible/install/roles/collectd-generic/handlers/main.yml delete mode 100644 ansible/install/roles/collectd-generic/templates/ose-metrics.py.j2 delete mode 100644 ansible/install/roles/collectd-generic/templates/ose.collectd.conf.j2 delete mode 100644 ansible/install/roles/collectd-generic/templates/satellite6.collectd.conf.j2 delete mode 100644 ansible/install/roles/dashboard-generic/tasks/main.yml delete mode 100644 ansible/install/roles/dashboard-generic/templates/ose_general_system_performance.json.j2 delete mode 100644 ansible/install/roles/dashboard-generic/templates/satellite6_general_system_performance.json.j2 delete mode 100644 ansible/install/roles/dashboard-generic/vars/main.yml rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/files/cloud_system_performance_comparsion.json (59%) rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/fix-ids.py (99%) rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/tasks/main.yml (58%) rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/templates/all_cpu_graphs.json.j2 (100%) rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/templates/all_disk_graphs.json.j2 (100%) rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/templates/all_memory_graphs.json.j2 (100%) rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/templates/all_network_graphs.json.j2 (100%) rename ansible/install/roles/{dashboard-generic => grafana-dashboards}/templates/baremetal_general_system_performance.json.j2 (99%) rename ansible/install/roles/{dashboard-generic => grafana-dashboards}/templates/graphite_general_system_performance.json.j2 (99%) rename ansible/install/roles/{dashboard-generic => grafana-dashboards}/templates/guest_general_system_performance.json.j2 (99%) rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/templates/openstack_general_system_performance.json.j2 (99%) rename ansible/install/roles/{dashboard-openstack => grafana-dashboards}/vars/main.yml (77%) diff --git a/ansible/install/collectd-generic.yml b/ansible/install/collectd-generic.yml index f43d7ca5d..6836ed01d 100644 --- a/ansible/install/collectd-generic.yml +++ b/ansible/install/collectd-generic.yml @@ -7,8 +7,6 @@ # ansible-playbook -i hosts install/collectd-generic.yml --tags="baremetal" # ansible-playbook -i hosts install/collectd-generic.yml --tags="guest" # 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" # @@ -35,19 +33,3 @@ roles: - collectd-generic tags: graphite - -- hosts: ose - remote_user: root - vars: - config_type: ose - roles: - - collectd-generic - tags: ose - -- hosts: satellite6 - remote_user: root - vars: - config_type: satellite6 - roles: - - collectd-generic - tags: satellite6 diff --git a/ansible/install/dashboards-generic.yml b/ansible/install/dashboards-generic.yml deleted file mode 100644 index 962235552..000000000 --- a/ansible/install/dashboards-generic.yml +++ /dev/null @@ -1,23 +0,0 @@ ---- -# -# Builds and uploads dashboards to your grafana server for several host types -# - -- hosts: localhost - gather_facts: false - vars: - ansible_connection: local - overwrite_existing: true - dashboards: - - template_name: baremetal - process_list_name: Baremetal - - template_name: guest - process_list_name: Guest - - template_name: graphite - process_list_name: Graphite - - template_name: ose - process_list_name: OpenShift-Enterprise - - template_name: satellite6 - process_list_name: Satellite6 - roles: - - dashboard-generic diff --git a/ansible/install/dashboards-openstack.yml b/ansible/install/dashboards-openstack.yml deleted file mode 100644 index 58a462600..000000000 --- a/ansible/install/dashboards-openstack.yml +++ /dev/null @@ -1,28 +0,0 @@ ---- -# -# Builds dashboards based on your ansible hosts for Openstack -# - -- hosts: localhost - gather_facts: false - vars: - ansible_connection: local - overwrite_existing: true - dashboards: - - template_name: openstack - template_node_type: undercloud - process_list_name: Openstack-Undercloud - - template_name: openstack - template_node_type: controller - process_list_name: Openstack-Controller - - template_name: openstack - template_node_type: compute - process_list_name: Openstack-Compute - - template_name: openstack - template_node_type: ceph - process_list_name: Openstack-Ceph - - template_name: openstack - template_node_type: "*" - process_list_name: Openstack - roles: - - dashboard-openstack diff --git a/ansible/install/grafana-dashboards.yml b/ansible/install/grafana-dashboards.yml new file mode 100644 index 000000000..b39950751 --- /dev/null +++ b/ansible/install/grafana-dashboards.yml @@ -0,0 +1,40 @@ +--- +# +# Uploads and Builds Dashboards for Browbeat analysis of System Performance Metrics +# +# You can upload just the Static and Generated Generic Dashboards with: +# ansible-playbook -i hosts install/grafana-dashboards.yml -e 'cloud_dashboards=false' +# +# + +- hosts: localhost + gather_facts: false + vars: + ansible_connection: local + cloud_dashboards: true + overwrite_existing: true + dashboards: + - template_name: OpenStack + template_node_type: undercloud + process_list_name: OpenStack-Undercloud + - template_name: OpenStack + template_node_type: controller + process_list_name: OpenStack-Controller + - template_name: OpenStack + template_node_type: compute + process_list_name: OpenStack-Compute + - template_name: OpenStack + template_node_type: ceph + process_list_name: OpenStack-Ceph + - template_name: OpenStack + template_node_type: "*" + process_list_name: OpenStack + # Non-OpenStack specific dashboards that are included: + - template_name: baremetal + process_list_name: Baremetal + - template_name: guest + process_list_name: Guest + - template_name: graphite + process_list_name: Graphite + roles: + - grafana-dashboards diff --git a/ansible/install/roles/collectd-generic/handlers/main.yml b/ansible/install/roles/collectd-generic/handlers/main.yml deleted file mode 100644 index 1d8595a21..000000000 --- a/ansible/install/roles/collectd-generic/handlers/main.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -# -# Handlers for collectd-generic -# - -- name: restart httpd - service: name=httpd state=restarted diff --git a/ansible/install/roles/collectd-generic/tasks/main.yml b/ansible/install/roles/collectd-generic/tasks/main.yml index 35d569899..fe784f6ae 100644 --- a/ansible/install/roles/collectd-generic/tasks/main.yml +++ b/ansible/install/roles/collectd-generic/tasks/main.yml @@ -26,38 +26,6 @@ become: true with_items: "{{collectd_packages[config_type]}}" - -# -# Satellite6 specific configuration steps -# -- name: Get Candlepin PostgresDB Password - command: grep "jpa.config.hibernate.connection.password" /etc/candlepin/candlepin.conf - register: satellite_candlepin_password - when: "'{{config_type}}' == 'satellite6'" - -- name: Get Foreman PostgresDB Password - shell: grep "password" /etc/foreman/database.yml | awk '{print $2}' | tr -d '"' - register: satellite_foreman_password - when: "'{{config_type}}' == 'satellite6'" - - -# -# OSE specific configuration -# -# - name: Copy ose-metrics.py -# template: -# src=ose-metrics.py.j2 -# dest=/usr/local/bin/ose-metrics.py -# owner=root -# group=root -# mode=0755 -# become: true -# when: "'{{config_type}}' == 'ose'" - -# - name: Allow group read to /etc/origin/master/admin.key -# file: path=/etc/origin/master/admin.key mode=0640 -# when: "'{{config_type}}' == 'ose'" - - name: Configure collectd.conf template: src={{config_type}}.collectd.conf.j2 diff --git a/ansible/install/roles/collectd-generic/templates/ose-metrics.py.j2 b/ansible/install/roles/collectd-generic/templates/ose-metrics.py.j2 deleted file mode 100644 index a10e9250f..000000000 --- a/ansible/install/roles/collectd-generic/templates/ose-metrics.py.j2 +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env python - -import requests -import time - -from requests.packages.urllib3.exceptions import InsecureRequestWarning -requests.packages.urllib3.disable_warnings(InsecureRequestWarning) - -interval = {{collectd_interval}} -hostname = "{{inventory_hostname}}" - -while True: - time_stamp = int(time.time()) - next_start = time_stamp + interval - r = requests.get('https://127.0.0.1:8443/metrics', cert=('/etc/origin/master/admin.crt', '/etc/origin/master/admin.key'), verify=False) - for values in [ line.strip() for line in r.text.splitlines()]: - if '#' not in values[0] and '{' not in values: - metric_name = values.split(' ')[0] - metric_value = values.split(' ')[1] - print 'PUTVAL {0}/ose/gauge-{1} {2}:{3}'.format(hostname, metric_name, time_stamp, metric_value) - endtime = time.time() - if endtime < next_start: - time.sleep(next_start - endtime) diff --git a/ansible/install/roles/collectd-generic/templates/ose.collectd.conf.j2 b/ansible/install/roles/collectd-generic/templates/ose.collectd.conf.j2 deleted file mode 100644 index c1e57e51b..000000000 --- a/ansible/install/roles/collectd-generic/templates/ose.collectd.conf.j2 +++ /dev/null @@ -1,91 +0,0 @@ -# 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 exec -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 - - -# -# Exec "nobody:root" "/usr/local/bin/ose-metrics.py" -# - - - # Openshift Master - ProcessMatch "openshift master" "/usr/bin/openshift.+start.+master" - ProcessMatch "openshift node" "/usr/bin/openshift.+start.+node" - - ProcessMatch "etcd" "/usr/bin/etcd" - - 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/templates/satellite6.collectd.conf.j2 b/ansible/install/roles/collectd-generic/templates/satellite6.collectd.conf.j2 deleted file mode 100644 index 479c32e80..000000000 --- a/ansible/install/roles/collectd-generic/templates/satellite6.collectd.conf.j2 +++ /dev/null @@ -1,161 +0,0 @@ -# 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 postgresql -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 - - - - - Host "localhost" - Port "5432" - User "candlepin" - Password "{{satellite_candlepin_password.stdout|ini_value}}" - # Predefined: - Query backends - Query transactions - Query queries - Query table_states - Query disk_io - Query disk_usage - - - Host "localhost" - Port "5432" - User "foreman" - Password "{{satellite_foreman_password.stdout}}" - # Predefined: - Query backends - Query transactions - Query queries - Query table_states - Query disk_io - Query disk_usage - - - Host "localhost" - Port "5432" - User "gutterball" - Password "gutterball" - # Predefined: - Query backends - Query transactions - Query queries - Query table_states - Query disk_io - Query disk_usage - - - - - # DynFlow - ProcessMatch "dynflow_executor" "dynflow.+executor$" - ProcessMatch "dynflow_executor_monitor" "dynflow.+executor.+monitor$" - - # Elasticsearch - ProcessMatch "Elasticsearch" ".*elasticsearch.*" - - # Apache - Process "httpd" - - # Mongodb - Process "mongod" - - # Passenger - ProcessMatch "Passenger-Forman" "Passenger.+RackApp:.+/usr/share/foreman" - ProcessMatch "Passenger-Puppet" "Passenger.+RackApp:.+/etc/puppet/rack" - ProcessMatch "PassengerHelperAgent" "PassengerHelperAgent" - ProcessMatch "PassengerLoggingAgent" "PassengerLoggingAgent" - ProcessMatch "PassengerWatchdog" "PassengerWatchdog" - - # Postgres database - ProcessMatch "postgres" "postgres.*" - - # Pulp - ProcessMatch "Pulp-Scheduler" "/usr/bin/python.+/usr/bin/celery.+beat.+--scheduler=pulp.server.async.scheduler.Scheduler" - ProcessMatch "Pulp-Resource-Manager" "/usr/bin/python.+/usr/bin/celery.+worker.+-A.+pulp.server.async.app.+-n.+resource_manager" - ProcessMatch "Pulp-Resource-Worker" "/usr/bin/python.+/usr/bin/celery.+worker.+-n.+reserved_resource_worker" - - # Puppet Agent - ProcessMatch "Puppet-Agent" "/usr/bin/ruby.+/usr/bin/puppet.+agent.+--no-daemonize" - - # Qpidd + dispatch router - Process "qdrouterd" - Process "qpidd" - - # Foreman smart proxy - ProcessMatch "Foreman-SmartProxy" "ruby.+/usr/share/foreman-proxy/bin/smart-proxy" - - # Tomcat - ProcessMatch "Tomcat" ".*tomcat.*" - - # Other background tasks - ProcessMatch "Trends:Counter" "/opt/rh/ruby193/root/usr/bin/ruby.+/opt/rh/ruby193/root/usr/bin/rake.+trends:counter" - ProcessMatch "LDAP:Refresh_usergroups" "/opt/rh/ruby193/root/usr/bin/ruby.+/opt/rh/ruby193/root/usr/bin/rake.+ldap:refresh_usergroups" - - Process "ruby" - - # 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 648b6f314..a72639686 100644 --- a/ansible/install/roles/collectd-generic/vars/main.yml +++ b/ansible/install/roles/collectd-generic/vars/main.yml @@ -12,10 +12,3 @@ collectd_packages: graphite: - collectd - collectd-turbostat - ose: - - collectd - - collectd-turbostat - satellite6: - - collectd - - collectd-turbostat - - collectd-postgresql diff --git a/ansible/install/roles/collectd-openstack/templates/ceph.collectd.conf.j2 b/ansible/install/roles/collectd-openstack/templates/ceph.collectd.conf.j2 index 5bb5eb605..4fcb94315 100644 --- a/ansible/install/roles/collectd-openstack/templates/ceph.collectd.conf.j2 +++ b/ansible/install/roles/collectd-openstack/templates/ceph.collectd.conf.j2 @@ -80,20 +80,18 @@ PreCacheChain "PreCache" IgnoreSelected false +# (akrzos) Including the version of OpenStack that the process was verified as running after +# OpenStack Installation with a comment at the end of each Process/ProcessMath statement. +# A Minus before the version means the process was not found in that version. (Ex -9) - # Ceph - ProcessMatch "ceph-mon" "^/usr/bin/ceph-mon" - ProcessMatch "ceph-osd" "^/usr/bin/ceph-osd" - ProcessMatch "diamond" "python.+diamond" - ProcessMatch "salt-minion" "python.+salt-minion" + # Ceph (OpenStack Installed) + ProcessMatch "ceph-mon" "^/usr/bin/ceph-mon" # Unchecked + ProcessMatch "ceph-osd" "^/usr/bin/ceph-osd" # Unchecked + ProcessMatch "diamond" "python.+diamond" # Unchecked + ProcessMatch "salt-minion" "python.+salt-minion" # Unchecked + # Collectd (Browbeat Installed) ProcessMatch "collectd" "/usr/sbin/collectd.+-C.+/etc/collectd.conf" - Process "corosync" - Process "httpd" - Process "memcached" - ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" - ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" - ProcessMatch "qemu-kvm" "/usr/libexec/qemu-kvm" diff --git a/ansible/install/roles/collectd-openstack/templates/compute.collectd.conf.j2 b/ansible/install/roles/collectd-openstack/templates/compute.collectd.conf.j2 index af0e4dd80..a55efb989 100644 --- a/ansible/install/roles/collectd-openstack/templates/compute.collectd.conf.j2 +++ b/ansible/install/roles/collectd-openstack/templates/compute.collectd.conf.j2 @@ -80,104 +80,30 @@ PreCacheChain "PreCache" IgnoreSelected false +# (akrzos) Including the version of OpenStack that the process was verified as running after +# OpenStack Installation with a comment at the end of each Process/ProcessMath statement. +# A Minus before the version means the process was not found in that version. (Ex -9) - # Ceilometer - ProcessMatch "ceilometer-agent-central" "python.+ceilometer-agent-central" - ProcessMatch "ceilometer-agent-compute" "python.+ceilometer-agent-compute" - ProcessMatch "ceilometer-agent-notification" "python.+ceilometer-agent-notification" - ProcessMatch "ceilometer-alarm-evaluator" "python.+ceilometer-alarm-evaluator" - ProcessMatch "ceilometer-alarm-notifier" "python.+ceilometer-alarm-notifier" - ProcessMatch "ceilometer-api" "python.+ceilometer-api" - ProcessMatch "ceilometer-collector" "python.+ceilometer-collector" - ProcessMatch "ceilometer-polling" "python.+ceilometer-polling" - - # Ceph - ProcessMatch "ceph-mon" "^/usr/bin/ceph-mon" - ProcessMatch "ceph-osd" "^/usr/bin/ceph-osd" - ProcessMatch "diamond" "python.+diamond" - ProcessMatch "salt-minion" "python.+salt-minion" - - # Cinder - ProcessMatch "cinder-api" "python.+cinder-api" - ProcessMatch "cinder-scheduler" "python.+cinder-scheduler" - ProcessMatch "cinder-volume" "python.+cinder-volume" - - # Glance - ProcessMatch "glance-api" "python.+glance-api" - ProcessMatch "glance-registry" "python.+glance-registry" - - # Heat - ProcessMatch "heat-api" "python.+heat-api" - ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" - ProcessMatch "heat-api-cloudwatch" "python.+heat-api-cloudwatch" - ProcessMatch "heat-engine" "python.+heat-engine" - - # Ironic - ProcessMatch "ironic-api" "python.+ironic-api" - ProcessMatch "ironic-conductor" "python.+ironic-conductor" - - # Keystone - ProcessMatch "keystone-all" "python.+keystone-all" - ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" - ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" - - # Neutron - ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" - ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" - ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" - ProcessMatch "neutron-ns-metadata-proxy" "python.+neutron-ns-metadata-proxy" - ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" - ProcessMatch "neutron-server" "python.+neutron-server" - - # Nova Processes - ProcessMatch "nova-api" "python.+nova-api" - ProcessMatch "nova-cert" "python.+nova-cert" - ProcessMatch "nova-compute" "python.+nova-compute" - ProcessMatch "nova-conductor" "python.+nova-conductor" - ProcessMatch "nova-consoleauth" "python.+nova-consoleauth" - ProcessMatch "nova-novncproxy" "python.+nova-novncproxy" - ProcessMatch "nova-scheduler" "python.+nova-scheduler" - - # Swift - ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" - ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" - ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" - ProcessMatch "swift-account-server" "python.+swift-account-server" - ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" - ProcessMatch "swift-container-updater" "python.+swift-container-updater" - ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" - ProcessMatch "swift-container-server" "python.+swift-container-server" - ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" - ProcessMatch "swift-object-updater" "python.+swift-object-updater" - ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" - ProcessMatch "swift-object-server" "python.+swift-object-server" - ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" - - # Pacemaker - ProcessMatch "pacemakerd" "/usr/sbin/pacemakerd" - ProcessMatch "cib" "/usr/libexec/pacemaker/cib" - ProcessMatch "stonithd" "/usr/libexec/pacemaker/stonithd" - ProcessMatch "attrd" "/usr/libexec/pacemaker/attrd" - ProcessMatch "pengine" "/usr/libexec/pacemaker/pengine" - ProcessMatch "crmd" "/usr/libexec/pacemaker/crmd" - ProcessMatch "lrmd" "/usr/libexec/pacemaker/lrmd" - ProcessMatch "pcsd" "^/usr/bin/ruby.+/usr/lib/pcsd" + # Ceilometer (OpenStack Installed) + ProcessMatch "ceilometer-agent-compute" "python.+ceilometer-agent-compute" # -9 + ProcessMatch "ceilometer-polling" "python.+ceilometer-polling" # 9 + # Collectd (Browbeat Installed) ProcessMatch "collectd" "/usr/sbin/collectd.+-C.+/etc/collectd.conf" - Process "corosync" - ProcessMatch "dnsmasq" "^dnsmasq.+" - ProcessMatch "dnsmasq-ironic" "/sbin/dnsmasq.+/etc/ironic-discoverd/dnsmasq.conf" - ProcessMatch "haproxy" "/usr/sbin/haproxy.+/etc/haproxy/haproxy.cfg" - Process "httpd" - Process "memcached" - Process "mongod" - ProcessMatch "mysqld" "/usr/libexec/mysqld" - ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" - ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" - ProcessMatch "qemu-kvm" "/usr/libexec/qemu-kvm" - ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" - Process "redis-server" - ProcessMatch "tuskar-api" "python.+tuskar-api" + + # Neutron (OpenStack Installed) + ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 9 + + # Nova (OpenStack Installed) + ProcessMatch "nova-compute" "python.+nova-compute" # 9 + + # OVS (OpenStack Installed) + ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 9 + ProcessMatch "ovsdb-client" "/bin/ovsdb-client" # 9 + ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 9 + + # QEMU (OpenStack Installed) + ProcessMatch "qemu-kvm" "/usr/libexec/qemu-kvm" # 9 diff --git a/ansible/install/roles/collectd-openstack/templates/controller.collectd.conf.j2 b/ansible/install/roles/collectd-openstack/templates/controller.collectd.conf.j2 index b271b89ce..ba8b42334 100644 --- a/ansible/install/roles/collectd-openstack/templates/controller.collectd.conf.j2 +++ b/ansible/install/roles/collectd-openstack/templates/controller.collectd.conf.j2 @@ -93,104 +93,121 @@ PreCacheChain "PreCache" +# (akrzos) Including the version of OpenStack that the process was verified as running after +# OpenStack Installation with a comment at the end of each Process/ProcessMath statement. +# A Minus before the version means the process was not found in that version. (Ex -9) - # Ceilometer - ProcessMatch "ceilometer-agent-central" "python.+ceilometer-agent-central" - ProcessMatch "ceilometer-agent-compute" "python.+ceilometer-agent-compute" - ProcessMatch "ceilometer-agent-notification" "python.+ceilometer-agent-notification" - ProcessMatch "ceilometer-alarm-evaluator" "python.+ceilometer-alarm-evaluator" - ProcessMatch "ceilometer-alarm-notifier" "python.+ceilometer-alarm-notifier" - ProcessMatch "ceilometer-api" "python.+ceilometer-api" - ProcessMatch "ceilometer-collector" "python.+ceilometer-collector" - ProcessMatch "ceilometer-polling" "python.+ceilometer-polling" + # Aodh (OpenStack Installed) + ProcessMatch "aodh-evaluator" "python.+aodh-evaluator" # 9 + ProcessMatch "aodh-listener" "python.+aodh-listener" # 9 + ProcessMatch "aodh-notifier" "python.+aodh-notifier" # 9 - # Ceph - ProcessMatch "ceph-mon" "^/usr/bin/ceph-mon" - ProcessMatch "ceph-osd" "^/usr/bin/ceph-osd" - ProcessMatch "diamond" "python.+diamond" - ProcessMatch "salt-minion" "python.+salt-minion" + # Ceilometer (OpenStack Installed) + ProcessMatch "ceilometer-agent-central" "python.+ceilometer-agent-central" # -9 + ProcessMatch "ceilometer-agent-compute" "python.+ceilometer-agent-compute" # -9 + ProcessMatch "ceilometer-agent-notification" "python.+ceilometer-agent-notification" # 9 + ProcessMatch "ceilometer-alarm-evaluator" "python.+ceilometer-alarm-evaluator" # -9 + ProcessMatch "ceilometer-alarm-notifier" "python.+ceilometer-alarm-notifier" # -9 + ProcessMatch "ceilometer-api" "python.+ceilometer-api" # 9 + ProcessMatch "ceilometer-collector" "python.+ceilometer-collector" # 9 + ProcessMatch "ceilometer-polling" "python.+ceilometer-polling" # 9 - # Cinder - ProcessMatch "cinder-api" "python.+cinder-api" - ProcessMatch "cinder-scheduler" "python.+cinder-scheduler" - ProcessMatch "cinder-volume" "python.+cinder-volume" + # Ceph (OpenStack Installed) + ProcessMatch "ceph-mon" "^/usr/bin/ceph-mon" # -9 + ProcessMatch "ceph-osd" "^/usr/bin/ceph-osd" # -9 + ProcessMatch "diamond" "python.+diamond" # -9 + ProcessMatch "salt-minion" "python.+salt-minion" # -9 - # Glance - ProcessMatch "glance-api" "python.+glance-api" - ProcessMatch "glance-registry" "python.+glance-registry" - - # Heat - ProcessMatch "heat-api" "python.+heat-api" - ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" - ProcessMatch "heat-api-cloudwatch" "python.+heat-api-cloudwatch" - ProcessMatch "heat-engine" "python.+heat-engine" - - # Ironic - ProcessMatch "ironic-api" "python.+ironic-api" - ProcessMatch "ironic-conductor" "python.+ironic-conductor" - - # Keystone - ProcessMatch "keystone-all" "python.+keystone-all" - ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" - ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" - - # Neutron - ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" - ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" - ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" - ProcessMatch "neutron-ns-metadata-proxy" "python.+neutron-ns-metadata-proxy" - ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" - ProcessMatch "neutron-server" "python.+neutron-server" - - # Nova Processes - ProcessMatch "nova-api" "python.+nova-api" - ProcessMatch "nova-cert" "python.+nova-cert" - ProcessMatch "nova-compute" "python.+nova-compute" - ProcessMatch "nova-conductor" "python.+nova-conductor" - ProcessMatch "nova-consoleauth" "python.+nova-consoleauth" - ProcessMatch "nova-novncproxy" "python.+nova-novncproxy" - ProcessMatch "nova-scheduler" "python.+nova-scheduler" - - # Swift - ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" - ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" - ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" - ProcessMatch "swift-account-server" "python.+swift-account-server" - ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" - ProcessMatch "swift-container-updater" "python.+swift-container-updater" - ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" - ProcessMatch "swift-container-server" "python.+swift-container-server" - ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" - ProcessMatch "swift-object-updater" "python.+swift-object-updater" - ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" - ProcessMatch "swift-object-server" "python.+swift-object-server" - ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" - - # Pacemaker - ProcessMatch "pacemakerd" "/usr/sbin/pacemakerd" - ProcessMatch "cib" "/usr/libexec/pacemaker/cib" - ProcessMatch "stonithd" "/usr/libexec/pacemaker/stonithd" - ProcessMatch "attrd" "/usr/libexec/pacemaker/attrd" - ProcessMatch "pengine" "/usr/libexec/pacemaker/pengine" - ProcessMatch "crmd" "/usr/libexec/pacemaker/crmd" - ProcessMatch "lrmd" "/usr/libexec/pacemaker/lrmd" - ProcessMatch "pcsd" "^/usr/bin/ruby.+/usr/lib/pcsd" + # Cinder (OpenStack Installed) + ProcessMatch "cinder-api" "python.+cinder-api" # 9 + ProcessMatch "cinder-scheduler" "python.+cinder-scheduler" # 9 + ProcessMatch "cinder-volume" "python.+cinder-volume" # 9 + # Collectd (Browbeat Installed) ProcessMatch "collectd" "/usr/sbin/collectd.+-C.+/etc/collectd.conf" - Process "corosync" - ProcessMatch "dnsmasq" "^dnsmasq.+" - ProcessMatch "dnsmasq-ironic" "/sbin/dnsmasq.+/etc/ironic-discoverd/dnsmasq.conf" - ProcessMatch "haproxy" "/usr/sbin/haproxy.+/etc/haproxy/haproxy.cfg" - Process "httpd" - Process "memcached" - Process "mongod" - ProcessMatch "mysqld" "/usr/libexec/mysqld" - ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" - ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" - ProcessMatch "qemu-kvm" "/usr/libexec/qemu-kvm" - ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" - Process "redis-server" - ProcessMatch "tuskar-api" "python.+tuskar-api" + + # Glance (OpenStack Installed) + ProcessMatch "glance-api" "python.+glance-api" # 9 + ProcessMatch "glance-registry" "python.+glance-registry" # 9 + + # Gnocchi (OpenStack Installed) + ProcessMatch "gnocchi-metricd" "python.+gnocchi-metricd" # 9 + ProcessMatch "gnocchi-statsd" "python.+gnocchi-statsd" # 9 + + # Everything Else (OpenStack Installed) + # (Processes displayed under "Everything Else" on Grafana Dashboards) + ProcessMatch "dnsmasq" "^dnsmasq.+" # -9 + ProcessMatch "haproxy" "/usr/sbin/haproxy.+/etc/haproxy/haproxy.cfg" # 9 + Process "httpd" # 9 + Process "memcached" # 9 + Process "mongod" # 9 + ProcessMatch "mysqld" "/usr/libexec/mysqld" # 9 + ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" # 9 + Process "redis-server" # 9 + ProcessMatch "tuskar-api" "python.+tuskar-api" # -9 + + # Heat (OpenStack Installed) + ProcessMatch "heat-api" "python.+heat-api" # 9 + ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" # 9 + ProcessMatch "heat-api-cloudwatch" "python.+heat-api-cloudwatch" # 9 + ProcessMatch "heat-engine" "python.+heat-engine" # 9 + + # Keystone (OpenStack Installed) + ProcessMatch "keystone-all" "python.+keystone-all" # 7,8,-9 + ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" # 9 + ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" # 9 + + # Neutron (OpenStack Installed) + ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" # 9 + ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" # 9 + ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" # 9 + ProcessMatch "neutron-ns-metadata-proxy" "python.+neutron-ns-metadata-proxy" # -9 + ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 9 + ProcessMatch "neutron-server" "python.+neutron-server" # 9 + + # Nova (OpenStack Installed) + ProcessMatch "nova-api" "python.+nova-api" # 9 + ProcessMatch "nova-cert" "python.+nova-cert" # -9 + ProcessMatch "nova-compute" "python.+nova-compute" # -9 + ProcessMatch "nova-conductor" "python.+nova-conductor" # 9 + ProcessMatch "nova-consoleauth" "python.+nova-consoleauth" # 9 + ProcessMatch "nova-novncproxy" "python.+nova-novncproxy" # 9 + ProcessMatch "nova-scheduler" "python.+nova-scheduler" # 9 + + # OVS (OpenStack Installed) + ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 9 + ProcessMatch "ovsdb-client" "/bin/ovsdb-client" # 9 + ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 9 + + # Sahara (OpenStack Installed) + ProcessMatch "sahara-api" "python.+sahara-api" # 9 + ProcessMatch "sahara-engine" "python.+sahara-engine" # 9 + + # Swift (OpenStack Installed) + ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" # 9 + ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" # 9 + ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" # 9 + ProcessMatch "swift-account-server" "python.+swift-account-server" # 9 + ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" # 9 + ProcessMatch "swift-container-updater" "python.+swift-container-updater" # 9 + ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" # 9 + ProcessMatch "swift-container-server" "python.+swift-container-server" # 9 + ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" # 9 + ProcessMatch "swift-object-updater" "python.+swift-object-updater" # 9 + ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" # 9 + ProcessMatch "swift-object-server" "python.+swift-object-server" # 9 + ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" # 9 + + # Pacemaker / Corosync (OpenStack Installed) + ProcessMatch "attrd" "/usr/libexec/pacemaker/attrd" # 9 + ProcessMatch "cib" "/usr/libexec/pacemaker/cib" # 9 + Process "corosync" # 9 + ProcessMatch "crmd" "/usr/libexec/pacemaker/crmd" # 9 + ProcessMatch "lrmd" "/usr/libexec/pacemaker/lrmd" # 9 + ProcessMatch "pacemakerd" "/usr/sbin/pacemakerd" # 9 + ProcessMatch "pcsd" "^/usr/bin/ruby.+/usr/lib/pcsd" # 9 + ProcessMatch "pengine" "/usr/libexec/pacemaker/pengine" # 9 + ProcessMatch "stonithd" "/usr/libexec/pacemaker/stonithd" # 9 diff --git a/ansible/install/roles/collectd-openstack/templates/undercloud.collectd.conf.j2 b/ansible/install/roles/collectd-openstack/templates/undercloud.collectd.conf.j2 index 7dabb4955..7676fe19e 100644 --- a/ansible/install/roles/collectd-openstack/templates/undercloud.collectd.conf.j2 +++ b/ansible/install/roles/collectd-openstack/templates/undercloud.collectd.conf.j2 @@ -89,104 +89,113 @@ PreCacheChain "PreCache" +# (akrzos) Including the version of OpenStack that the process was verified as running after +# OpenStack Installation with a comment at the end of each Process/ProcessMath statement. +# A Minus before the version means the process was not found in that version. (Ex -9) - # Ceilometer - ProcessMatch "ceilometer-agent-central" "python.+ceilometer-agent-central" - ProcessMatch "ceilometer-agent-compute" "python.+ceilometer-agent-compute" - ProcessMatch "ceilometer-agent-notification" "python.+ceilometer-agent-notification" - ProcessMatch "ceilometer-alarm-evaluator" "python.+ceilometer-alarm-evaluator" - ProcessMatch "ceilometer-alarm-notifier" "python.+ceilometer-alarm-notifier" - ProcessMatch "ceilometer-api" "python.+ceilometer-api" - ProcessMatch "ceilometer-collector" "python.+ceilometer-collector" - ProcessMatch "ceilometer-polling" "python.+ceilometer-polling" + # Aodh (OpenStack Installed) + ProcessMatch "aodh-evaluator" "python.+aodh-evaluator" # 9 + ProcessMatch "aodh-listener" "python.+aodh-listener" # 9 + ProcessMatch "aodh-notifier" "python.+aodh-notifier" # 9 - # Ceph - ProcessMatch "ceph-mon" "^/usr/bin/ceph-mon" - ProcessMatch "ceph-osd" "^/usr/bin/ceph-osd" - ProcessMatch "diamond" "python.+diamond" - ProcessMatch "salt-minion" "python.+salt-minion" - - # Cinder - ProcessMatch "cinder-api" "python.+cinder-api" - ProcessMatch "cinder-scheduler" "python.+cinder-scheduler" - ProcessMatch "cinder-volume" "python.+cinder-volume" - - # Glance - ProcessMatch "glance-api" "python.+glance-api" - ProcessMatch "glance-registry" "python.+glance-registry" - - # Heat - ProcessMatch "heat-api" "python.+heat-api" - ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" - ProcessMatch "heat-api-cloudwatch" "python.+heat-api-cloudwatch" - ProcessMatch "heat-engine" "python.+heat-engine" - - # Ironic - ProcessMatch "ironic-api" "python.+ironic-api" - ProcessMatch "ironic-conductor" "python.+ironic-conductor" - - # Keystone - ProcessMatch "keystone-all" "python.+keystone-all" - ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" - ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" - - # Neutron - ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" - ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" - ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" - ProcessMatch "neutron-ns-metadata-proxy" "python.+neutron-ns-metadata-proxy" - ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" - ProcessMatch "neutron-server" "python.+neutron-server" - - # Nova Processes - ProcessMatch "nova-api" "python.+nova-api" - ProcessMatch "nova-cert" "python.+nova-cert" - ProcessMatch "nova-compute" "python.+nova-compute" - ProcessMatch "nova-conductor" "python.+nova-conductor" - ProcessMatch "nova-consoleauth" "python.+nova-consoleauth" - ProcessMatch "nova-novncproxy" "python.+nova-novncproxy" - ProcessMatch "nova-scheduler" "python.+nova-scheduler" - - # Swift - ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" - ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" - ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" - ProcessMatch "swift-account-server" "python.+swift-account-server" - ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" - ProcessMatch "swift-container-updater" "python.+swift-container-updater" - ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" - ProcessMatch "swift-container-server" "python.+swift-container-server" - ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" - ProcessMatch "swift-object-updater" "python.+swift-object-updater" - ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" - ProcessMatch "swift-object-server" "python.+swift-object-server" - ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" - - # Pacemaker - ProcessMatch "pacemakerd" "/usr/sbin/pacemakerd" - ProcessMatch "cib" "/usr/libexec/pacemaker/cib" - ProcessMatch "stonithd" "/usr/libexec/pacemaker/stonithd" - ProcessMatch "attrd" "/usr/libexec/pacemaker/attrd" - ProcessMatch "pengine" "/usr/libexec/pacemaker/pengine" - ProcessMatch "crmd" "/usr/libexec/pacemaker/crmd" - ProcessMatch "lrmd" "/usr/libexec/pacemaker/lrmd" - ProcessMatch "pcsd" "^/usr/bin/ruby.+/usr/lib/pcsd" + # Ceilometer (OpenStack Installed) + ProcessMatch "ceilometer-agent-central" "python.+ceilometer-agent-central" # -9 + ProcessMatch "ceilometer-agent-compute" "python.+ceilometer-agent-compute" # -9 + ProcessMatch "ceilometer-agent-notification" "python.+ceilometer-agent-notification" # 9 + ProcessMatch "ceilometer-alarm-evaluator" "python.+ceilometer-alarm-evaluator" # -9 + ProcessMatch "ceilometer-alarm-notifier" "python.+ceilometer-alarm-notifier" # -9 + ProcessMatch "ceilometer-api" "python.+ceilometer-api" # 9 + ProcessMatch "ceilometer-collector" "python.+ceilometer-collector" # 9 + ProcessMatch "ceilometer-polling" "python.+ceilometer-polling" # 9 + # Collectd (Browbeat Installed) ProcessMatch "collectd" "/usr/sbin/collectd.+-C.+/etc/collectd.conf" - Process "corosync" - ProcessMatch "dnsmasq" "^dnsmasq.+" - ProcessMatch "dnsmasq-ironic" "/sbin/dnsmasq.+/etc/ironic-discoverd/dnsmasq.conf" - ProcessMatch "haproxy" "/usr/sbin/haproxy.+/etc/haproxy/haproxy.cfg" - Process "httpd" - Process "memcached" - Process "mongod" - ProcessMatch "mysqld" "/usr/libexec/mysqld" - ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" - ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" - ProcessMatch "qemu-kvm" "/usr/libexec/qemu-kvm" - ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" - Process "redis-server" - ProcessMatch "tuskar-api" "python.+tuskar-api" + + # Docker Registry (OpenStack Installed) + ProcessMatch "docker-registry" "python.+/usr/bin/gunicorn.+docker_registry" # 9 + + # Glance (OpenStack Installed) + ProcessMatch "glance-api" "python.+glance-api" # 9 + ProcessMatch "glance-registry" "python.+glance-registry" # 9 + + # Everything Else (OpenStack Installed) + # (Processes displayed under "Everything Else" on Grafana Dashboards) + ProcessMatch "dnsmasq" "^dnsmasq.+" # 9 + ProcessMatch "haproxy" "/usr/sbin/haproxy.+/etc/haproxy/haproxy.cfg" # -9 + Process "httpd" # 9 + Process "memcached" # 9 + Process "mongod" # -9 + ProcessMatch "mysqld" "/usr/libexec/mysqld" # 9 + ProcessMatch "qemu-kvm" "/usr/libexec/qemu-kvm" # -9 + ProcessMatch "rabbitmq" "/usr/lib64/erlang/erts-.+/bin/beam.smp" # 9 + Process "redis-server" # -9 + ProcessMatch "tuskar-api" "python.+tuskar-api" # -9 + + # Heat (OpenStack Installed) + ProcessMatch "heat-api" "python.+heat-api" # 9 + ProcessMatch "heat-api-cfn" "python.+heat-api-cfn" # 9 + ProcessMatch "heat-api-cloudwatch" "python.+heat-api-cloudwatch" # -9 + ProcessMatch "heat-engine" "python.+heat-engine" # 9 + + # Ironic (OpenStack Installed) + ProcessMatch "ironic-api" "python.+ironic-api" # 9 + ProcessMatch "ironic-conductor" "python.+ironic-conductor" # 9 + ProcessMatch "ironic-inspector" "python.+ironic-inspector" # 9 + ProcessMatch "dnsmasq-ironic" "/sbin/dnsmasq.+/etc/ironic-discoverd/dnsmasq.conf" # -9 + ProcessMatch "dnsmasq-ironicinspector" "/sbin/dnsmasq.+/etc/ironic-inspector/" # 9 + + # Keystone (OpenStack Installed) + ProcessMatch "keystone-all" "python.+keystone-all" # 7,8,-9 + ProcessMatch "keystone-admin" "keystone-admin.*-DFOREGROUND" # 9 + ProcessMatch "keystone-main" "keystone-main.*-DFOREGROUND" # 9 + + # Neutron (OpenStack Installed) + ProcessMatch "neutron-dhcp-agent" "python.+neutron-dhcp-agent" # 9 + ProcessMatch "neutron-l3-agent" "python.+neutron-l3-agent" # -9 + ProcessMatch "neutron-metadata-agent" "python.+neutron-metadata-agent" # -9 + ProcessMatch "neutron-ns-metadata-proxy" "python.+neutron-ns-metadata-proxy" # -9 + ProcessMatch "neutron-openvswitch-agent" "python.+neutron-openvswitch-agent" # 9 + ProcessMatch "neutron-server" "python.+neutron-server" # 9 + + # Nova (OpenStack Installed) + ProcessMatch "nova-api" "python.+nova-api" # 9 + ProcessMatch "nova-cert" "python.+nova-cert" # 9 + ProcessMatch "nova-compute" "python.+nova-compute" # 9 + ProcessMatch "nova-conductor" "python.+nova-conductor" # 9 + ProcessMatch "nova-consoleauth" "python.+nova-consoleauth" # -9 + ProcessMatch "nova-novncproxy" "python.+nova-novncproxy" # -9 + ProcessMatch "nova-scheduler" "python.+nova-scheduler" # 9 + + # OVS (OpenStack Installed) + ProcessMatch "ovs-vswitchd" "ovs-vswitchd.+openvswitch" # 9 + ProcessMatch "ovsdb-client" "/bin/ovsdb-client" # 9 + ProcessMatch "ovsdb-server" "ovsdb-server.+openvswitch" # 9 + + # Swift (OpenStack Installed) + ProcessMatch "swift-account-auditor" "python.+swift-account-auditor" # 9 + ProcessMatch "swift-account-reaper" "python.+swift-account-reaper" # 9 + ProcessMatch "swift-account-replicator" "python.+swift-account-replicator" # 9 + ProcessMatch "swift-account-server" "python.+swift-account-server" # 9 + ProcessMatch "swift-container-auditor" "python.+swift-container-auditor" # 9 + ProcessMatch "swift-container-updater" "python.+swift-container-updater" # 9 + ProcessMatch "swift-container-replicator" "python.+swift-container-replicator" # 9 + ProcessMatch "swift-container-server" "python.+swift-container-server" # 9 + ProcessMatch "swift-object-auditor" "python.+swift-object-auditor" # 9 + ProcessMatch "swift-object-updater" "python.+swift-object-updater" # 9 + ProcessMatch "swift-object-replicator" "python.+swift-object-replicator" # 9 + ProcessMatch "swift-object-server" "python.+swift-object-server" # 9 + ProcessMatch "swift-proxy-server" "python.+swift-proxy-server" # 9 + + # Pacemaker / Corosync (OpenStack Installed) + ProcessMatch "attrd" "/usr/libexec/pacemaker/attrd" # 9 + ProcessMatch "cib" "/usr/libexec/pacemaker/cib" # 9 + Process "corosync" # 9 + ProcessMatch "crmd" "/usr/libexec/pacemaker/crmd" # 9 + ProcessMatch "lrmd" "/usr/libexec/pacemaker/lrmd" # 9 + ProcessMatch "pacemakerd" "/usr/sbin/pacemakerd" # 9 + ProcessMatch "pcsd" "^/usr/bin/ruby.+/usr/lib/pcsd" # 9 + ProcessMatch "pengine" "/usr/libexec/pacemaker/pengine" # 9 + ProcessMatch "stonithd" "/usr/libexec/pacemaker/stonithd" # 9 diff --git a/ansible/install/roles/dashboard-generic/tasks/main.yml b/ansible/install/roles/dashboard-generic/tasks/main.yml deleted file mode 100644 index 76d7bca6e..000000000 --- a/ansible/install/roles/dashboard-generic/tasks/main.yml +++ /dev/null @@ -1,26 +0,0 @@ ---- -# -# Upload Generic Machine Dashboards to Grafana -# - -- name: Remove existing dashboards - command: "curl -X DELETE -H 'Content-Type: application/json' http://{{grafana_username}}:{{grafana_password}}@{{grafana_host}}:{{grafana_port}}/api/dashboards/db/{{item.process_list_name|lower}}-general-system-performance" - when: overwrite_existing - with_items: "{{dashboards}}" - -- name: Ensure {{role_path}}/files directory exists - file: path={{role_path}}/files state=directory - -- name: Generate dashboards - template: - src: "{{item.template_name}}_general_system_performance.json.j2" - dest: "{{role_path}}/files/{{item.process_list_name}}_general_system_performance.json" - with_items: "{{dashboards}}" - -- name: Upload dashboards to grafana - command: "curl -X POST -H 'Content-Type: application/json' -d @{{role_path}}/files/{{item.process_list_name}}_general_system_performance.json http://{{grafana_username}}:{{grafana_password}}@{{grafana_host}}:{{grafana_port}}/api/dashboards/db" - with_items: "{{dashboards}}" - -- name: Remove leftover json file(s) - file: path={{role_path}}/files/{{item.process_list_name}}_general_system_performance.json state=absent - with_items: "{{dashboards}}" 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 deleted file mode 100644 index fd71d865f..000000000 --- a/ansible/install/roles/dashboard-generic/templates/ose_general_system_performance.json.j2 +++ /dev/null @@ -1,2731 +0,0 @@ -{% 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" - ] - }, - { - "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(sumSeries($Cloud.$Node.cpu-*.cpu-system), 'System')" - }, - { - "refId": "B", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-user), 'User')" - }, - { - "refId": "C", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-nice), 'Nice')" - }, - { - "refId": "D", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-steal), 'Steal')" - }, - { - "refId": "E", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-softirq), 'SoftIRQ')" - }, - { - "refId": "F", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-interrupt), 'Interrupt')" - }, - { - "refId": "G", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-wait), 'Wait')" - }, - { - "refId": "H", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-idle), 'Idle')" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "$Cloud - $Node - All CPUs Sum", - "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($Cloud.$Node.$cpus0.cpu-system, 'System')", - "textEditor": false - }, - { - "refId": "B", - "target": "alias($Cloud.$Node.$cpus0.cpu-user, 'User')", - "textEditor": false - }, - { - "refId": "C", - "target": "alias($Cloud.$Node.$cpus0.cpu-nice, 'Nice')", - "textEditor": false - }, - { - "refId": "D", - "target": "alias($Cloud.$Node.$cpus0.cpu-steal, 'Steal')", - "textEditor": false - }, - { - "refId": "E", - "target": "alias($Cloud.$Node.$cpus0.cpu-softirq, 'SoftIRQ')", - "textEditor": false - }, - { - "refId": "F", - "target": "alias($Cloud.$Node.$cpus0.cpu-interrupt, 'Interrupt')", - "textEditor": false - }, - { - "refId": "G", - "target": "alias($Cloud.$Node.$cpus0.cpu-wait, 'Wait')", - "textEditor": false - }, - { - "refId": "H", - "target": "alias($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($Cloud.$Node.$cpus00.cpu-system, 'System')", - "textEditor": false - }, - { - "refId": "B", - "target": "alias($Cloud.$Node.$cpus00.cpu-user, 'User')", - "textEditor": false - }, - { - "refId": "C", - "target": "alias($Cloud.$Node.$cpus00.cpu-nice, 'Nice')", - "textEditor": false - }, - { - "refId": "D", - "target": "alias($Cloud.$Node.$cpus00.cpu-steal, 'Steal')", - "textEditor": false - }, - { - "refId": "E", - "target": "alias($Cloud.$Node.$cpus00.cpu-softirq, 'SoftIRQ')", - "textEditor": false - }, - { - "refId": "F", - "target": "alias($Cloud.$Node.$cpus00.cpu-interrupt, 'Interrupt')", - "textEditor": false - }, - { - "refId": "G", - "target": "alias($Cloud.$Node.$cpus00.cpu-wait, 'Wait')", - "textEditor": false - }, - { - "refId": "H", - "target": "alias($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": 0, - "grid": { - "leftLogBase": 1, - "leftMax": 100, - "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": "null", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [ - { - "alias": "Write", - "transform": "negative-Y" - } - ], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.df-*.percent_bytes-used, 'df-', ''), 2)", - "textEditor": false - } - ], - "timeFrom": null, - "timeShift": null, - "title": "$Cloud - $Node - Partition % Used", - "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" - ] - }, - { - "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($Cloud.$Node.turbostat-cpu*.percent-c0, 2)" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "$Cloud - $Node - turbostat c0%", - "tooltip": { - "shared": true, - "value_type": "cumulative" - }, - "type": "graph", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "percent", - "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($Cloud.$Node.turbostat-cpu*.percent-c1, 2)" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "$Cloud - $Node - turbostat c1%", - "tooltip": { - "shared": true, - "value_type": "cumulative" - }, - "type": "graph", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "percent", - "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/templates/satellite6_general_system_performance.json.j2 b/ansible/install/roles/dashboard-generic/templates/satellite6_general_system_performance.json.j2 deleted file mode 100644 index 71c5bb6ff..000000000 --- a/ansible/install/roles/dashboard-generic/templates/satellite6_general_system_performance.json.j2 +++ /dev/null @@ -1,3338 +0,0 @@ -{% 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" - ] - }, - { - "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(sumSeries($Cloud.$Node.cpu-*.cpu-system), 'System')" - }, - { - "refId": "B", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-user), 'User')" - }, - { - "refId": "C", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-nice), 'Nice')" - }, - { - "refId": "D", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-steal), 'Steal')" - }, - { - "refId": "E", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-softirq), 'SoftIRQ')" - }, - { - "refId": "F", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-interrupt), 'Interrupt')" - }, - { - "refId": "G", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-wait), 'Wait')" - }, - { - "refId": "H", - "target": "alias(sumSeries($Cloud.$Node.cpu-*.cpu-idle), 'Idle')" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "$Cloud - $Node - All CPUs Sum", - "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($Cloud.$Node.$cpus0.cpu-system, 'System')", - "textEditor": false - }, - { - "refId": "B", - "target": "alias($Cloud.$Node.$cpus0.cpu-user, 'User')", - "textEditor": false - }, - { - "refId": "C", - "target": "alias($Cloud.$Node.$cpus0.cpu-nice, 'Nice')", - "textEditor": false - }, - { - "refId": "D", - "target": "alias($Cloud.$Node.$cpus0.cpu-steal, 'Steal')", - "textEditor": false - }, - { - "refId": "E", - "target": "alias($Cloud.$Node.$cpus0.cpu-softirq, 'SoftIRQ')", - "textEditor": false - }, - { - "refId": "F", - "target": "alias($Cloud.$Node.$cpus0.cpu-interrupt, 'Interrupt')", - "textEditor": false - }, - { - "refId": "G", - "target": "alias($Cloud.$Node.$cpus0.cpu-wait, 'Wait')", - "textEditor": false - }, - { - "refId": "H", - "target": "alias($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($Cloud.$Node.$cpus00.cpu-system, 'System')", - "textEditor": false - }, - { - "refId": "B", - "target": "alias($Cloud.$Node.$cpus00.cpu-user, 'User')", - "textEditor": false - }, - { - "refId": "C", - "target": "alias($Cloud.$Node.$cpus00.cpu-nice, 'Nice')", - "textEditor": false - }, - { - "refId": "D", - "target": "alias($Cloud.$Node.$cpus00.cpu-steal, 'Steal')", - "textEditor": false - }, - { - "refId": "E", - "target": "alias($Cloud.$Node.$cpus00.cpu-softirq, 'SoftIRQ')", - "textEditor": false - }, - { - "refId": "F", - "target": "alias($Cloud.$Node.$cpus00.cpu-interrupt, 'Interrupt')", - "textEditor": false - }, - { - "refId": "G", - "target": "alias($Cloud.$Node.$cpus00.cpu-wait, 'Wait')", - "textEditor": false - }, - { - "refId": "H", - "target": "alias($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": 0, - "grid": { - "leftLogBase": 1, - "leftMax": 100, - "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": "null", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [ - { - "alias": "Write", - "transform": "negative-Y" - } - ], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.df-*.percent_bytes-used, 'df-', ''), 2)", - "textEditor": false - } - ], - "timeFrom": null, - "timeShift": null, - "title": "$Cloud - $Node - Partition % Used", - "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" - ] - }, - { - "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($Cloud.$Node.turbostat-cpu*.percent-c0, 2)" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "$Cloud - $Node - turbostat c0%", - "tooltip": { - "shared": true, - "value_type": "cumulative" - }, - "type": "graph", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "percent", - "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($Cloud.$Node.turbostat-cpu*.percent-c1, 2)" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "$Cloud - $Node - turbostat c1%", - "tooltip": { - "shared": true, - "value_type": "cumulative" - }, - "type": "graph", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "percent", - "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(':', '_')}}{{metric.query}}, 0.0001), #A), '{{process}} {{metric.name}}')" - {% else %} - "target": "alias($Cloud.$Node.processes-{{process|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": "Satellite6 {{metrics.name}}" - }, - {% endfor %} -{# End Loop over per-process options here #} - { - "title": "Postgresql", - "height": "250px", - "editable": true, - "collapse": true, - "panels": [ - { - "title": "$Cloud - $Node - Database Sizes", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "bits", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 1, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.postgresql-*.pg_db_size, 'postgresql-', ''), 2)" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - }, - { - "title": "$Cloud - $Node - Connected Clients", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 0, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.postgresql-*.pg_numbackends, 'postgresql-', ''), 2)" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - }, - { - "title": "$Cloud - $Node - Foreman Heap/Index/Toast Activity", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 0, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.postgresql-foreman.pg_blks-*, 'pg_blks-', ''), 3)" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - }, - { - "title": "$Cloud - $Node - Candlepin Heap/Index/Toast Activity", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 0, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.postgresql-candlepin.pg_blks-*, 'pg_blks-', ''), 3)" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - }, - { - "title": "$Cloud - $Node - Gutterball Heap/Index/Toast Activity", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 0, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.postgresql-gutterball.pg_blks-*, 'pg_blks-', ''), 3)" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - }, - { - "title": "$Cloud - $Node - Foreman Tuple Operations", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 0, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.postgresql-foreman.pg_n_tup_*, 'pg_n_tup_', ''), 3)" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - }, - { - "title": "$Cloud - $Node - Candlepin Tuple Operations", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 0, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.postgresql-candlepin.pg_n_tup_*, 'pg_n_tup_', ''), 3)" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - }, - { - "title": "$Cloud - $Node - Gutterball Tuple Operations", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 0, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasByNode(aliasSub($Cloud.$Node.postgresql-gutterball.pg_n_tup_*, 'pg_n_tup_', ''), 3)" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - }, - { - "title": "$Cloud - $Node - Commits/Rollbacks", - "error": false, - "span": 12, - "editable": true, - "type": "graph", - "isNew": true, - {% if vars.update({'panel_idx': (vars.panel_idx + 1)}) %} {% endif %} - "id": {{vars.panel_idx}}, - "datasource": null, - "renderer": "flot", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "short", - "short" - ], - "grid": { - "leftLogBase": 1, - "leftMax": null, - "rightMax": null, - "leftMin": null, - "rightMin": null, - "rightLogBase": 1, - "threshold1": null, - "threshold2": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "lines": true, - "fill": 0, - "linewidth": 2, - "points": false, - "pointradius": 5, - "bars": false, - "stack": false, - "percentage": false, - "legend": { - "show": true, - "values": true, - "min": true, - "max": true, - "current": true, - "total": false, - "avg": false, - "rightSide": true, - "alignAsTable": true - }, - "nullPointMode": "connected", - "steppedLine": false, - "tooltip": { - "value_type": "cumulative", - "shared": true - }, - "timeFrom": null, - "timeShift": null, - "targets": [ - { - "refId": "A", - "target": "aliasSub(aliasByNode(aliasSub($Cloud.$Node.postgresql-*.pg_xact-commit, 'postgresql-', ''), 2), '$', '-commit')" - }, - { - "refId": "B", - "target": "aliasSub(aliasByNode(aliasSub($Cloud.$Node.postgresql-*.pg_xact-rollback, 'postgresql-', ''), 2), '$', '-rollback')" - } - ], - "aliasColors": {}, - "seriesOverrides": [], - "links": [] - } - ], - "showTitle": true - }, - { - "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 deleted file mode 100644 index a0209a254..000000000 --- a/ansible/install/roles/dashboard-generic/vars/main.yml +++ /dev/null @@ -1,165 +0,0 @@ ---- -# -# Vars to generate Per-Process component of Generic Dashboards -# - -per_process_metrics: - - name: "Process/Thread Counts" - y1units: "short" - metrics: - - name: "Processes" - query: ".ps_count.processes" - - name: "Threads" - query: ".ps_count.threads" - nullPointMode: "connected" - - name: "Process CPU" - y1units: "percent" - metrics: - - name: "System" - query: ".ps_cputime.syst" - - name: "User" - query: ".ps_cputime.user" - nullPointMode: "connected" - - name: "Process Memory" - y1units: "bits" - metrics: - - name: "RSS" - query: ".ps_rss" - - name: "Virtual" - query: ".ps_vm" - nullPointMode: "connected" - - name: "Process Page Faults" - y1units: "short" - metrics: - - name: "Majflt" - query: ".ps_pagefaults.majflt" - - name: "Minflt" - query: ".ps_pagefaults.minflt" - nullPointMode: "connected" - - name: "Process IOPs(Estimated via SYSCALLS)" - y1units: "iops" - metrics: - - name: "Read" - query: ".ps_disk_ops.read" - - name: "Write" - query: ".ps_disk_ops.write" - nullPointMode: "null" - - name: "Process IO Throughput(Estimated via SYSCALLS)" - y1units: "bytes" - metrics: - - name: "Read" - query: ".ps_disk_octets.read" - - name: "Write" - query: ".ps_disk_octets.write" - nullPointMode: "null" - -per_process_panels: - Baremetal: - - name: "httpd" - processes: - - httpd - - name: "Collectd" - processes: - - collectd - Guest: - - name: "httpd" - processes: - - httpd - - name: "Collectd" - processes: - - collectd - Graphite: - - name: "Summerized" - processes: - - carbon-cache - - grafana-server - - httpd - - name: "Carbon" - processes: - - carbon-cache - - name: "Grafana" - processes: - - grafana-server - - name: "httpd" - processes: - - httpd - - name: "Collectd" - processes: - - collectd - OpenShift-Enterprise: - - name: "OpenShift" - processes: - - "openshift master" - - "openshift node" - - name: "etcd" - processes: - - etcd - - 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: - - httpd - - ruby - - name: "DynFlow" - processes: - - dynflow_executor - - dynflow_executor_monitor - - name: "ElasticSearch" - processes: - - Elasticsearch - - name: "Foreman-SmartProxy" - processes: - - Foreman-SmartProxy - - name: "Mongodb" - processes: - - mongod - - name: "Passenger" - processes: - - Passenger-Forman - - Passenger-Puppet - - PassengerHelperAgent - - PassengerLoggingAgent - - PassengerWatchdog - - name: "Postgres" - processes: - - postgres - - name: "Pulp" - processes: - - Pulp-Scheduler - - Pulp-Resource-Manager - - Pulp-Resource-Worker - - name: "Puppet-Agent" - processes: - - Puppet-Agent - - name: "Qpidd Dispatch Router" - processes: - - qdrouterd - - name: "Qpidd" - processes: - - qpidd - - name: "Tomcat" - processes: - - Tomcat - - name: "Background Tasks" - processes: - - "Trends:Counter" - - "LDAP:Refresh_usergroups" - - name: "Collectd" - processes: - - collectd diff --git a/ansible/install/roles/dashboard-openstack/files/cloud_system_performance_comparsion.json b/ansible/install/roles/grafana-dashboards/files/cloud_system_performance_comparsion.json similarity index 59% rename from ansible/install/roles/dashboard-openstack/files/cloud_system_performance_comparsion.json rename to ansible/install/roles/grafana-dashboards/files/cloud_system_performance_comparsion.json index 1db1e52d8..0fb9801b1 100644 --- a/ansible/install/roles/dashboard-openstack/files/cloud_system_performance_comparsion.json +++ b/ansible/install/roles/grafana-dashboards/files/cloud_system_performance_comparsion.json @@ -1,13 +1,13 @@ { "dashboard": { - "id": null, - "title": "Cloud System Performance Comparsion", - "tags": [], - "style": "dark", - "timezone": "browser", + "annotations": { + "list": [] + }, "editable": true, "hideControls": false, - "sharedCrosshair": false, + "id": null, + "links": [], + "overwrite": true, "rows": [ { "collapse": true, @@ -70,72 +70,72 @@ "targets": [ { "refId": "A", - "target": "alias(averageSeries($Cloud1.$Node1.cpu-*.cpu-system), 'Node1 - System')" + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.cpu-*.cpu-system), '$Node1_Timeshift'), 'Node1 - System')" }, { "refId": "B", - "target": "alias(averageSeries($Cloud1.$Node1.cpu-*.cpu-user), 'Node1 - User')" + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.cpu-*.cpu-user), '$Node1_Timeshift'), 'Node1 - User')" }, { "refId": "C", - "target": "alias(averageSeries($Cloud1.$Node1.cpu-*.cpu-nice), 'Node1 - Nice')" + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.cpu-*.cpu-nice), '$Node1_Timeshift'), 'Node1 - Nice')" }, { "refId": "D", - "target": "alias(averageSeries($Cloud1.$Node1.cpu-*.cpu-steal), 'Node1 - Steal')" + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.cpu-*.cpu-steal), '$Node1_Timeshift'), 'Node1 - Steal')" }, { "refId": "E", - "target": "alias(averageSeries($Cloud1.$Node1.cpu-*.cpu-softirq), 'Node1 - SoftIRQ')" + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.cpu-*.cpu-softirq), '$Node1_Timeshift'), 'Node1 - SoftIRQ')" }, { "refId": "F", - "target": "alias(averageSeries($Cloud1.$Node1.cpu-*.cpu-interrupt), 'Node1 - Interrupt')" + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.cpu-*.cpu-interrupt), '$Node1_Timeshift'), 'Node1 - Interrupt')" }, { "refId": "G", - "target": "alias(averageSeries($Cloud1.$Node1.cpu-*.cpu-wait), 'Node1 - Wait')" + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.cpu-*.cpu-wait), '$Node1_Timeshift'), 'Node1 - Wait')" }, { "refId": "H", - "target": "alias(averageSeries($Cloud1.$Node1.cpu-*.cpu-idle), 'Node1 - Idle')" + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.cpu-*.cpu-idle), '$Node1_Timeshift'), 'Node1 - Idle')" }, { "refId": "I", - "target": "alias(averageSeries($Cloud2.$Node2.cpu-*.cpu-system), 'Node2 - System')" + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.cpu-*.cpu-system), '$Node2_Timeshift'), 'Node2 - System')" }, { "refId": "J", - "target": "alias(averageSeries($Cloud2.$Node2.cpu-*.cpu-user), 'Node2 - User')" + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.cpu-*.cpu-user), '$Node2_Timeshift'), 'Node2 - User')" }, { "refId": "K", - "target": "alias(averageSeries($Cloud2.$Node2.cpu-*.cpu-nice), 'Node2 - Nice')" + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.cpu-*.cpu-nice), '$Node2_Timeshift'), 'Node2 - Nice')" }, { "refId": "L", - "target": "alias(averageSeries($Cloud2.$Node2.cpu-*.cpu-steal), 'Node2 - Steal')" + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.cpu-*.cpu-steal), '$Node2_Timeshift'), 'Node2 - Steal')" }, { "refId": "M", - "target": "alias(averageSeries($Cloud2.$Node2.cpu-*.cpu-softirq), 'Node2 - SoftIRQ')" + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.cpu-*.cpu-softirq), '$Node2_Timeshift'), 'Node2 - SoftIRQ')" }, { "refId": "N", - "target": "alias(averageSeries($Cloud2.$Node2.cpu-*.cpu-interrupt), 'Node2 - Interrupt')" + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.cpu-*.cpu-interrupt), '$Node2_Timeshift'), 'Node2 - Interrupt')" }, { "refId": "O", - "target": "alias(averageSeries($Cloud2.$Node2.cpu-*.cpu-wait), 'Node2 - Wait')" + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.cpu-*.cpu-wait), '$Node2_Timeshift'), 'Node2 - Wait')" }, { "refId": "P", - "target": "alias(averageSeries($Cloud2.$Node2.cpu-*.cpu-idle), 'Node2 - Idle')" + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.cpu-*.cpu-idle), '$Node2_Timeshift'), 'Node2 - Idle')" } ], "timeFrom": null, "timeShift": null, - "title": "CPU", + "title": "CPU Average", "tooltip": { "shared": true, "value_type": "individual" @@ -147,17 +147,7 @@ "percent", "short" ] - } - ], - "showTitle": true, - "title": "CPU Comparsion" - }, - { - "title": "Memory Comparsion", - "height": "250px", - "editable": true, - "collapse": true, - "panels": [ + }, { "aliasColors": {}, "bars": false, @@ -214,56 +204,72 @@ "targets": [ { "refId": "A", - "target": "alias(averageSeries($Cloud1.$Node1.memory.memory-slab_unrecl), 'Node1 - Slab Unrecl')" + "target": "alias(sumSeries($Cloud1.$Node1.cpu-*.cpu-system), 'Node1 - System')" }, { "refId": "B", - "target": "alias(averageSeries($Cloud1.$Node1.memory.memory-used), 'Node1 - Used')" + "target": "alias(timeShift(sumSeries($Cloud1.$Node1.cpu-*.cpu-user), '$Node1_Timeshift'), 'Node1 - User')" }, { "refId": "C", - "target": "alias(averageSeries($Cloud1.$Node1.memory.memory-buffered), 'Node1 - Buffered')" + "target": "alias(timeShift(sumSeries($Cloud1.$Node1.cpu-*.cpu-nice), '$Node1_Timeshift'), 'Node1 - Nice')" }, { "refId": "D", - "target": "alias(averageSeries($Cloud1.$Node1.memory.memory-slab_recl), 'Node1 - Slab Recl')" + "target": "alias(timeShift(sumSeries($Cloud1.$Node1.cpu-*.cpu-steal), '$Node1_Timeshift'), 'Node1 - Steal')" }, { "refId": "E", - "target": "alias(averageSeries($Cloud1.$Node1.memory.memory-cached), 'Node1 - Cached')" + "target": "alias(timeShift(sumSeries($Cloud1.$Node1.cpu-*.cpu-softirq), '$Node1_Timeshift'), 'Node1 - SoftIRQ')" }, { "refId": "F", - "target": "alias(averageSeries($Cloud1.$Node1.memory.memory-free), 'Node1 - Free')" + "target": "alias(timeShift(sumSeries($Cloud1.$Node1.cpu-*.cpu-interrupt), '$Node1_Timeshift'), 'Node1 - Interrupt')" }, { "refId": "G", - "target": "alias(averageSeries($Cloud2.$Node2.memory.memory-slab_unrecl), 'Node2 - Slab Unrecl')" + "target": "alias(timeShift(sumSeries($Cloud1.$Node1.cpu-*.cpu-wait), '$Node1_Timeshift'), 'Node1 - Wait')" }, { "refId": "H", - "target": "alias(averageSeries($Cloud2.$Node2.memory.memory-used), 'Node2 - Used')" + "target": "alias(timeShift(sumSeries($Cloud1.$Node1.cpu-*.cpu-idle), '$Node1_Timeshift'), 'Node1 - Idle')" }, { "refId": "I", - "target": "alias(averageSeries($Cloud2.$Node2.memory.memory-buffered), 'Node2 - Buffered')" + "target": "alias(timeShift(sumSeries($Cloud2.$Node2.cpu-*.cpu-system), '$Node2_Timeshift'), 'Node2 - System')" }, { "refId": "J", - "target": "alias(averageSeries($Cloud2.$Node2.memory.memory-slab_recl), 'Node2 - Slab Recl')" + "target": "alias(timeShift(sumSeries($Cloud2.$Node2.cpu-*.cpu-user), '$Node2_Timeshift'), 'Node2 - User')" }, { "refId": "K", - "target": "alias(averageSeries($Cloud2.$Node2.memory.memory-cached), 'Node2 - Cached')" + "target": "alias(timeShift(sumSeries($Cloud2.$Node2.cpu-*.cpu-nice), '$Node2_Timeshift'), 'Node2 - Nice')" }, { "refId": "L", - "target": "alias(averageSeries($Cloud2.$Node2.memory.memory-free), 'Node2 - Free')" + "target": "alias(timeShift(sumSeries($Cloud2.$Node2.cpu-*.cpu-steal), '$Node2_Timeshift'), 'Node2 - Steal')" + }, + { + "refId": "M", + "target": "alias(timeShift(sumSeries($Cloud2.$Node2.cpu-*.cpu-softirq), '$Node2_Timeshift'), 'Node2 - SoftIRQ')" + }, + { + "refId": "N", + "target": "alias(timeShift(sumSeries($Cloud2.$Node2.cpu-*.cpu-interrupt), '$Node2_Timeshift'), 'Node2 - Interrupt')" + }, + { + "refId": "O", + "target": "alias(timeShift(sumSeries($Cloud2.$Node2.cpu-*.cpu-wait), '$Node2_Timeshift'), 'Node2 - Wait')" + }, + { + "refId": "P", + "target": "alias(timeShift(sumSeries($Cloud2.$Node2.cpu-*.cpu-idle), '$Node2_Timeshift'), 'Node2 - Idle')" } ], "timeFrom": null, "timeShift": null, - "title": "Memory in Bytes", + "title": "CPU Sum", "tooltip": { "shared": true, "value_type": "individual" @@ -272,10 +278,19 @@ "x-axis": true, "y-axis": true, "y_formats": [ - "bytes", + "percent", "short" ] - }, + } + ], + "showTitle": true, + "title": "CPU Comparsion" + }, + { + "collapse": true, + "editable": true, + "height": "250px", + "panels": [ { "aliasColors": {}, "bars": false, @@ -286,7 +301,7 @@ "grid": { "leftLogBase": 1, "leftMax": null, - "leftMin": 0, + "leftMin": null, "rightLogBase": 1, "rightMax": null, "rightMin": null, @@ -327,43 +342,161 @@ } ], "span": 12, + "stack": false, + "steppedLine": false, + "targets": [ + { + "refId": "A", + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.memory.memory-slab_unrecl), '$Node1_Timeshift'), 'Node1 - Slab Unrecl')" + }, + { + "refId": "B", + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.memory.memory-used), '$Node1_Timeshift'), 'Node1 - Used')" + }, + { + "refId": "C", + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.memory.memory-buffered), '$Node1_Timeshift'), 'Node1 - Buffered')" + }, + { + "refId": "D", + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.memory.memory-slab_recl), '$Node1_Timeshift'), 'Node1 - Slab Recl')" + }, + { + "refId": "E", + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.memory.memory-cached), '$Node1_Timeshift'), 'Node1 - Cached')" + }, + { + "refId": "F", + "target": "alias(timeShift(averageSeries($Cloud1.$Node1.memory.memory-free), '$Node1_Timeshift'), 'Node1 - Free')" + }, + { + "refId": "G", + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.memory.memory-slab_unrecl), '$Node2_Timeshift'), 'Node2 - Slab Unrecl')" + }, + { + "refId": "H", + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.memory.memory-used), '$Node2_Timeshift'), 'Node2 - Used')" + }, + { + "refId": "I", + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.memory.memory-buffered), '$Node2_Timeshift'), 'Node2 - Buffered')" + }, + { + "refId": "J", + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.memory.memory-slab_recl), '$Node2_Timeshift'), 'Node2 - Slab Recl')" + }, + { + "refId": "K", + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.memory.memory-cached), '$Node2_Timeshift'), 'Node2 - Cached')" + }, + { + "refId": "L", + "target": "alias(timeShift(averageSeries($Cloud2.$Node2.memory.memory-free), '$Node2_Timeshift'), 'Node2 - Free')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "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)" + }, + "id": 4, + "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": "/Node1/i", + "stack": "A" + }, + { + "alias": "/Node2/i", + "stack": "B" + } + ], + "span": 12, "stack": true, "steppedLine": false, "targets": [ { "hide": true, "refId": "A", - "target": "$Cloud1.$Node1.memory.memory-slab_unrecl" + "target": "timeShift($Cloud1.$Node1.memory.memory-slab_unrecl, '$Node1_Timeshift')" }, { "hide": true, "refId": "B", - "target": "$Cloud1.$Node1.memory.memory-used" + "target": "timeShift($Cloud1.$Node1.memory.memory-used, '$Node1_Timeshift')" }, { "hide": true, "refId": "C", - "target": "$Cloud1.$Node1.memory.memory-buffered" + "target": "timeShift($Cloud1.$Node1.memory.memory-buffered, '$Node1_Timeshift')" }, { "hide": true, "refId": "D", - "target": "$Cloud1.$Node1.memory.memory-slab_recl" + "target": "timeShift($Cloud1.$Node1.memory.memory-slab_recl, '$Node1_Timeshift')" }, { "hide": true, "refId": "E", - "target": "$Cloud1.$Node1.memory.memory-cached" + "target": "timeShift($Cloud1.$Node1.memory.memory-cached, '$Node1_Timeshift')" }, { "hide": true, "refId": "F", - "target": "$Cloud1.$Node1.memory.memory-free" + "target": "timeShift($Cloud1.$Node1.memory.memory-free, '$Node1_Timeshift')" }, { "hide": true, "refId": "G", - "target": "sumSeries($Cloud1.$Node1.memory.*)" + "target": "timeShift(sumSeries($Cloud1.$Node1.memory.*), '$Node1_Timeshift')" }, { "refId": "H", @@ -392,37 +525,37 @@ { "hide": true, "refId": "N", - "target": "$Cloud2.$Node2.memory.memory-slab_unrecl" + "target": "timeShift($Cloud2.$Node2.memory.memory-slab_unrecl, '$Node2_Timeshift')" }, { "hide": true, "refId": "O", - "target": "$Cloud2.$Node2.memory.memory-used" + "target": "timeShift($Cloud2.$Node2.memory.memory-used, '$Node2_Timeshift')" }, { "hide": true, "refId": "P", - "target": "$Cloud2.$Node2.memory.memory-buffered" + "target": "timeShift($Cloud2.$Node2.memory.memory-buffered, '$Node2_Timeshift')" }, { "hide": true, "refId": "Q", - "target": "$Cloud2.$Node2.memory.memory-slab_recl" + "target": "timeShift($Cloud2.$Node2.memory.memory-slab_recl, '$Node2_Timeshift')" }, { "hide": true, "refId": "R", - "target": "$Cloud2.$Node2.memory.memory-cached" + "target": "timeShift($Cloud2.$Node2.memory.memory-cached, '$Node2_Timeshift')" }, { "hide": true, "refId": "S", - "target": "$Cloud2.$Node2.memory.memory-free" + "target": "timeShift($Cloud2.$Node2.memory.memory-free, '$Node2_Timeshift')" }, { "hide": true, "refId": "T", - "target": "sumSeries($Cloud2.$Node2.memory.*)" + "target": "timeShift(sumSeries($Cloud2.$Node2.memory.*), '$Node2_Timeshift')" }, { "refId": "U", @@ -465,100 +598,14 @@ ] } ], - "showTitle": true + "showTitle": true, + "title": "Memory Comparsion" }, { - "title": "Disk Comparsion", - "height": "250px", - "editable": true, "collapse": true, + "editable": true, + "height": "250px", "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)" - }, - "id": 4, - "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": "Node1 - Write", - "transform": "negative-Y" - }, - { - "alias": "Node2 - Write", - "transform": "negative-Y" - } - ], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "refId": "A", - "target": "alias($Cloud1.$Node1.$Node1_Disk.disk_ops.read, 'Node1 - Read')" - }, - { - "refId": "B", - "target": "alias($Cloud1.$Node1.$Node1_Disk.disk_ops.write, 'Node1 - Write')" - }, - { - "refId": "C", - "target": "alias($Cloud2.$Node2.$Node2_Disk.disk_ops.read, 'Node2 - Read')" - }, - { - "refId": "D", - "target": "alias($Cloud2.$Node2.$Node2_Disk.disk_ops.write, 'Node2 - Write')" - } - ], - "timeFrom": null, - "timeShift": null, - "title": "iops", - "tooltip": { - "shared": true, - "value_type": "cumulative" - }, - "type": "graph", - "x-axis": true, - "y-axis": true, - "y_formats": [ - "iops", - "short" - ] - }, { "aliasColors": {}, "bars": false, @@ -615,24 +662,24 @@ "targets": [ { "refId": "A", - "target": "alias($Cloud1.$Node1.$Node1_Disk.disk_octets.read, 'Node1 - Read')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Disk.disk_ops.read, '$Node1_Timeshift'), 'Node1 - Read')" }, { "refId": "B", - "target": "alias($Cloud1.$Node1.$Node1_Disk.disk_octets.write, 'Node1 - Write')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Disk.disk_ops.write, '$Node1_Timeshift'), 'Node1 - Write')" }, { "refId": "C", - "target": "alias($Cloud2.$Node2.$Node2_Disk.disk_octets.read, 'Node2 - Read')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Disk.disk_ops.read, '$Node2_Timeshift'), 'Node2 - Read')" }, { "refId": "D", - "target": "alias($Cloud2.$Node2.$Node2_Disk.disk_octets.write, 'Node2 - Write')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Disk.disk_ops.write, '$Node2_Timeshift'), 'Node2 - Write')" } ], "timeFrom": null, "timeShift": null, - "title": "Throughput", + "title": "iops", "tooltip": { "shared": true, "value_type": "cumulative" @@ -641,20 +688,10 @@ "x-axis": true, "y-axis": true, "y_formats": [ - "Bps", + "iops", "short" ] - } - - ], - "showTitle": true - }, - { - "title": "Network Comparsion", - "height": "250px", - "editable": true, - "collapse": true, - "panels": [ + }, { "aliasColors": {}, "bars": false, @@ -697,11 +734,11 @@ "renderer": "flot", "seriesOverrides": [ { - "alias": "Node1 - RX", + "alias": "Node1 - Write", "transform": "negative-Y" }, { - "alias": "Node2 - RX", + "alias": "Node2 - Write", "transform": "negative-Y" } ], @@ -711,24 +748,24 @@ "targets": [ { "refId": "A", - "target": "alias($Cloud1.$Node1.$Node1_Interface.if_packets.tx, 'Node1 - TX')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Disk.disk_octets.read, '$Node1_Timeshift'), 'Node1 - Read')" }, { "refId": "B", - "target": "alias($Cloud1.$Node1.$Node1_Interface.if_packets.rx, 'Node1 - RX')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Disk.disk_octets.write, '$Node1_Timeshift'), 'Node1 - Write')" }, { "refId": "C", - "target": "alias($Cloud2.$Node2.$Node2_Interface.if_packets.tx, 'Node2 - TX')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Disk.disk_octets.read, '$Node2_Timeshift'), 'Node2 - Read')" }, { "refId": "D", - "target": "alias($Cloud2.$Node2.$Node2_Interface.if_packets.rx, 'Node2 - RX')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Disk.disk_octets.write, '$Node2_Timeshift'), 'Node2 - Write')" } ], "timeFrom": null, "timeShift": null, - "title": "pps", + "title": "Throughput", "tooltip": { "shared": true, "value_type": "cumulative" @@ -737,7 +774,7 @@ "x-axis": true, "y-axis": true, "y_formats": [ - "pps", + "Bps", "short" ] }, @@ -781,40 +818,23 @@ "pointradius": 5, "points": false, "renderer": "flot", - "seriesOverrides": [ - { - "alias": "Node1 - RX", - "transform": "negative-Y" - }, - { - "alias": "Node2 - RX", - "transform": "negative-Y" - } - ], + "seriesOverrides": [], "span": 12, "stack": false, "steppedLine": false, "targets": [ { "refId": "A", - "target": "alias(scale($Cloud1.$Node1.$Node1_Interface.if_octets.tx, 8), 'Node1 - TX')" + "target": "alias(timeShift(scale($Cloud1.$Node1.$Node1_Disk.disk_io_time.io_time, 0.1), '$Node1_Timeshift'), 'Node1 - Time')" }, { "refId": "B", - "target": "alias(scale($Cloud1.$Node1.$Node1_Interface.if_octets.rx, 8), 'Node1 - RX')" - }, - { - "refId": "C", - "target": "alias(scale($Cloud2.$Node2.$Node2_Interface.if_octets.tx, 8), 'Node2 - TX')" - }, - { - "refId": "D", - "target": "alias(scale($Cloud2.$Node2.$Node2_Interface.if_octets.rx, 8), 'Node2 - RX')" + "target": "alias(timeShift(scale($Cloud2.$Node2.$Node2_Disk.disk_io_time.io_time, 0.1), '$Node2_Timeshift'), 'Node2 - Time')" } ], "timeFrom": null, "timeShift": null, - "title": "Throughput", + "title": "% Time", "tooltip": { "shared": true, "value_type": "cumulative" @@ -823,10 +843,19 @@ "x-axis": true, "y-axis": true, "y_formats": [ - "bps", + "percent", "short" ] - }, + } + ], + "showTitle": true, + "title": "Disk Comparsion" + }, + { + "collapse": true, + "editable": true, + "height": "250px", + "panels": [ { "aliasColors": {}, "bars": false, @@ -839,8 +868,8 @@ "leftMax": null, "leftMin": null, "rightLogBase": 1, - "rightMax": 100, - "rightMin": 0, + "rightMax": null, + "rightMin": null, "threshold1": null, "threshold1Color": "rgba(216, 200, 27, 0.27)", "threshold2": null, @@ -850,7 +879,7 @@ "isNew": true, "legend": { "alignAsTable": true, - "avg": false, + "avg": true, "current": true, "max": true, "min": true, @@ -869,12 +898,12 @@ "renderer": "flot", "seriesOverrides": [ { - "alias": "Node1 - % Used", - "yaxis": 2 + "alias": "Node1 - RX", + "transform": "negative-Y" }, { - "alias": "Node2 - % Used", - "yaxis": 2 + "alias": "Node2 - RX", + "transform": "negative-Y" } ], "span": 12, @@ -883,32 +912,24 @@ "targets": [ { "refId": "A", - "target": "alias($Cloud1.$Node1.conntrack.conntrack-max, 'Node1 - Max')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Interface.if_packets.tx, '$Node1_Timeshift'), 'Node1 - TX')" }, { "refId": "B", - "target": "alias($Cloud1.$Node1.conntrack.conntrack, 'Node1 - Used')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Interface.if_packets.rx, '$Node1_Timeshift'), 'Node1 - RX')" }, { "refId": "C", - "target": "alias($Cloud1.$Node1.conntrack.percent-used, 'Node1 - % Used')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Interface.if_packets.tx, '$Node2_Timeshift'), 'Node2 - TX')" }, { "refId": "D", - "target": "alias($Cloud2.$Node2.conntrack.conntrack-max, 'Node2 - Max')" - }, - { - "refId": "E", - "target": "alias($Cloud2.$Node2.conntrack.conntrack, 'Node2 - Used')" - }, - { - "refId": "F", - "target": "alias($Cloud2.$Node2.conntrack.percent-used, 'Node2 - % Used')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Interface.if_packets.rx, '$Node2_Timeshift'), 'Node2 - RX')" } ], "timeFrom": null, "timeShift": null, - "title": "ConnTrack", + "title": "pps", "tooltip": { "shared": true, "value_type": "cumulative" @@ -917,20 +938,10 @@ "x-axis": true, "y-axis": true, "y_formats": [ - "short", - "percent" + "pps", + "short" ] - } - - ], - "showTitle": true - }, - { - "title": "Node Process Comparsion", - "height": "250px", - "editable": true, - "collapse": true, - "panels": [ + }, { "aliasColors": {}, "bars": false, @@ -954,7 +965,7 @@ "isNew": true, "legend": { "alignAsTable": true, - "avg": false, + "avg": true, "current": true, "max": true, "min": true, @@ -973,12 +984,12 @@ "renderer": "flot", "seriesOverrides": [ { - "alias": "/Node1/i", - "stack": "A" + "alias": "Node1 - RX", + "transform": "negative-Y" }, { - "alias": "/Node2/i", - "stack": "B" + "alias": "Node2 - RX", + "transform": "negative-Y" } ], "span": 12, @@ -987,76 +998,44 @@ "targets": [ { "refId": "A", - "target": "alias($Cloud1.$Node1.processes.ps_state-running, 'Node1 - Running')" + "target": "alias(timeShift(scale($Cloud1.$Node1.$Node1_Interface.if_octets.tx, 8), '$Node1_Timeshift'), 'Node1 - TX')" }, { "refId": "B", - "target": "alias($Cloud1.$Node1.processes.ps_state-stopped, 'Node1 - Stopped')" + "target": "alias(timeShift(scale($Cloud1.$Node1.$Node1_Interface.if_octets.rx, 8), '$Node1_Timeshift'), 'Node1 - RX')" }, { "refId": "C", - "target": "alias($Cloud1.$Node1.processes.ps_state-sleeping, 'Node1 - Sleeping')" + "target": "alias(timeShift(scale($Cloud2.$Node2.$Node2_Interface.if_octets.tx, 8), '$Node2_Timeshift'), 'Node2 - TX')" }, { "refId": "D", - "target": "alias($Cloud1.$Node1.processes.ps_state-blocked, 'Node1 - Blocked')" - }, - { - "refId": "E", - "target": "alias($Cloud1.$Node1.processes.ps_state-paging, 'Node1 - Paging')" - }, - { - "refId": "F", - "target": "alias($Cloud1.$Node1.processes.ps_state-zombies, 'Node1 - Zombies')" - }, - { - "refId": "G", - "target": "alias($Cloud2.$Node2.processes.ps_state-running, 'Node2 - Running')" - }, - { - "refId": "H", - "target": "alias($Cloud2.$Node2.processes.ps_state-stopped, 'Node2 - Stopped')" - }, - { - "refId": "I", - "target": "alias($Cloud2.$Node2.processes.ps_state-sleeping, 'Node2 - Sleeping')" - }, - { - "refId": "J", - "target": "alias($Cloud2.$Node2.processes.ps_state-blocked, 'Node2 - Blocked')" - }, - { - "refId": "K", - "target": "alias($Cloud2.$Node2.processes.ps_state-paging, 'Node2 - Paging')" - }, - { - "refId": "L", - "target": "alias($Cloud2.$Node2.processes.ps_state-zombies, 'Node2 - Zombies')" + "target": "alias(timeShift(scale($Cloud2.$Node2.$Node2_Interface.if_octets.rx, 8), '$Node2_Timeshift'), 'Node2 - RX')" } ], "timeFrom": null, "timeShift": null, - "title": "Processes State", + "title": "Throughput", "tooltip": { "shared": true, - "value_type": "individual" + "value_type": "cumulative" }, "type": "graph", "x-axis": true, "y-axis": true, "y_formats": [ - "short", + "bps", "short" ] } ], - "showTitle": true + "showTitle": true, + "title": "Network Comparsion" }, { - "title": "Per Process Comparsion", - "height": "250px", - "editable": true, "collapse": true, + "editable": true, + "height": "250px", "panels": [ { "aliasColors": {}, @@ -1098,60 +1077,100 @@ "pointradius": 5, "points": false, "renderer": "flot", - "seriesOverrides": [], + "seriesOverrides": [ + { + "alias": "/Node1/i", + "stack": "A" + }, + { + "alias": "/Node2/i", + "stack": "B" + } + ], "span": 12, "stack": false, "steppedLine": false, "targets": [ { - "hide": true, "refId": "A", - "target": "alias(sumSeries(offset(scale($Cloud1.$Node1.cpu-*.cpu-idle, 0), 1)), 'Node1 - cores')" + "target": "alias(timeShift($Cloud1.$Node1.processes.ps_state-running, '$Node1_Timeshift'), 'Node1 - Running')" }, { - "hide": true, "refId": "B", - "target": "alias(sumSeries(offset(scale($Cloud2.$Node2.cpu-*.cpu-idle, 0), 1)), 'Node2 - cores')" + "target": "alias(timeShift($Cloud1.$Node1.processes.ps_state-stopped, '$Node1_Timeshift'), 'Node1 - Stopped')" }, { "refId": "C", - "target": "alias(divideSeries(scale($Cloud1.$Node1.$Node1_Process.ps_cputime.syst, 0.0001), #A), 'Node1 - $Node1_Process - System')" + "target": "alias(timeShift($Cloud1.$Node1.processes.ps_state-sleeping, '$Node1_Timeshift'), 'Node1 - Sleeping')" }, { "refId": "D", - "target": "alias(divideSeries(scale($Cloud1.$Node1.$Node1_Process.ps_cputime.user, 0.0001), #A), 'Node1 - $Node1_Process - User')" + "target": "alias(timeShift($Cloud1.$Node1.processes.ps_state-blocked, '$Node1_Timeshift'), 'Node1 - Blocked')" }, { "refId": "E", - "target": "alias(divideSeries(scale($Cloud2.$Node2.$Node2_Process.ps_cputime.syst, 0.0001), #A), 'Node2 - $Node2_Process - System')" + "target": "alias(timeShift($Cloud1.$Node1.processes.ps_state-paging, '$Node1_Timeshift'), 'Node1 - Paging')" }, { "refId": "F", - "target": "alias(divideSeries(scale($Cloud2.$Node2.$Node2_Process.ps_cputime.user, 0.0001), #A), 'Node2 - $Node2_Process - User')" + "target": "alias(timeShift($Cloud1.$Node1.processes.ps_state-zombies, '$Node1_Timeshift'), 'Node1 - Zombies')" + }, + { + "refId": "G", + "target": "alias(timeShift($Cloud2.$Node2.processes.ps_state-running, '$Node2_Timeshift'), 'Node2 - Running')" + }, + { + "refId": "H", + "target": "alias(timeShift($Cloud2.$Node2.processes.ps_state-stopped, '$Node2_Timeshift'), 'Node2 - Stopped')" + }, + { + "refId": "I", + "target": "alias(timeShift($Cloud2.$Node2.processes.ps_state-sleeping, '$Node2_Timeshift'), 'Node2 - Sleeping')" + }, + { + "refId": "J", + "target": "alias(timeShift($Cloud2.$Node2.processes.ps_state-blocked, '$Node2_Timeshift'), 'Node2 - Blocked')" + }, + { + "refId": "K", + "target": "alias(timeShift($Cloud2.$Node2.processes.ps_state-paging, '$Node2_Timeshift'), 'Node2 - Paging')" + }, + { + "refId": "L", + "target": "alias(timeShift($Cloud2.$Node2.processes.ps_state-zombies, '$Node2_Timeshift'), 'Node2 - Zombies')" } ], "timeFrom": null, "timeShift": null, - "title": "Process CPU", + "title": "Processes State", "tooltip": { "shared": true, - "value_type": "cumulative" + "value_type": "individual" }, "type": "graph", "x-axis": true, "y-axis": true, "y_formats": [ - "percent", + "short", "short" ] - }, + } + ], + "showTitle": true, + "title": "Node Process Comparsion" + }, + { + "collapse": true, + "editable": true, + "height": "250px", + "panels": [ { "aliasColors": {}, "bars": false, "datasource": null, "editable": true, "error": false, - "fill": 1, + "fill": 0, "grid": { "leftLogBase": 1, "leftMax": null, @@ -1192,24 +1211,24 @@ "targets": [ { "refId": "A", - "target": "alias($Cloud1.$Node1.$Node1_Process.ps_rss, 'Node1 - $Node1_Process - RSS')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_count.processes, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Processes')" }, { "refId": "B", - "target": "alias($Cloud1.$Node1.$Node1_Process.ps_vm, 'Node1 - $Node1_Process - Virtual')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_count.threads, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Threads')" }, { "refId": "C", - "target": "alias($Cloud2.$Node2.$Node2_Process.ps_rss, 'Node2 - $Node2_Process - RSS')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_count.processes, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Processes')" }, { "refId": "D", - "target": "alias($Cloud2.$Node2.$Node2_Process.ps_vm, 'Node2 - $Node2_Process - Virtual')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_count.threads, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Threads')" } ], "timeFrom": null, "timeShift": null, - "title": "Process Memory", + "title": "Process Counts", "tooltip": { "shared": true, "value_type": "cumulative" @@ -1218,7 +1237,7 @@ "x-axis": true, "y-axis": true, "y_formats": [ - "bits", + "short", "short" ] }, @@ -1269,24 +1288,24 @@ "targets": [ { "refId": "A", - "target": "alias($Cloud1.$Node1.$Node1_Process.ps_pagefaults.majflt, 'Node1 - $Node1_Process - Majflt')" + "target": "alias(timeShift(scale($Cloud1.$Node1.$Node1_Process.ps_cputime.syst, 0.0001), '$Node1_Timeshift'), 'Node1 - $Node1_Process - System')" }, { "refId": "B", - "target": "alias($Cloud1.$Node1.$Node1_Process.ps_pagefaults.minflt, 'Node1 - $Node1_Process - Minflt')" + "target": "alias(timeShift(scale($Cloud1.$Node1.$Node1_Process.ps_cputime.user, 0.0001), '$Node1_Timeshift'), 'Node1 - $Node1_Process - User')" }, { "refId": "C", - "target": "alias($Cloud2.$Node2.$Node2_Process.ps_pagefaults.majflt, 'Node2 - $Node2_Process - Majflt')" + "target": "alias(timeShift(scale($Cloud2.$Node2.$Node2_Process.ps_cputime.syst, 0.0001), '$Node2_Timeshift'), 'Node2 - $Node2_Process - System')" }, { "refId": "D", - "target": "alias($Cloud2.$Node2.$Node2_Process.ps_pagefaults.minflt, 'Node2 - $Node2_Process - Minflt')" + "target": "alias(timeShift(scale($Cloud2.$Node2.$Node2_Process.ps_cputime.user, 0.0001), '$Node2_Timeshift'), 'Node2 - $Node2_Process - User')" } ], "timeFrom": null, "timeShift": null, - "title": "Page Faults", + "title": "Process CPU", "tooltip": { "shared": true, "value_type": "cumulative" @@ -1295,7 +1314,7 @@ "x-axis": true, "y-axis": true, "y_formats": [ - "short", + "percent", "short" ] }, @@ -1346,24 +1365,24 @@ "targets": [ { "refId": "A", - "target": "alias($Cloud1.$Node1.$Node1_Process.ps_disk_ops.read, 'Node1 - $Node1_Process - Read')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_rss, '$Node1_Timeshift'), 'Node1 - $Node1_Process - RSS')" }, { "refId": "B", - "target": "alias($Cloud1.$Node1.$Node1_Process.ps_disk_ops.write, 'Node1 - $Node1_Process - Write')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_vm, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Virtual')" }, { "refId": "C", - "target": "alias($Cloud2.$Node2.$Node2_Process.ps_disk_ops.read, 'Node2 - $Node2_Process - Read')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_rss, '$Node2_Timeshift'), 'Node2 - $Node2_Process - RSS')" }, { "refId": "D", - "target": "alias($Cloud2.$Node2.$Node2_Process.ps_disk_ops.write, 'Node2 - $Node2_Process - Write')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_vm, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Virtual')" } ], "timeFrom": null, "timeShift": null, - "title": "iops", + "title": "Process Memory", "tooltip": { "shared": true, "value_type": "cumulative" @@ -1372,7 +1391,7 @@ "x-axis": true, "y-axis": true, "y_formats": [ - "iops", + "bits", "short" ] }, @@ -1423,19 +1442,173 @@ "targets": [ { "refId": "A", - "target": "alias($Cloud1.$Node1.$Node1_Process.ps_disk_octets.read, 'Node1 - $Node1_Process - Read')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_pagefaults.majflt, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Majflt')" }, { "refId": "B", - "target": "alias($Cloud1.$Node1.$Node1_Process.ps_disk_octets.write, 'Node1 - $Node1_Process - Write')" + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_pagefaults.minflt, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Minflt')" }, { "refId": "C", - "target": "alias($Cloud2.$Node2.$Node2_Process.ps_disk_octets.read, 'Node2 - $Node2_Process - Read')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_pagefaults.majflt, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Majflt')" }, { "refId": "D", - "target": "alias($Cloud2.$Node2.$Node2_Process.ps_disk_octets.write, 'Node2 - $Node2_Process - Write')" + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_pagefaults.minflt, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Minflt')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Page Faults", + "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)" + }, + "id": 15, + "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": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_disk_ops.read, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Read')" + }, + { + "refId": "B", + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_disk_ops.write, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Write')" + }, + { + "refId": "C", + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_disk_ops.read, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Read')" + }, + { + "refId": "D", + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_disk_ops.write, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Write')" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "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)" + }, + "id": 16, + "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": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_disk_octets.read, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Read')" + }, + { + "refId": "B", + "target": "alias(timeShift($Cloud1.$Node1.$Node1_Process.ps_disk_octets.write, '$Node1_Timeshift'), 'Node1 - $Node1_Process - Write')" + }, + { + "refId": "C", + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_disk_octets.read, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Read')" + }, + { + "refId": "D", + "target": "alias(timeShift($Cloud2.$Node2.$Node2_Process.ps_disk_octets.write, '$Node2_Timeshift'), 'Node2 - $Node2_Process - Write')" } ], "timeFrom": null, @@ -1454,14 +1627,431 @@ ] } ], - "showTitle": true + "showTitle": true, + "title": "Per Process Comparsion" } ], + "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": "Cloud1", + "options": [], + "query": "*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "None", + "value": "None" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Cloud2", + "options": [], + "query": "*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "", + "value": "" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node1", + "options": [], + "query": "$Cloud1.*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "", + "value": "" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node2", + "options": [], + "query": "$Cloud2.*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "disk-vda", + "value": "disk-vda" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node1_Disk", + "options": [], + "query": "$Cloud1.$Node1.disk-*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "disk-vda", + "value": "disk-vda" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node2_Disk", + "options": [], + "query": "$Cloud2.$Node2.disk-*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "interface-eth0", + "value": "interface-eth0" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node1_Interface", + "options": [], + "query": "$Cloud1.$Node1.interface-*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "interface-eth0", + "value": "interface-eth0" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node2_Interface", + "options": [], + "query": "$Cloud2.$Node2.interface-*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "processes-ruby", + "value": "processes-ruby" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node1_Process", + "options": [], + "query": "$Cloud1.$Node1.processes-*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "tags": [], + "text": "processes-ruby", + "value": "processes-ruby" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node2_Process", + "options": [], + "query": "$Cloud2.$Node2.processes-*", + "refresh": true, + "type": "query" + }, + { + "allFormat": "glob", + "auto": false, + "current": { + "tags": [], + "text": "0m", + "value": "0m" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node1_Timeshift", + "options": [ + { + "selected": true, + "text": "0m", + "value": "0m" + }, + { + "selected": false, + "text": "1m", + "value": "1m" + }, + { + "selected": false, + "text": "10m", + "value": "10m" + }, + { + "selected": false, + "text": "30m", + "value": "30m" + }, + { + "selected": false, + "text": "1h", + "value": "1h" + }, + { + "selected": false, + "text": "2h", + "value": "2h" + }, + { + "selected": false, + "text": "3h", + "value": "3h" + }, + { + "selected": false, + "text": "4h", + "value": "4h" + }, + { + "selected": false, + "text": "5h", + "value": "5h" + }, + { + "selected": false, + "text": "6h", + "value": "6h" + }, + { + "selected": false, + "text": "12h", + "value": "12h" + }, + { + "selected": false, + "text": "1d", + "value": "1d" + }, + { + "selected": false, + "text": "2d", + "value": "2d" + }, + { + "selected": false, + "text": "3d", + "value": "3d" + }, + { + "selected": false, + "text": "4d", + "value": "4d" + }, + { + "selected": false, + "text": "5d", + "value": "5d" + }, + { + "selected": false, + "text": "6d", + "value": "6d" + }, + { + "selected": false, + "text": "7d", + "value": "7d" + }, + { + "selected": false, + "text": "14d", + "value": "14d" + }, + { + "selected": false, + "text": "30d", + "value": "30d" + } + ], + "query": "0m,1m,10m,30m,1h,6h,12h,1d,7d,14d,30d", + "refresh": false, + "type": "custom" + }, + { + "allFormat": "glob", + "auto": false, + "current": { + "tags": [], + "text": "0m", + "value": "0m" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "Node2_Timeshift", + "options": [ + { + "selected": true, + "text": "0m", + "value": "0m" + }, + { + "selected": false, + "text": "1m", + "value": "1m" + }, + { + "selected": false, + "text": "10m", + "value": "10m" + }, + { + "selected": false, + "text": "30m", + "value": "30m" + }, + { + "selected": false, + "text": "1h", + "value": "1h" + }, + { + "selected": false, + "text": "2h", + "value": "2h" + }, + { + "selected": false, + "text": "3h", + "value": "3h" + }, + { + "selected": false, + "text": "4h", + "value": "4h" + }, + { + "selected": false, + "text": "5h", + "value": "5h" + }, + { + "selected": false, + "text": "6h", + "value": "6h" + }, + { + "selected": false, + "text": "12h", + "value": "12h" + }, + { + "selected": false, + "text": "1d", + "value": "1d" + }, + { + "selected": false, + "text": "2d", + "value": "2d" + }, + { + "selected": false, + "text": "3d", + "value": "3d" + }, + { + "selected": false, + "text": "4d", + "value": "4d" + }, + { + "selected": false, + "text": "5d", + "value": "5d" + }, + { + "selected": false, + "text": "6d", + "value": "6d" + }, + { + "selected": false, + "text": "7d", + "value": "7d" + }, + { + "selected": false, + "text": "14d", + "value": "14d" + }, + { + "selected": false, + "text": "30d", + "value": "30d" + } + ], + "query": "0m,1m,10m,30m,1h,6h,12h,1d,7d,14d,30d", + "refresh": false, + "type": "custom" + } + ] + }, "time": { "from": "now-1h", "to": "now" }, "timepicker": { + "now": true, "refresh_intervals": [ "5s", "10s", @@ -1484,188 +2074,10 @@ "2d", "7d", "30d" - ], - "now": true - }, - "templating": { - "list": [ - { - "allFormat": "glob", - "current": { - "text": "rduperf", - "value": "rduperf" - }, - "datasource": null, - "includeAll": false, - "multi": false, - "multiFormat": "glob", - "name": "Cloud1", - "options": [], - "query": "*", - "refresh": true, - "type": "query" - }, - { - "type": "query", - "datasource": null, - "refresh": true, - "name": "Cloud2", - "options": [], - "includeAll": false, - "allFormat": "glob", - "multi": false, - "multiFormat": "glob", - "query": "*", - "current": { - "text": "rduperf", - "value": "rduperf", - "tags": [] - } - }, - { - "allFormat": "glob", - "current": { - "text": "overcloud-controller-0_localdomain", - "value": "overcloud-controller-0_localdomain", - "tags": [] - }, - "datasource": null, - "includeAll": false, - "multi": false, - "multiFormat": "glob", - "name": "Node1", - "options": [], - "query": "$Cloud1.*", - "refresh": true, - "type": "query" - }, - { - "allFormat": "glob", - "current": { - "text": "overcloud-controller-0_localdomain", - "value": "overcloud-controller-0_localdomain", - "tags": [] - }, - "datasource": null, - "includeAll": false, - "multi": false, - "multiFormat": "glob", - "name": "Node2", - "options": [], - "query": "$Cloud2.*", - "refresh": true, - "type": "query" - }, - { - "type": "query", - "datasource": null, - "refresh": true, - "name": "Node1_Disk", - "options": [], - "includeAll": false, - "allFormat": "glob", - "multi": false, - "multiFormat": "glob", - "query": "$Cloud1.$Node1.disk-*", - "current": { - "text": "disk-sda", - "value": "disk-sda", - "tags": [] - } - }, - { - "type": "query", - "datasource": null, - "refresh": true, - "name": "Node2_Disk", - "options": [], - "includeAll": false, - "allFormat": "glob", - "multi": false, - "multiFormat": "glob", - "query": "$Cloud2.$Node2.disk-*", - "current": { - "text": "disk-sda", - "value": "disk-sda", - "tags": [] - } - }, - { - "type": "query", - "datasource": null, - "refresh": true, - "name": "Node1_Interface", - "options": [], - "includeAll": false, - "allFormat": "glob", - "multi": false, - "multiFormat": "glob", - "query": "$Cloud1.$Node1.interface-*", - "current": { - "text": "interface-br-bond", - "value": "interface-br-bond", - "tags": [] - } - }, - { - "type": "query", - "datasource": null, - "refresh": true, - "name": "Node2_Interface", - "options": [], - "includeAll": false, - "allFormat": "glob", - "multi": false, - "multiFormat": "glob", - "query": "$Cloud2.$Node2.interface-*", - "current": { - "text": "interface-br-bond", - "value": "interface-br-bond", - "tags": [] - } - }, - { - "type": "query", - "datasource": null, - "refresh": true, - "name": "Node1_Process", - "options": [], - "includeAll": false, - "allFormat": "glob", - "multi": false, - "multiFormat": "glob", - "query": "$Cloud1.$Node1.processes-*", - "current": { - "text": "processes-keystone-all", - "value": "processes-keystone-all", - "tags": [] - } - }, - { - "type": "query", - "datasource": null, - "refresh": true, - "name": "Node2_Process", - "options": [], - "includeAll": false, - "allFormat": "glob", - "multi": false, - "multiFormat": "glob", - "query": "$Cloud2.$Node2.processes-*", - "current": { - "text": "processes-keystone-all", - "value": "processes-keystone-all", - "tags": [] - } - } ] }, - "annotations": { - "list": [] - }, - "schemaVersion": 8, - "version": 7, - "links": [], - "overwrite": true + "timezone": "browser", + "title": "Cloud System Performance Comparsion", + "version": 7 } -} +} \ No newline at end of file diff --git a/ansible/install/roles/dashboard-openstack/fix-ids.py b/ansible/install/roles/grafana-dashboards/fix-ids.py similarity index 99% rename from ansible/install/roles/dashboard-openstack/fix-ids.py rename to ansible/install/roles/grafana-dashboards/fix-ids.py index e4302aa45..178b57ebf 100644 --- a/ansible/install/roles/dashboard-openstack/fix-ids.py +++ b/ansible/install/roles/grafana-dashboards/fix-ids.py @@ -1,3 +1,4 @@ +#!/usr/bin/env python # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at @@ -9,8 +10,6 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - -#!/usr/bin/env python import argparse import json diff --git a/ansible/install/roles/dashboard-openstack/tasks/main.yml b/ansible/install/roles/grafana-dashboards/tasks/main.yml similarity index 58% rename from ansible/install/roles/dashboard-openstack/tasks/main.yml rename to ansible/install/roles/grafana-dashboards/tasks/main.yml index c4e9c6711..da6debf06 100644 --- a/ansible/install/roles/dashboard-openstack/tasks/main.yml +++ b/ansible/install/roles/grafana-dashboards/tasks/main.yml @@ -1,15 +1,24 @@ --- # -# Generate Openstack collectd to graphite dashboards +# Generate Browbeat OpenStack Grafana Dashboards +# +# Three types of Grafana Dashboards: +# * Static Dashboards (Ex. cloud_system_performance_comparsion.json) +# * Generic Generated Dashboards (Ex. OpenStack General System Performance) +# * Cloud Specific Dashboards (All Nodes CPU Graphs (for a specific cloud)) +# +# The Cloud Specific Dashboards are the only ones that require a cloud's inventory be defined. +# You can deploy all of the Pre-Generated and Generated Dashboards and not the Cloud Specific +# Dashboards with cloud_dashboards=false # -- name: Generate Individual Machine Dashboards +- name: Generate Generic Dashboards template: src: "{{role_path}}/templates/{{item.template_name}}_general_system_performance.json.j2" dest: "{{role_path}}/files/{{item.process_list_name}}_general_system_performance.json" with_items: "{{dashboards}}" -- name: Generate All Openstack Nodes CPU/Memory/Disk/Network Dashboards +- name: Generate Cloud Specific CPU/Memory/Disk/Network Dashboards template: src: "{{item}}.json.j2" dest: "{{role_path}}/files/{{item}}.json" @@ -18,40 +27,51 @@ - all_memory_graphs - all_disk_graphs - all_network_graphs + when: cloud_dashboards -- name: Remove Existing Individual Machine Dashboards +- name: Remove Existing Static Dashboard(s) + command: "curl -X DELETE -H 'Content-Type: application/json' http://{{grafana_username}}:{{grafana_password}}@{{grafana_host}}:{{grafana_port}}/api/dashboards/db/{{item}}" + when: overwrite_existing + with_items: + - cloud-system-performance-comparsion + +- name: Remove Existing Generic Dashboards command: "curl -X DELETE -H 'Content-Type: application/json' http://{{grafana_username}}:{{grafana_password}}@{{grafana_host}}:{{grafana_port}}/api/dashboards/db/{{item.process_list_name|lower}}-general-system-performance" when: overwrite_existing with_items: "{{dashboards}}" -- name: Remove Existing All Openstack Nodes CPU/Memory/Disk/Network Dashboards +- name: Remove Existing Cloud Specific CPU/Memory/Disk/Network Dashboards command: "curl -X DELETE -H 'Content-Type: application/json' http://{{grafana_username}}:{{grafana_password}}@{{grafana_host}}:{{grafana_port}}/api/dashboards/db/{{item}}" - when: overwrite_existing + when: overwrite_existing and cloud_dashboards with_items: - "{{dashboard_cloud_name}}-all-nodes-cpu" - "{{dashboard_cloud_name}}-all-nodes-memory" - "{{dashboard_cloud_name}}-all-nodes-disk" - "{{dashboard_cloud_name}}-all-nodes-network" - - cloud-system-performance-comparsion -- name: Upload dashboards to Grafana +- name: Upload Static Dashboards to Grafana + command: "curl -X POST -H 'Content-Type: application/json' -d @{{item}} http://{{grafana_username}}:{{grafana_password}}@{{grafana_host}}:{{grafana_port}}/api/dashboards/db" + with_items: + - "{{role_path}}/files/cloud_system_performance_comparsion.json" + +- name: Upload Generic Dashboards to Grafana command: "curl -X POST -H 'Content-Type: application/json' -d @{{role_path}}/files/{{item.process_list_name}}_general_system_performance.json http://{{grafana_username}}:{{grafana_password}}@{{grafana_host}}:{{grafana_port}}/api/dashboards/db" with_items: "{{dashboards}}" -- name: Upload Dashboards to Grafana +- name: Upload Cloud Specific CPU/Memory/Disk/Network Dashboards command: "curl -X POST -H 'Content-Type: application/json' -d @{{item}} http://{{grafana_username}}:{{grafana_password}}@{{grafana_host}}:{{grafana_port}}/api/dashboards/db" with_items: - "{{role_path}}/files/all_cpu_graphs.json" - "{{role_path}}/files/all_memory_graphs.json" - "{{role_path}}/files/all_disk_graphs.json" - "{{role_path}}/files/all_network_graphs.json" - - "{{role_path}}/files/cloud_system_performance_comparsion.json" + when: cloud_dashboards -- name: Remove leftover json file(s) from Individual Machine Dashboards +- name: Remove leftover json file(s) from Generic Dashboards file: path={{role_path}}/files/{{item.process_list_name}}_general_system_performance.json state=absent with_items: "{{dashboards}}" -- name: Remove leftover json file(s) from All Openstack Nodes CPU/Memory/Disk/Network Dashboards +- name: Remove leftover json file(s) from Cloud Specific CPU/Memory/Disk/Network Dashboards file: path={{role_path}}/files/{{item}} state=absent with_items: - all_cpu_graphs.json diff --git a/ansible/install/roles/dashboard-openstack/templates/all_cpu_graphs.json.j2 b/ansible/install/roles/grafana-dashboards/templates/all_cpu_graphs.json.j2 similarity index 100% rename from ansible/install/roles/dashboard-openstack/templates/all_cpu_graphs.json.j2 rename to ansible/install/roles/grafana-dashboards/templates/all_cpu_graphs.json.j2 diff --git a/ansible/install/roles/dashboard-openstack/templates/all_disk_graphs.json.j2 b/ansible/install/roles/grafana-dashboards/templates/all_disk_graphs.json.j2 similarity index 100% rename from ansible/install/roles/dashboard-openstack/templates/all_disk_graphs.json.j2 rename to ansible/install/roles/grafana-dashboards/templates/all_disk_graphs.json.j2 diff --git a/ansible/install/roles/dashboard-openstack/templates/all_memory_graphs.json.j2 b/ansible/install/roles/grafana-dashboards/templates/all_memory_graphs.json.j2 similarity index 100% rename from ansible/install/roles/dashboard-openstack/templates/all_memory_graphs.json.j2 rename to ansible/install/roles/grafana-dashboards/templates/all_memory_graphs.json.j2 diff --git a/ansible/install/roles/dashboard-openstack/templates/all_network_graphs.json.j2 b/ansible/install/roles/grafana-dashboards/templates/all_network_graphs.json.j2 similarity index 100% rename from ansible/install/roles/dashboard-openstack/templates/all_network_graphs.json.j2 rename to ansible/install/roles/grafana-dashboards/templates/all_network_graphs.json.j2 diff --git a/ansible/install/roles/dashboard-generic/templates/baremetal_general_system_performance.json.j2 b/ansible/install/roles/grafana-dashboards/templates/baremetal_general_system_performance.json.j2 similarity index 99% rename from ansible/install/roles/dashboard-generic/templates/baremetal_general_system_performance.json.j2 rename to ansible/install/roles/grafana-dashboards/templates/baremetal_general_system_performance.json.j2 index 9940c7548..d29a75c78 100644 --- a/ansible/install/roles/dashboard-generic/templates/baremetal_general_system_performance.json.j2 +++ b/ansible/install/roles/grafana-dashboards/templates/baremetal_general_system_performance.json.j2 @@ -2445,7 +2445,7 @@ "lines": true, "linewidth": 2, "links": [], - "nullPointMode": "connected", + "nullPointMode": "{{metrics.nullPointMode}}", "percentage": false, "pointradius": 5, "points": false, @@ -2456,20 +2456,12 @@ "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(':', '_')}}{{metric.query}}, 0.0001), #A), '{{process}} {{metric.name}}')" + "target": "alias(scale($Cloud.$Node.processes-{{process|replace('.', '_')|replace(':', '_')}}{{metric.query}}, 0.0001), '{{process}} {{metric.name}}')" {% else %} "target": "alias($Cloud.$Node.processes-{{process|replace('.', '_')|replace(':', '_')}}{{metric.query}}, '{{process}} {{metric.name}}')" {% endif %} diff --git a/ansible/install/roles/dashboard-generic/templates/graphite_general_system_performance.json.j2 b/ansible/install/roles/grafana-dashboards/templates/graphite_general_system_performance.json.j2 similarity index 99% rename from ansible/install/roles/dashboard-generic/templates/graphite_general_system_performance.json.j2 rename to ansible/install/roles/grafana-dashboards/templates/graphite_general_system_performance.json.j2 index d6f0fc4b2..cf05d95ec 100644 --- a/ansible/install/roles/dashboard-generic/templates/graphite_general_system_performance.json.j2 +++ b/ansible/install/roles/grafana-dashboards/templates/graphite_general_system_performance.json.j2 @@ -2445,7 +2445,7 @@ "lines": true, "linewidth": 2, "links": [], - "nullPointMode": "connected", + "nullPointMode": "{{metrics.nullPointMode}}", "percentage": false, "pointradius": 5, "points": false, @@ -2456,20 +2456,12 @@ "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(':', '_')}}{{metric.query}}, 0.0001), #A), '{{process}} {{metric.name}}')" + "target": "alias(scale($Cloud.$Node.processes-{{process|replace('.', '_')|replace(':', '_')}}{{metric.query}}, 0.0001), '{{process}} {{metric.name}}')" {% else %} "target": "alias($Cloud.$Node.processes-{{process|replace('.', '_')|replace(':', '_')}}{{metric.query}}, '{{process}} {{metric.name}}')" {% endif %} diff --git a/ansible/install/roles/dashboard-generic/templates/guest_general_system_performance.json.j2 b/ansible/install/roles/grafana-dashboards/templates/guest_general_system_performance.json.j2 similarity index 99% rename from ansible/install/roles/dashboard-generic/templates/guest_general_system_performance.json.j2 rename to ansible/install/roles/grafana-dashboards/templates/guest_general_system_performance.json.j2 index 782fd783f..ebf612a29 100644 --- a/ansible/install/roles/dashboard-generic/templates/guest_general_system_performance.json.j2 +++ b/ansible/install/roles/grafana-dashboards/templates/guest_general_system_performance.json.j2 @@ -1998,7 +1998,7 @@ "lines": true, "linewidth": 2, "links": [], - "nullPointMode": "connected", + "nullPointMode": "{{metrics.nullPointMode}}", "percentage": false, "pointradius": 5, "points": false, @@ -2009,20 +2009,12 @@ "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(':', '_')}}{{metric.query}}, 0.0001), #A), '{{process}} {{metric.name}}')" + "target": "alias(scale($Cloud.$Node.processes-{{process|replace('.', '_')|replace(':', '_')}}{{metric.query}}, 0.0001), '{{process}} {{metric.name}}')" {% else %} "target": "alias($Cloud.$Node.processes-{{process|replace('.', '_')|replace(':', '_')}}{{metric.query}}, '{{process}} {{metric.name}}')" {% endif %} diff --git a/ansible/install/roles/dashboard-openstack/templates/openstack_general_system_performance.json.j2 b/ansible/install/roles/grafana-dashboards/templates/openstack_general_system_performance.json.j2 similarity index 99% rename from ansible/install/roles/dashboard-openstack/templates/openstack_general_system_performance.json.j2 rename to ansible/install/roles/grafana-dashboards/templates/openstack_general_system_performance.json.j2 index da751d03c..98216fdff 100644 --- a/ansible/install/roles/dashboard-openstack/templates/openstack_general_system_performance.json.j2 +++ b/ansible/install/roles/grafana-dashboards/templates/openstack_general_system_performance.json.j2 @@ -3820,8 +3820,8 @@ "allFormat": "glob", "current": { "tags": [], - "text": "westfordperf", - "value": "westfordperf" + "text": "None", + "value": "None" }, "datasource": null, "includeAll": false, @@ -3879,8 +3879,8 @@ { "allFormat": "glob", "current": { - "text": "overcloud-controller-0_localdomain", - "value": "overcloud-controller-0_localdomain" + "text": "overcloud-controller-0", + "value": "overcloud-controller-0" }, "datasource": null, "includeAll": false, diff --git a/ansible/install/roles/dashboard-openstack/vars/main.yml b/ansible/install/roles/grafana-dashboards/vars/main.yml similarity index 77% rename from ansible/install/roles/dashboard-openstack/vars/main.yml rename to ansible/install/roles/grafana-dashboards/vars/main.yml index bc765f5ad..70f30e197 100644 --- a/ansible/install/roles/dashboard-openstack/vars/main.yml +++ b/ansible/install/roles/grafana-dashboards/vars/main.yml @@ -1,6 +1,6 @@ --- # -# Vars to generate Per-Process component of Openstack Dashboards +# Vars to generate Per-Process component of OpenStack Dashboards # per_process_metrics: @@ -56,9 +56,9 @@ per_process_metrics: per_process_panels: # - # This dashboard should only contain Openstack Undercloud Node processes + # This dashboard should only contain OpenStack Undercloud Node processes # - Openstack-Undercloud: + OpenStack-Undercloud: - name: "Everything Else" processes: - dnsmasq @@ -66,8 +66,10 @@ per_process_panels: - memcached - mysqld - ovs-vswitchd + - ovsdb-client - ovsdb-server - rabbitmq + - docker-registry - name: "Nova" processes: - nova-api @@ -95,7 +97,7 @@ per_process_panels: - heat-engine - name: "Glance" processes: - - glance-agent + - glance-api - glance-registry - name: "Ceilometer" processes: @@ -105,19 +107,26 @@ per_process_panels: - ceilometer-alarm-evaluator - ceilometer-alaram-notifier - ceilometer-collector + - name: "Aodh" + processes: + - aodh-evaluator + - aodh-listener + - aodh-notifier - name: "Ironic" processes: - ironic-api - ironic-conductor + - ironic-inspector - dnsmasq-ironic + - dnsmasq-ironicinspector - name: "Collectd" processes: - collectd # - # This dashboard should only contain Openstack Controller Node processes + # This dashboard should only contain OpenStack Controller Node processes # - Openstack-Controller: + OpenStack-Controller: - name: "Everything Else" processes: - dnsmasq @@ -127,6 +136,7 @@ per_process_panels: - mongod - mysqld - ovs-vswitchd + - ovsdb-client - ovsdb-server - rabbitmq - redis-server @@ -164,7 +174,7 @@ per_process_panels: - heat-engine - name: "Glance" processes: - - glance-agent + - glance-api - glance-registry - name: "Swift" processes: @@ -189,6 +199,19 @@ per_process_panels: - ceilometer-alarm-evaluator - ceilometer-alaram-notifier - ceilometer-collector + - name: "Gnocchi" + processes: + - gnocchi-metricd + - gnocchi-statsd + - name: "Aodh" + processes: + - aodh-evaluator + - aodh-listener + - aodh-notifier + - name: "Sahara" + processes: + - sahara-api + - sahara-engine - name: "Corosync/Pacemaker" processes: - corosync @@ -205,12 +228,13 @@ per_process_panels: - collectd # - # This dashboard should only contain Openstack Compute Node processes + # This dashboard should only contain OpenStack Compute Node processes # - Openstack-Compute: + OpenStack-Compute: - name: "Everything Else" processes: - ovs-vswitchd + - ovsdb-client - ovsdb-server - qemu-kvm - name: "Nova" @@ -228,9 +252,9 @@ per_process_panels: - collectd # - # This dashboard should only contain Openstack Ceph Node processes + # This dashboard should only contain OpenStack Ceph Node processes # - Openstack-Ceph: + OpenStack-Ceph: - name: "Ceph" processes: - ceph-osd @@ -242,10 +266,10 @@ per_process_panels: - collectd # - # This dashboard "Openstack" aims to be comprehensive with all processes across: + # This dashboard "OpenStack" aims to be comprehensive with all processes across: # Undercloud, Controller, Compute, Ceph, etc... Nodes # - Openstack: + OpenStack: - name: "Everything Else" processes: - dnsmasq @@ -255,11 +279,13 @@ per_process_panels: - mongod - mysqld - ovs-vswitchd + - ovsdb-client - ovsdb-server - qemu-kvm - rabbitmq - redis-server - tuskar-api + - docker-registry - name: "Nova" processes: - nova-api @@ -295,7 +321,7 @@ per_process_panels: - heat-engine - name: "Glance" processes: - - glance-agent + - glance-api - glance-registry - name: "Swift" processes: @@ -322,11 +348,26 @@ per_process_panels: - ceilometer-collector - ceilometer-agent-compute - ceilometer-polling + - name: "Gnocchi" + processes: + - gnocchi-metricd + - gnocchi-statsd + - name: "Aodh" + processes: + - aodh-evaluator + - aodh-listener + - aodh-notifier + - name: "Sahara" + processes: + - sahara-api + - sahara-engine - name: "Ironic" processes: - ironic-api - ironic-conductor + - ironic-inspector - dnsmasq-ironic + - dnsmasq-ironicinspector - name: "Ceph" processes: - ceph-osd @@ -347,3 +388,48 @@ per_process_panels: - name: "Collectd" processes: - collectd + + + # + # This dashboard is geared towards "Generic" Baremetal machines + # + Baremetal: + - name: "httpd" + processes: + - httpd + - name: "Collectd" + processes: + - collectd + + # + # This dashboard is geared towards "Generic" VM Guests + # + Guest: + - name: "httpd" + processes: + - httpd + - name: "Collectd" + processes: + - collectd + + # + # This dashboard is geared towards Carbon/Graphite/Grafana machines + # + Graphite: + - name: "Summerized" + processes: + - carbon-cache + - grafana-server + - httpd + - name: "Carbon" + processes: + - carbon-cache + - name: "Grafana" + processes: + - grafana-server + - name: "httpd" + processes: + - httpd + - name: "Collectd" + processes: + - collectd