Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- apiVersion: kafka.strimzi.io/v1beta1
- kind: Kafka
- metadata:
- name: kafka-cluster-01
- namespace: kafka
- spec:
- clusterCa:
- validityDays: 1825
- renewalDays: 90
- clientsCa:
- validityDays: 365
- renewalDays: 30
- kafka:
- version: 2.2.1
- jvmOptions:
- "-Xmx": "512m"
- "-Xms": "512m"
- replicas: 3
- readinessProbe:
- initialDelaySeconds: 15
- timeoutSeconds: 5
- livenessProbe:
- initialDelaySeconds: 15
- timeoutSeconds: 5
- metrics:
- lowercaseOutputName: true
- rules:
- # Special cases and very specific rules
- - pattern : kafka.server<type=(.+), name=(.+), clientId=(.+), topic=(.+), partition=(.*)><>Value
- name: kafka_server_$1_$2
- type: GAUGE
- labels:
- clientId: "$3"
- topic: "$4"
- partition: "$5"
- - pattern : kafka.server<type=(.+), name=(.+), clientId=(.+), brokerHost=(.+), brokerPort=(.+)><>Value
- name: kafka_server_$1_$2
- type: GAUGE
- labels:
- clientId: "$3"
- broker: "$4:$5"
- # Some percent metrics use MeanRate attribute
- # Ex) kafka.server<type=(KafkaRequestHandlerPool), name=(RequestHandlerAvgIdlePercent)><>MeanRate
- - pattern: kafka.(\w+)<type=(.+), name=(.+)Percent\w*><>MeanRate
- name: kafka_$1_$2_$3_percent
- type: GAUGE
- # Generic gauges for percents
- - pattern: kafka.(\w+)<type=(.+), name=(.+)Percent\w*><>Value
- name: kafka_$1_$2_$3_percent
- type: GAUGE
- - pattern: kafka.(\w+)<type=(.+), name=(.+)Percent\w*, (.+)=(.+)><>Value
- name: kafka_$1_$2_$3_percent
- type: GAUGE
- labels:
- "$4": "$5"
- # Generic per-second counters with 0-2 key/value pairs
- - pattern: kafka.(\w+)<type=(.+), name=(.+)PerSec\w*, (.+)=(.+), (.+)=(.+)><>Count
- name: kafka_$1_$2_$3_total
- type: COUNTER
- labels:
- "$4": "$5"
- "$6": "$7"
- - pattern: kafka.(\w+)<type=(.+), name=(.+)PerSec\w*, (.+)=(.+)><>Count
- name: kafka_$1_$2_$3_total
- type: COUNTER
- labels:
- "$4": "$5"
- - pattern: kafka.(\w+)<type=(.+), name=(.+)PerSec\w*><>Count
- name: kafka_$1_$2_$3_total
- type: COUNTER
- # Generic gauges with 0-2 key/value pairs
- - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.+), (.+)=(.+)><>Value
- name: kafka_$1_$2_$3
- type: GAUGE
- labels:
- "$4": "$5"
- "$6": "$7"
- - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.+)><>Value
- name: kafka_$1_$2_$3
- type: GAUGE
- labels:
- "$4": "$5"
- - pattern: kafka.(\w+)<type=(.+), name=(.+)><>Value
- name: kafka_$1_$2_$3
- type: GAUGE
- # Emulate Prometheus 'Summary' metrics for the exported 'Histogram's.
- # Note that these are missing the '_sum' metric!
- - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.+), (.+)=(.+)><>Count
- name: kafka_$1_$2_$3_count
- type: COUNTER
- labels:
- "$4": "$5"
- "$6": "$7"
- - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.*), (.+)=(.+)><>(\d+)thPercentile
- name: kafka_$1_$2_$3
- type: GAUGE
- labels:
- "$4": "$5"
- "$6": "$7"
- quantile: "0.$8"
- - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.+)><>Count
- name: kafka_$1_$2_$3_count
- type: COUNTER
- labels:
- "$4": "$5"
- - pattern: kafka.(\w+)<type=(.+), name=(.+), (.+)=(.*)><>(\d+)thPercentile
- name: kafka_$1_$2_$3
- type: GAUGE
- labels:
- "$4": "$5"
- quantile: "0.$6"
- - pattern: kafka.(\w+)<type=(.+), name=(.+)><>Count
- name: kafka_$1_$2_$3_count
- type: COUNTER
- - pattern: kafka.(\w+)<type=(.+), name=(.+)><>(\d+)thPercentile
- name: kafka_$1_$2_$3
- type: GAUGE
- labels:
- quantile: "0.$4"
- logging:
- type: inline
- loggers:
- log4j.rootLogger: INFO
- log4j.logger.org.apache.kafka: INFO
- log4j.logger.kafka.authorizer.logger: DEBUG
- resources:
- requests:
- cpu: "0.5"
- memory: 1Gi
- limits:
- cpu: "1"
- memory: 2Gi
- authorization:
- type: simple
- listeners:
- plain:
- authentication:
- type: scram-sha-512
- tls:
- authentication:
- type: scram-sha-512
- external:
- type: nodeport
- tls: true
- authentication:
- type: scram-sha-512
- overrides:
- bootstrap:
- advertisedHost: dev-kafka-cluster-01.example.com
- nodePort: 30010
- brokers:
- - broker: 0
- advertisedHost: dev-kafka-cluster-01.example.com
- nodePort: 30011
- - broker: 1
- advertisedHost: dev-kafka-cluster-01.example.com
- nodePort: 30012
- - broker: 2
- advertisedHost: dev-kafka-cluster-01.example.com
- nodePort: 30013
- config:
- offsets.topic.replication.factor: 3
- transaction.state.log.replication.factor: 3
- transaction.state.log.min.isr: 2
- log.message.format.version: "2.2"
- storage:
- type: persistent-claim
- class: aws-ebs-io
- size: 15Gi
- deleteClaim: false
- template:
- pod:
- affinity:
- podAntiAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- - labelSelector:
- matchExpressions:
- - key: "kubernetes.io/role"
- operator: In
- values:
- - node
- topologyKey: "failure-domain.beta.kubernetes.io/zone"
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: "kubernetes.io/role"
- operator: In
- values:
- - node
- tlsSidecar:
- resources:
- requests:
- cpu: 100m
- memory: 64Mi
- limits:
- cpu: 500m
- memory: 128Mi
- logLevel: info
- readinessProbe:
- initialDelaySeconds: 15
- timeoutSeconds: 5
- livenessProbe:
- initialDelaySeconds: 15
- timeoutSeconds: 5
- zookeeper:
- config:
- autopurge.snapRetainCount: 3
- autopurge.purgeInterval: 1
- jvmOptions:
- "-Xmx": "512m"
- "-Xms": "512m"
- replicas: 3
- readinessProbe:
- initialDelaySeconds: 15
- timeoutSeconds: 5
- livenessProbe:
- initialDelaySeconds: 15
- timeoutSeconds: 5
- metrics:
- lowercaseOutputName: true
- rules:
- # replicated Zookeeper
- - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\\d+)><>(\\w+)"
- name: "zookeeper_$2"
- - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\\d+), name1=replica.(\\d+)><>(\\w+)"
- name: "zookeeper_$3"
- labels:
- replicaId: "$2"
- - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\\d+), name1=replica.(\\d+), name2=(\\w+)><>(\\w+)"
- name: "zookeeper_$4"
- labels:
- replicaId: "$2"
- memberType: "$3"
- - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\\d+), name1=replica.(\\d+), name2=(\\w+), name3=(\\w+)><>(\\w+)"
- name: "zookeeper_$4_$5"
- labels:
- replicaId: "$2"
- memberType: "$3"
- # standalone Zookeeper
- - pattern: "org.apache.ZooKeeperService<name0=StandaloneServer_port(\\d+)><>(\\w+)"
- name: "zookeeper_$2"
- - pattern: "org.apache.ZooKeeperService<name0=StandaloneServer_port(\\d+), name1=(InMemoryDataTree)><>(\\w+)"
- name: "zookeeper_$2_$3"
- resources:
- requests:
- cpu: "0.2"
- memory: 1Gi
- limits:
- cpu: "1"
- memory: 2Gi
- storage:
- type: persistent-claim
- class: aws-ebs-io
- size: 15Gi
- deleteClaim: false
- template:
- pod:
- affinity:
- podAntiAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- - labelSelector:
- matchExpressions:
- - key: "kubernetes.io/role"
- operator: In
- values:
- - node
- topologyKey: "failure-domain.beta.kubernetes.io/zone"
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: "kubernetes.io/role"
- operator: In
- values:
- - node
- tlsSidecar:
- resources:
- requests:
- cpu: 100m
- memory: 64Mi
- limits:
- cpu: 500m
- memory: 128Mi
- logLevel: info
- readinessProbe:
- initialDelaySeconds: 15
- timeoutSeconds: 5
- livenessProbe:
- initialDelaySeconds: 15
- timeoutSeconds: 5
- # kafka and zookeeper sections...
- entityOperator:
- template:
- pod:
- affinity:
- podAntiAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- - labelSelector:
- matchExpressions:
- - key: "kubernetes.io/role"
- operator: In
- values:
- - node
- topologyKey: "failure-domain.beta.kubernetes.io/zone"
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: "kubernetes.io/role"
- operator: In
- values:
- - node
- topicOperator:
- reconciliationIntervalSeconds: 30
- resources:
- request:
- cpu: "0.5"
- memory: 500Mi
- limit:
- cpu: "1"
- memory: 500Mi
- userOperator:
- reconciliationIntervalSeconds: 30
- resources:
- request:
- cpu: "0.5"
- memory: 500Mi
- limit:
- cpu: "1"
- memory: 500Mi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement