-
Notifications
You must be signed in to change notification settings - Fork 183
/
Copy pathsecure-producer-app-data.yaml
69 lines (69 loc) · 1.77 KB
/
secure-producer-app-data.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
---
apiVersion: platform.confluent.io/v1beta1
kind: KafkaTopic
metadata:
name: elastic-0
namespace: confluent
spec:
replicas: 3
partitionCount: 1
configs:
cleanup.policy: "delete"
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: elastic
spec:
serviceName: elastic
podManagementPolicy: Parallel
replicas: 1
selector:
matchLabels:
app: elastic
template:
metadata:
labels:
app: elastic
spec:
containers:
- name: elastic
image: confluentinc/cp-kafka:latest
command:
- /bin/sh
- -c
- |
kafka-producer-perf-test \
--topic ${HOSTNAME} \
--record-size 524288 \
--throughput 64 \
--producer.config /mnt/kafka.properties \
--num-records 230400
volumeMounts:
- name: kafka-properties
mountPath: /mnt
- name: kafka-ssl-autogenerated
mountPath: /mnt/sslcerts
resources:
requests:
memory: 512Mi
cpu: 500m
volumes:
# This application pod will mount a volume for Kafka client properties from
# the secret `kafka-client-config-secure`
- name: kafka-properties
secret:
secretName: kafka-client-config-secure
# Confluent for Kubernetes, when configured with autogenerated certs, will create a
# JKS keystore and truststore and store that in a Kubernetes secret named `kafka-generated-jks`.
# Here, this client appliation will mount a volume from this secret so that it can use the JKS files.
- name: kafka-ssl-autogenerated
secret:
secretName: kafka-generated-jks
---
apiVersion: v1
kind: Service
metadata:
name: elastic
spec:
clusterIP: None