initial commit

This commit is contained in:
allard
2025-11-23 18:58:51 +01:00
commit 376a944abc
1553 changed files with 314731 additions and 0 deletions

3
dev/kafka/README.md Executable file
View File

@@ -0,0 +1,3 @@
nodeport installeren en dan met scriptjes Topics en Messages maken.
Vergeet niet de nodeport in de scriptjes aan te passen!

View File

@@ -0,0 +1,19 @@
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: dev-kafka
title: Kafka (dev)
description: Kafka instance running in Kubernetes
annotations:
backstage.io/kubernetes-label-selector: "app=kafka"
links:
- url: https://github.com/AllardKrings/kubernetes/dev/kafka
title: itop-configuration
docs:
- url: ./README.md
spec:
type: service
lifecycle: production
owner: group:default/allarddcs
subcomponentOf: component:default/DEV-cluster

4
dev/kafka/create-message.sh Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/bash
echo $2 >> message
kcat -b 192.168.40.83:9092 -t $1 message -P
rm message

2
dev/kafka/create-topic.sh Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/bash
kcat -b 192.168.40.83:9092 -t $1 -P

1
dev/kafka/hallo Executable file
View File

@@ -0,0 +1 @@
hallo hier ben ik!

2401
dev/kafka/helm/values.yaml Executable file

File diff suppressed because it is too large Load Diff

16
dev/kafka/ingressroute-tls.yml Executable file
View File

@@ -0,0 +1,16 @@
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: kafka-tls
namespace: kafka
spec:
entryPoints:
- websecure
routes:
- match: Host(`kafka-ui-prod.allarddcs.nl`)
kind: Rule
services:
- name: kafka-ui
port: 8080
tls:
certResolver: letsencrypt

View File

@@ -0,0 +1,12 @@
apiVersion: v1
kind: Service
metadata:
name: kafka-loadbalancer
spec:
ports:
- port: 9092
name: kafka-port
protocol: TCP
selector:
app: kafka
type: LoadBalancer

12
dev/kafka/kafka-nodeport.yaml Executable file
View File

@@ -0,0 +1,12 @@
apiVersion: v1
kind: Service
metadata:
name: kafka-nodeport
labels:
app: kafka
spec:
ports:
- port: 9092
selector:
app: kafka
type: NodePort

View File

@@ -0,0 +1 @@
kubectl port-forward svc/kafka-service 9092

19
dev/kafka/kafka-pv.yaml Executable file
View File

@@ -0,0 +1,19 @@
apiVersion: v1
kind: PersistentVolume
metadata:
name: kafka-pv
spec:
storageClassName: ""
capacity:
storage: 1Gi
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
mountOptions:
- hard
- nfsvers=4.1
nfs:
server: 192.168.2.28
path: /mnt/nfs_share/kafka
readOnly: false

18
dev/kafka/kafka-pvc.yaml Executable file
View File

@@ -0,0 +1,18 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: kafka-pvc
spec:
storageClassName: ""
volumeName: kafka-pv
accessModes:
- ReadWriteMany
volumeMode: Filesystem
resources:
requests:
storage: 1Gi

14
dev/kafka/kafka-ui-np.yaml Executable file
View File

@@ -0,0 +1,14 @@
apiVersion: v1
kind: Service
metadata:
name: kafka-ui
labels:
name: kafka-ui
spec:
type: NodePort
ports:
- port: 8080
nodePort: 31890
name: http
selector:
app: kafka-ui

26
dev/kafka/kafka-ui.yaml Executable file
View File

@@ -0,0 +1,26 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: kafka-ui
labels:
app: kafka-ui
spec:
replicas: 1
selector:
matchLabels:
app: kafka-ui
template:
metadata:
labels:
app: kafka-ui
spec:
containers:
- name: kafka-ui
image: provectuslabs/kafka-ui
ports:
- containerPort: 8080
env:
- name: KAFKA_CLUSTERS_0_NAME
value: "kafka-service"
- name: KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS
value: "kafka-service:9092"

103
dev/kafka/kafka.yaml Executable file
View File

