summaryrefslogtreecommitdiffstats
path: root/tools/performance/cloud
diff options
context:
space:
mode:
Diffstat (limited to 'tools/performance/cloud')
-rw-r--r--tools/performance/cloud/consumer-deployment.yaml102
-rw-r--r--tools/performance/cloud/producer-pod.yaml61
-rw-r--r--tools/performance/cloud/test.properties24
3 files changed, 187 insertions, 0 deletions
diff --git a/tools/performance/cloud/consumer-deployment.yaml b/tools/performance/cloud/consumer-deployment.yaml
new file mode 100644
index 00000000..9b03aca6
--- /dev/null
+++ b/tools/performance/cloud/consumer-deployment.yaml
@@ -0,0 +1,102 @@
+# ============LICENSE_START=======================================================
+# dcaegen2-collectors-veshv
+# ================================================================================
+# Copyright (C) 2019 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: apps/v1
+kind: Deployment
+metadata:
+ name: kafka-counting-consumer-deployment
+ namespace: onap
+ labels:
+ app: hv-collector-kafka-consumer
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: hv-collector-kafka-consumer
+ template:
+ metadata:
+ labels:
+ app: hv-collector-kafka-consumer
+ annotations:
+ prometheus.io/port: "8080"
+ prometheus.io/scrape: "true"
+ prometheus.io/path: "/monitoring/prometheus"
+ spec:
+ containers:
+ - name: kafka-consumer-counting
+ image: hv-collector-kafka-consumer:1.3.0-SNAPSHOT
+ ports:
+ - containerPort: 8080
+ env:
+ - name: LISTEN_PORT
+ value: 8080
+ - name: KAFKA_BOOTSTRAP_SERVERS
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: consumer.kafka.bootstrapServers
+ - name: KAFKA_TOPICS
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: consumer.kafka.topics
+ - name: DISABLE_PROCESSING
+
+---
+
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: kafka-processing-consumer-deployment
+ namespace: onap
+ labels:
+ app: hv-collector-kafka-consumer
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: hv-collector-kafka-consumer
+ template:
+ metadata:
+ labels:
+ app: hv-collector-kafka-consumer
+ annotations:
+ prometheus.io/port: "8080"
+ prometheus.io/scrape: "true"
+ prometheus.io/path: "/monitoring/prometheus"
+ spec:
+ containers:
+ - name: kafka-processing-consumer
+ image: hv-collector-kafka-consumer:1.3.0-SNAPSHOT
+ ports:
+ - containerPort: 8080
+ env:
+ - name: LISTEN_PORT
+ value: 8080
+ - name: KAFKA_BOOTSTRAP_SERVERS
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: consumer.kafka.bootstrapServers
+ - name: KAFKA_TOPICS
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: consumer.kafka.topics \ No newline at end of file
diff --git a/tools/performance/cloud/producer-pod.yaml b/tools/performance/cloud/producer-pod.yaml
new file mode 100644
index 00000000..75d03795
--- /dev/null
+++ b/tools/performance/cloud/producer-pod.yaml
@@ -0,0 +1,61 @@
+# ============LICENSE_START=======================================================
+# dcaegen2-collectors-veshv
+# ================================================================================
+# Copyright (C) 2019 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: Pod
+metadata:
+ name: hv-collector-producer
+ namespace: onap
+ labels:
+ app: hv-collector-producer
+spec:
+ containers:
+ - name: hv-collector-producer
+ image: the-a-team-registry-local.esisoj70.emea.nsn-net.net/onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-rust-client:latest
+ env:
+ - name: HV_VES_ADDRESS
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: producer.hvVesAddress
+ - name: CLIENTS_COUNT
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: producer.client.count
+ - name: MSG_SIZE
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: producer.message.size
+ - name: MSG_COUNT
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: producer.message.count
+ - name: INTERVAL_MS
+ valueFrom:
+ configMapKeyRef:
+ name: performance-test-config
+ key: producer.message.interval
+ args: ["--ssl-disable",
+ "--address", "$HV_VES_ADDRESS",
+ "--clients", "$CLIENTS_COUNT",
+ "--msgsize", "$MSG_SIZE",
+ "--msgcount", "$MSG_COUNT",
+ "--intervalms", "$INTERVAL_MS"] \ No newline at end of file
diff --git a/tools/performance/cloud/test.properties b/tools/performance/cloud/test.properties
new file mode 100644
index 00000000..9865339c
--- /dev/null
+++ b/tools/performance/cloud/test.properties
@@ -0,0 +1,24 @@
+# TODO: in script create configmap from that file
+
+# PRODUCER CONFIGURATION
+
+# HV-VES address
+producer.hvVesAddress=ves-hv-collector:6061
+# Number of pods to create
+producer.pod.count=1
+# Number of clients per pod
+producer.client.count=1
+# Size in bytes of a single message
+producer.message.size=16384
+# Amount of messages to sent by one client in a single pod
+producer.message.count=1000
+# Interval between messages
+producer.message.interval=0
+
+
+# CONSUMER CONFIGURATION
+
+# Addresses of Kafka services to consume from
+consumer.kafka.bootstrapServers=message-router-kafka-0:9092,message-router-kafka-1:9092,message-router-kafka-2:9092
+# Kafka topics to subscribe to
+consumer.kafka.topics=HV_VES_PERF3GPP