aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemigiusz Janeczek <remigiusz.janeczek@nokia.com>2020-04-07 11:45:24 +0200
committerKornel Janiak <kornel.janiak@nokia.com>2020-04-08 12:15:28 +0000
commitfab4f6c44c8bc7baf454e26a956891ad53000a35 (patch)
tree5336bb2fbc22f687e60d699d589e04392516f23e
parentee3dc0ec60a6b425904f41ddd96b5925cba7e1aa (diff)
Add new metrics for performance tests
Add metrics considering: -Kafka -Message producers -Overall k8s nodes statistics Issue-ID: DCAEGEN2-1576 Signed-off-by: Remigiusz Janeczek <remigiusz.janeczek@nokia.com> Change-Id: I8523099834a2652df359d6a50b19a86d6f417adc
-rwxr-xr-xtools/performance/cloud/cloud-based-performance-test.sh8
-rw-r--r--tools/performance/cloud/grafana-deployment.yaml10
-rw-r--r--tools/performance/cloud/grafana/dashboards-providers/dashboards.yaml17
-rw-r--r--tools/performance/cloud/grafana/dashboards/k8s-metrics.yaml557
-rw-r--r--tools/performance/cloud/grafana/dashboards/kafka-and-producers.yaml774
-rw-r--r--tools/performance/cloud/prometheus/prometheus-config-map.yaml22
6 files changed, 1385 insertions, 3 deletions
diff --git a/tools/performance/cloud/cloud-based-performance-test.sh b/tools/performance/cloud/cloud-based-performance-test.sh
index 256a385f..bd699a65 100755
--- a/tools/performance/cloud/cloud-based-performance-test.sh
+++ b/tools/performance/cloud/cloud-based-performance-test.sh
@@ -2,7 +2,7 @@
# ============LICENSE_START=======================================================
# dcaegen2-collectors-veshv
# ================================================================================
-# Copyright (C) 2019 NOKIA
+# Copyright (C) 2019-2020 NOKIA
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -211,6 +211,12 @@ function setup_environment() {
echo "Creating ConfigMap for grafana grafana-performance-tests dashboard"
kubectl apply -f grafana/dashboards/performance-tests.yaml
+ echo "Creating ConfigMap for grafana grafana-kafka-and-producers dashboard"
+ kubectl apply -f grafana/dashboards/kafka-and-producers.yaml
+
+ echo "Creating ConfigMap for grafana grafana-k8s-metrics dashboard"
+ kubectl apply -f grafana/dashboards/k8s-metrics.yaml
+
echo "Creating ConfigMap for grafana datasource"
kubectl apply -f grafana/datasources/datasource.yaml
diff --git a/tools/performance/cloud/grafana-deployment.yaml b/tools/performance/cloud/grafana-deployment.yaml
index b2921d67..89e9d909 100644
--- a/tools/performance/cloud/grafana-deployment.yaml
+++ b/tools/performance/cloud/grafana-deployment.yaml
@@ -58,6 +58,10 @@ spec:
mountPath: /grafana/performance-tests
- name: grafana-processing
mountPath: /grafana/processing
+ - name: grafana-kafka-and-producers
+ mountPath: /grafana/kafka-and-producers
+ - name: grafana-k8s-metrics
+ mountPath: /grafana/k8s-metrics
volumes:
- name: grafana-datasources
configMap:
@@ -74,6 +78,12 @@ spec:
- name: grafana-processing
configMap:
name: grafana-processing
+ - name: grafana-kafka-and-producers
+ configMap:
+ name: grafana-kafka-and-producers
+ - name: grafana-k8s-metrics
+ configMap:
+ name: grafana-k8s-metrics
---
apiVersion: v1
kind: Service
diff --git a/tools/performance/cloud/grafana/dashboards-providers/dashboards.yaml b/tools/performance/cloud/grafana/dashboards-providers/dashboards.yaml
index c433ffa9..2701d492 100644
--- a/tools/performance/cloud/grafana/dashboards-providers/dashboards.yaml
+++ b/tools/performance/cloud/grafana/dashboards-providers/dashboards.yaml
@@ -1,7 +1,7 @@
# ============LICENSE_START=======================================================
# dcaegen2-collectors-veshv
# ================================================================================
-# Copyright (C) 2019 NOKIA
+# Copyright (C) 2019-2020 NOKIA
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -42,4 +42,17 @@ data:
folder: ''
type: file
options:
- path: /grafana/processing \ No newline at end of file
+ path: /grafana/processing
+ - name: 'kafka-and-producers'
+ org_id: 1
+ folder: ''
+ type: file
+ options:
+ path: /grafana/kafka-and-producers
+ - name: 'k8s-metrics'
+ org_id: 1
+ folder: ''
+ type: file
+ options:
+ path: /grafana/k8s-metrics
+
diff --git a/tools/performance/cloud/grafana/dashboards/k8s-metrics.yaml b/tools/performance/cloud/grafana/dashboards/k8s-metrics.yaml
new file mode 100644
index 00000000..c91661bf
--- /dev/null
+++ b/tools/performance/cloud/grafana/dashboards/k8s-metrics.yaml
@@ -0,0 +1,557 @@
+# ============LICENSE_START=======================================================
+# dcaegen2-collectors-veshv
+# ================================================================================
+# Copyright (C) 2020 NOKIA
+# ================================================================================
+# 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
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# 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.
+# ============LICENSE_END=========================================================
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: grafana-k8s-metrics
+ namespace: onap
+ labels:
+ name: grafana-dashboards
+data:
+ k8s-metrics.json: |-
+ {
+ "annotations": {
+ "list": [
+ {
+ "builtIn": 1,
+ "datasource": "-- Grafana --",
+ "enable": true,
+ "hide": true,
+ "iconColor": "rgba(0, 211, 255, 1)",
+ "name": "Annotations & Alerts",
+ "type": "dashboard"
+ }
+ ]
+ },
+ "editable": true,
+ "gnetId": null,
+ "graphTooltip": 0,
+ "id": 5,
+ "links": [],
+ "panels": [
+ {
+ "datasource": null,
+ "gridPos": {
+ "h": 7,
+ "w": 8,
+ "x": 0,
+ "y": 0
+ },
+ "id": 8,
+ "options": {
+ "fieldOptions": {
+ "calcs": [
+ "mean"
+ ],
+ "defaults": {
+ "mappings": [],
+ "max": 100,
+ "min": 0,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": [],
+ "values": false
+ },
+ "orientation": "auto",
+ "showThresholdLabels": false,
+ "showThresholdMarkers": true
+ },
+ "pluginVersion": "6.7.2",
+ "targets": [
+ {
+ "expr": "sum(container_memory_working_set_bytes{id=\"/\", instance=~\".*worker.*\"}) by(instance) / (sum(machine_memory_bytes{instance=~\".*worker.*\"}) by (instance))*100",
+ "interval": "",
+ "legendFormat": "{{instance}}",
+ "refId": "A"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Nodes RAM Usage",
+ "type": "gauge"
+ },
+ {
+ "datasource": null,
+ "gridPos": {
+ "h": 7,
+ "w": 8,
+ "x": 8,
+ "y": 0
+ },
+ "id": 6,
+ "options": {
+ "fieldOptions": {
+ "calcs": [
+ "mean"
+ ],
+ "defaults": {
+ "mappings": [],
+ "max": 100,
+ "min": 0,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": [],
+ "values": false
+ },
+ "orientation": "auto",
+ "showThresholdLabels": false,
+ "showThresholdMarkers": true
+ },
+ "pluginVersion": "6.7.2",
+ "targets": [
+ {
+ "expr": "sum(rate(container_cpu_usage_seconds_total{id=\"/\", instance=~\".*worker.*\"}[1m])) by(instance) / (sum(machine_cpu_cores{instance=~\".*worker.*\"}) by (instance))*100",
+ "interval": "",
+ "legendFormat": "{{instance}}",
+ "refId": "A"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Nodes CPU Usage",
+ "type": "gauge"
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 12,
+ "w": 8,
+ "x": 16,
+ "y": 0
+ },
+ "hiddenSeries": false,
+ "id": 10,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "sum(irate(container_network_receive_bytes_total{pod!=\"\", namespace=\"onap\", instance=~\".*worker.*\"}[1m])) by (instance)",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "{{instance}}",
+ "refId": "C"
+ },
+ {
+ "expr": "sum(irate(container_network_receive_bytes_total{pod!=\"\", namespace=\"onap\", instance=~\".*worker.*\"}[1m]))",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "Total Receive",
+ "refId": "D"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "Network Usage - Receive",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "Bps",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 16,
+ "w": 8,
+ "x": 0,
+ "y": 7
+ },
+ "hiddenSeries": false,
+ "id": 4,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "sum(container_memory_working_set_bytes{id=\"/\"}) by (instance) / (sum(machine_memory_bytes) by (instance))*100",
+ "interval": "",
+ "legendFormat": "{{instance}}",
+ "refId": "A"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "Nodes Total RAM Usage",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 16,
+ "w": 8,
+ "x": 8,
+ "y": 7
+ },
+ "hiddenSeries": false,
+ "id": 2,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "sum(rate(container_cpu_usage_seconds_total{id=\"/\"}[1m])) by(instance) / (sum(machine_cpu_cores) by (instance))*100",
+ "interval": "",
+ "legendFormat": "{{instance}}",
+ "refId": "A"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "Nodes Total CPU usage",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 11,
+ "w": 8,
+ "x": 16,
+ "y": 12
+ },
+ "hiddenSeries": false,
+ "id": 11,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "sum(irate(container_network_transmit_bytes_total{pod!=\"\", namespace=\"onap\", instance=~\".*worker.*\"}[1m])) by (instance)",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "{{instance}}",
+ "refId": "A"
+ },
+ {
+ "expr": "sum(irate(container_network_transmit_bytes_total{pod!=\"\", namespace=\"onap\", instance=~\".*worker.*\"}[1m]))",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "Total Transmit",
+ "refId": "B"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "Network Usage - Transmit",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "Bps",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ }
+ ],
+ "refresh": "5s",
+ "schemaVersion": 22,
+ "style": "dark",
+ "tags": [],
+ "templating": {
+ "list": []
+ },
+ "time": {
+ "from": "now-6h",
+ "to": "now"
+ },
+ "timepicker": {
+ "refresh_intervals": [
+ "5s",
+ "10s",
+ "30s",
+ "1m",
+ "5m",
+ "15m",
+ "30m",
+ "1h",
+ "2h",
+ "1d"
+ ]
+ },
+ "timezone": "",
+ "title": "K8s metrics",
+ "uid": "RxjnWpjZk",
+ "variables": {
+ "list": []
+ },
+ "version": 1
+ }
diff --git a/tools/performance/cloud/grafana/dashboards/kafka-and-producers.yaml b/tools/performance/cloud/grafana/dashboards/kafka-and-producers.yaml
new file mode 100644
index 00000000..74cad82d
--- /dev/null
+++ b/tools/performance/cloud/grafana/dashboards/kafka-and-producers.yaml
@@ -0,0 +1,774 @@
+# ============LICENSE_START=======================================================
+# dcaegen2-collectors-veshv
+# ================================================================================
+# Copyright (C) 2020 NOKIA
+# ================================================================================
+# 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
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# 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.
+# ============LICENSE_END=========================================================
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: grafana-kafka-and-producers
+ namespace: onap
+ labels:
+ name: grafana-dashboards
+data:
+ kafka-and-producers.json: |-
+ {
+ "annotations": {
+ "list": [
+ {
+ "builtIn": 1,
+ "datasource": "-- Grafana --",
+ "enable": true,
+ "hide": true,
+ "iconColor": "rgba(0, 211, 255, 1)",
+ "name": "Annotations & Alerts",
+ "type": "dashboard"
+ }
+ ]
+ },
+ "editable": true,
+ "gnetId": null,
+ "graphTooltip": 0,
+ "id": 4,
+ "links": [],
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 11,
+ "w": 8,
+ "x": 0,
+ "y": 0
+ },
+ "hiddenSeries": false,
+ "id": 12,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "sum(irate(container_network_transmit_bytes_total{pod=~\".*producer.*\"}[1m]))",
+ "interval": "",
+ "legendFormat": "Total Transmit Producers",
+ "refId": "A"
+ },
+ {
+ "expr": "sum(irate(container_network_transmit_bytes_total{pod=~\".*kafka-.\"}[1m]))",
+ "interval": "",
+ "legendFormat": "Total Transmit Kafka",
+ "refId": "B"
+ },
+ {
+ "expr": "irate(container_network_transmit_bytes_total{pod=~\".*producer.*\"}[1m])",
+ "interval": "",
+ "legendFormat": "{{pod}}",
+ "refId": "C"
+ },
+ {
+ "expr": "irate(container_network_transmit_bytes_total{pod=~\".*kafka-.\"}[1m])",
+ "interval": "",
+ "legendFormat": "{{pod}}",
+ "refId": "D"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "Network Usage",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "Bps",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 11,
+ "w": 8,
+ "x": 8,
+ "y": 0
+ },
+ "hiddenSeries": false,
+ "id": 22,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "sum(rate(container_network_transmit_bytes_total{pod=~\".*kafka-.|.*hv-ves-coll.*|.*producer.*\"}[1m]))",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "Total transmit",
+ "refId": "B"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "Total network usage (producers + hv-ves + kafka)",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "Bps",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 11,
+ "w": 8,
+ "x": 16,
+ "y": 0
+ },
+ "hiddenSeries": false,
+ "id": 2,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "irate(container_network_receive_bytes_total{pod=~\"dep-dcae-hv-ves-collector.*\"}[1m])",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "receive",
+ "refId": "A"
+ },
+ {
+ "expr": "irate(container_network_transmit_bytes_total{pod=~\"dep-dcae-hv-ves-collector.*\"}[1m])",
+ "interval": "",
+ "legendFormat": "transmit",
+ "refId": "B"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "HV-VES Network Usage",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "decimals": null,
+ "format": "Bps",
+ "label": "",
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 12,
+ "w": 8,
+ "x": 0,
+ "y": 11
+ },
+ "hiddenSeries": false,
+ "id": 14,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "sum (rate (container_cpu_usage_seconds_total{pod=~\".*producer.*\"}[1m])) by (pod)",
+ "interval": "",
+ "legendFormat": "{{pod}}",
+ "refId": "A"
+ },
+ {
+ "expr": "sum (rate (container_cpu_usage_seconds_total{pod=~\".*router-kafka.*\"}[1m])) by (pod)",
+ "interval": "",
+ "legendFormat": "{{pod}}",
+ "refId": "B"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "CPU usage",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": null,
+ "fill": 0,
+ "fillGradient": 0,
+ "gridPos": {
+ "h": 12,
+ "w": 8,
+ "x": 8,
+ "y": 11
+ },
+ "hiddenSeries": false,
+ "id": 18,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "nullPointMode": "null",
+ "options": {
+ "dataLinks": []
+ },
+ "percentage": false,
+ "pointradius": 2,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "expr": "sum(container_memory_working_set_bytes{image!=\"\", pod=~\".*kafka-.\"}) by (pod)",
+ "interval": "",
+ "legendFormat": "{{pod}}",
+ "refId": "A"
+ },
+ {
+ "expr": "sum (rate (container_cpu_usage_seconds_total{pod=~\".*router-kafka.*\"}[1m])) by (pod)",
+ "hide": true,
+ "interval": "",
+ "legendFormat": "{{pod}}",
+ "refId": "B"
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": "20m",
+ "timeRegions": [],
+ "timeShift": null,
+ "title": "Memory Usage",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "decbytes",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ],
+ "yaxis": {
+ "align": false,
+ "alignLevel": null
+ }
+ },
+ {
+ "datasource": null,
+ "gridPos": {
+ "h": 6,
+ "w": 4,
+ "x": 16,
+ "y": 11
+ },
+ "id": 15,
+ "options": {
+ "colorMode": "value",
+ "fieldOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "defaults": {
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": [],
+ "values": false
+ },
+ "graphMode": "area",
+ "justifyMode": "auto",
+ "orientation": "auto"
+ },
+ "pluginVersion": "6.7.2",
+ "targets": [
+ {
+ "expr": "sum(container_network_transmit_packets_dropped_total{pod=~\".*producer.*\"})",
+ "interval": "",
+ "legendFormat": "Packets dropped",
+ "refId": "A"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Packets Dropped (producers)",
+ "type": "stat"
+ },
+ {
+ "datasource": null,
+ "gridPos": {
+ "h": 6,
+ "w": 4,
+ "x": 20,
+ "y": 11
+ },
+ "id": 4,
+ "options": {
+ "colorMode": "value",
+ "fieldOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "defaults": {
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": [],
+ "values": false
+ },
+ "graphMode": "area",
+ "justifyMode": "auto",
+ "orientation": "auto"
+ },
+ "pluginVersion": "6.7.2",
+ "targets": [
+ {
+ "expr": "sum(container_network_transmit_packets_dropped_total{pod=~\".*hv-ves-collector.*\"})",
+ "interval": "",
+ "legendFormat": "Packets dropped",
+ "refId": "A"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Packets Dropped (hv-ves)",
+ "type": "stat"
+ },
+ {
+ "datasource": null,
+ "gridPos": {
+ "h": 6,
+ "w": 4,
+ "x": 16,
+ "y": 17
+ },
+ "id": 17,
+ "options": {
+ "colorMode": "value",
+ "fieldOptions": {
+ "calcs": [
+ "max"
+ ],
+ "defaults": {
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "bytes"
+ },
+ "overrides": [],
+ "values": false
+ },
+ "graphMode": "none",
+ "justifyMode": "auto",
+ "orientation": "auto"
+ },
+ "pluginVersion": "6.7.2",
+ "targets": [
+ {
+ "expr": "sum(container_network_transmit_bytes_total{pod=~\".*producer.*\"})",
+ "interval": "",
+ "legendFormat": "",
+ "refId": "A"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Sent (producers)",
+ "type": "stat"
+ },
+ {
+ "cacheTimeout": null,
+ "datasource": null,
+ "gridPos": {
+ "h": 6,
+ "w": 4,
+ "x": 20,
+ "y": 17
+ },
+ "id": 16,
+ "links": [],
+ "options": {
+ "colorMode": "value",
+ "fieldOptions": {
+ "calcs": [
+ "max"
+ ],
+ "defaults": {
+ "mappings": [
+ {
+ "id": 0,
+ "op": "=",
+ "text": "N/A",
+ "type": 1,
+ "value": "null"
+ }
+ ],
+ "nullValueMode": "connected",
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "bytes"
+ },
+ "overrides": [],
+ "values": false
+ },
+ "graphMode": "none",
+ "justifyMode": "auto",
+ "orientation": "horizontal"
+ },
+ "pluginVersion": "6.7.2",
+ "targets": [
+ {
+ "expr": "container_network_receive_bytes_total{pod=~\".*hv-ves-collector.*\"}",
+ "interval": "",
+ "legendFormat": "Packets dropped",
+ "refId": "A"
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Received (hv-ves)",
+ "type": "stat"
+ }
+ ],
+ "refresh": "5s",
+ "schemaVersion": 22,
+ "style": "dark",
+ "tags": [],
+ "templating": {
+ "list": []
+ },
+ "time": {
+ "from": "now-1h",
+ "to": "now"
+ },
+ "timepicker": {
+ "refresh_intervals": [
+ "5s",
+ "10s",
+ "30s",
+ "1m",
+ "5m",
+ "15m",
+ "30m",
+ "1h",
+ "2h",
+ "1d"
+ ]
+ },
+ "timezone": "",
+ "title": "Kafka and Producers Statistics",
+ "uid": "-28uHcjZk",
+ "variables": {
+ "list": []
+ },
+ "version": 1
+ }
diff --git a/tools/performance/cloud/prometheus/prometheus-config-map.yaml b/tools/performance/cloud/prometheus/prometheus-config-map.yaml
index a07bc336..9238b255 100644
--- a/tools/performance/cloud/prometheus/prometheus-config-map.yaml
+++ b/tools/performance/cloud/prometheus/prometheus-config-map.yaml
@@ -49,3 +49,25 @@ data:
metrics_path: '/monitoring/prometheus'
static_configs:
- targets: ['dcae-hv-ves-collector.onap:6060']
+
+ - job_name: 'kubernetes-cadvisor'
+
+ scheme: https
+
+ tls_config:
+ ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
+ bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
+
+ kubernetes_sd_configs:
+ - role: node
+
+ relabel_configs:
+ - action: labelmap
+ regex: __meta_kubernetes_node_label_(.+)
+ - target_label: __address__
+ replacement: kubernetes.default.svc:443
+ - source_labels: [__meta_kubernetes_node_name]
+ regex: (.+)
+ target_label: __metrics_path__
+ replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
+