@@ -0,0 +1,103 @@
apiVersion: v1
kind: Service
metadata:
name: kafka-service
labels:
app: kafka
spec:
ports:
- port: 9092
selector:
app: kafka
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kafka-deployment
spec:
replicas: 1
selector:
matchLabels:
app: kafka
template:
metadata:
labels:
app: kafka
spec:
containers:
- name: kafka
image: ubuntu/kafka:edge
env:
- name: ZOOKEEPER_HOST
value: zookeeper-service
args: ["/etc/kafka/server.properties", "--override", "advertised.listeners=PLAINTEXT://kafka-service:9092"]
ports:
- containerPort: 9092
name: kafka
protocol: TCP
volumeMounts:
- mountPath: /var/lib/kafka/data
name: kafka-data
subPath: kafka/data
volumes:
- name: kafka-data
persistentVolumeClaim:
claimName: kafka-pvc
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kafka-ui
labels:
app: kafka-ui
spec:
replicas: 1
selector:
matchLabels:
app: kafka-ui
template:
metadata:
labels:
app: kafka-ui
spec:
containers:
- name: kafka-ui
image: provectuslabs/kafka-ui
ports:
- containerPort: 8080
env:
- name: KAFKA_CLUSTERS_0_NAME
value: "kafka-service"
- name: KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS
value: "kafka-service:9092"
---
apiVersion: v1
kind: Service
metadata:
name: kafka-ui
labels:
name: kafka-ui
spec:
type: NodePort
ports:
- port: 8080
nodePort: 31890
name: http
selector:
app: kafka-ui
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: kafka-ui-tls-allarddcs
spec:
entryPoints:
- websecure
routes:
- match: Host(`kafka-prod.allarddcs.nl`)
kind: Rule
services:
- name: kafka-ui
port: 8080
tls:
certResolver: letsencrypt

47
dev/kafka/kafka2.yaml Executable file
View File

@@ -0,0 +1,47 @@
apiVersion: v1
kind: Service
metadata:
labels:
app: kafka-broker
name: kafka-service
namespace: kafka
spec:
ports:
- port: 9092
selector:
app: kafka-broker
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: kafka-broker
name: kafka-broker
namespace: kafka
spec:
replicas: 1
selector:
matchLabels:
app: kafka-broker
template:
metadata:
labels:
app: kafka-broker
spec:
hostname: kafka-broker
containers:
- env:
- name: KAFKA_BROKER_ID
value: "1"
- name: KAFKA_ZOOKEEPER_CONNECT
value: <ZOOKEEPER-INTERNAL-IP>:2181
- name: KAFKA_LISTENERS
value: PLAINTEXT://:9092
- name: KAFKA_ADVERTISED_LISTENERS
value: PLAINTEXT://kafka-broker:9092
# image: wurstmeister/kafka
image: ubuntu/kafka:edge
imagePullPolicy: IfNotPresent
name: kafka-broker
ports:
- containerPort: 9092

1
dev/kafka/patch-nodeport.sh Executable file
View File

@@ -0,0 +1 @@
kubectl patch svc nodeport -p '{"spec":{"externalTrafficPolicy":"Cluster"}}'

3
dev/kafka/readmessage.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
kcat -q -C -b 192.168.40.83 -t $1
exit

33
dev/kafka/zookeeper.yaml Executable file
View File

@@ -0,0 +1,33 @@
apiVersion: v1
kind: Service
metadata:
name: zookeeper-service
labels:
app: zookeeper
spec:
ports:
- port: 2181
selector:
app: zookeeper
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: zookeeper-deployment
spec:
replicas: 1
selector:
matchLabels:
app: zookeeper
template:
metadata:
labels:
app: zookeeper
spec:
containers:
- name: zookeeper
image: ubuntu/zookeeper:edge
ports:
- containerPort: 2181
name: zookeeper
protocol: TCP

41
dev/kafka/zookeeper2.yaml Executable file
View File

@@ -0,0 +1,41 @@
apiVersion: v1
kind: Service
metadata:
labels:
app: zookeeper-service
name: zookeeper-service
namespace: kafka
spec:
type: NodePort
ports:
- name: zookeeper-port
port: 2181
nodePort: 30181
targetPort: 2181
selector:
app: zookeeper
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: zookeeper
name: zookeeper
namespace: kafka
spec:
replicas: 1
selector:
matchLabels:
app: zookeeper
template:
metadata:
labels:
app: zookeeper
spec:
containers:
# - image: wurstmeister/zookeeper
- image: ubuntu/zookeeper:edge
imagePullPolicy: IfNotPresent
name: zookeeper
ports:
- containerPort: 2181