commit 09a368b484ca6c50d0275e917b1b5b9d37dc9652 Author: Hoang Nguyen Date: Tue May 5 22:30:30 2026 +0200 first commit diff --git a/argocd/applications/kafka-dev.yaml b/argocd/applications/kafka-dev.yaml new file mode 100644 index 0000000..10490ea --- /dev/null +++ b/argocd/applications/kafka-dev.yaml @@ -0,0 +1,24 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: kafka-dev + namespace: argocd +spec: + project: default + source: + repoURL: 'https://gitea.vhn-demo.duckdns.org/hoang/strimzi.git' + path: k8s/overlays/dev + targetRevision: main + destination: + server: 'https://kubernetes.default.svc' + namespace: kafka-dev + syncPolicy: + automated: + prune: true + selfHeel: true + syncOptions: + - CreateNamespace=true + - ServerSideApply=true + dependsOn: + - name: strimzi-operator + diff --git a/argocd/applications/strimzi-operator.yaml b/argocd/applications/strimzi-operator.yaml new file mode 100644 index 0000000..bc9e19a --- /dev/null +++ b/argocd/applications/strimzi-operator.yaml @@ -0,0 +1,40 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: strimzi-operator + namespace: argocd +spec: + project: default + source: + repoURL: 'https://strimzi.io/charts/' + chart: strimzi-kafka-operator + targetRevision: 0.40.0 + helm: + values: | + installCRDs: false + resources: + requests: + cpu: "500m" + memory: 512Mi + limits: + cpu: "1000m" + memory: 1Gi + destination: + server: 'https://kubernetes.default.svc' + namespace: kafka-system + syncPolicy: + automated: + prune: true + selfHeel: false + syncOptions: + - CreateNamespace=true + - ServerSideApply=true + ignoreDifferences: + - group: apps + kind: Deployment + name: strimzi-cluster-operator + jsonPointers: + - /spec/template/spec/volumes + template: + spec: + terminationGracePeriodSeconds: 60 \ No newline at end of file diff --git a/k8s/base/kafka-cluster/cluster.yaml b/k8s/base/kafka-cluster/cluster.yaml new file mode 100644 index 0000000..5b54551 --- /dev/null +++ b/k8s/base/kafka-cluster/cluster.yaml @@ -0,0 +1,44 @@ +apiVersion: kafka.strimzi.io/v1beta2 +kind: Kafka +metadata: + name: dev-cluster + namespace: kafka +spec: + kafka: + version: 3.6.1 + replicas: 1 + listeners: + - name: plain + port: 9092 + type: internal + tls: false + config: + offsets.topic.replication.factor: 1 + transaction.state.log.replication.factor: 1 + transaction.state.log.min.isr: 1 + storage: + type: ephemeral + zookeeper: + replicas: 1 + storage: + type: ephemeral +--- +apiVersion: kafka.strimzi.io/v1beta2 +kind: KafkaTopic +metadata: + name: dev-topic + labels: + strimzi.io/cluster: dev-cluster +spec: + partitions: 1 + replicas: 1 +--- +apiVersion: kafka.strimzi.io/v1beta2 +kind: KafkaUser +metadata: + name: dev-user + labels: + strimzi.io/cluster: dev-cluster +spec: + authentication: + type: scram-sha-512 diff --git a/k8s/base/kafka-cluster/kafka.yaml b/k8s/base/kafka-cluster/kafka.yaml new file mode 100644 index 0000000..e25923a --- /dev/null +++ b/k8s/base/kafka-cluster/kafka.yaml @@ -0,0 +1,24 @@ +apiVersion: kafka.strimzi.io/v1beta2 +kind: Kafka +metadata: + name: dev-cluster + namespace: kafka +spec: + kafka: + version: 3.6.1 + replicas: 1 + listeners: + - name: plain + port: 9092 + type: internal + tls: false + config: + offsets.topic.replication.factor: 1 + transaction.state.log.replication.factor: 1 + transaction.state.log.min.isr: 1 + storage: + type: ephemeral + zookeeper: + replicas: 1 + storage: + type: ephemeral diff --git a/k8s/base/kafka-cluster/kustomization.yaml b/k8s/base/kafka-cluster/kustomization.yaml new file mode 100644 index 0000000..245c8c0 --- /dev/null +++ b/k8s/base/kafka-cluster/kustomization.yaml @@ -0,0 +1,4 @@ + - kafka.yaml + - topics.yaml + - users.yaml + diff --git a/k8s/base/kafka-cluster/topics.yaml b/k8s/base/kafka-cluster/topics.yaml new file mode 100644 index 0000000..6086113 --- /dev/null +++ b/k8s/base/kafka-cluster/topics.yaml @@ -0,0 +1,9 @@ +apiVersion: kafka.strimzi.io/v1beta2 +kind: KafkaTopic +metadata: + name: dev-topic + labels: + strimzi.io/cluster: dev-cluster +spec: + partitions: 1 + replicas: 1 diff --git a/k8s/base/kafka-cluster/users.yaml b/k8s/base/kafka-cluster/users.yaml new file mode 100644 index 0000000..94be40c --- /dev/null +++ b/k8s/base/kafka-cluster/users.yaml @@ -0,0 +1,9 @@ +apiVersion: kafka.strimzi.io/v1beta2 +kind: KafkaUser +metadata: + name: dev-user + labels: + strimzi.io/cluster: dev-cluster +spec: + authentication: + type: scram-sha-512 diff --git a/k8s/base/strimzi-operator/patch-tmp-size.yaml b/k8s/base/strimzi-operator/patch-tmp-size.yaml new file mode 100644 index 0000000..84346e4 --- /dev/null +++ b/k8s/base/strimzi-operator/patch-tmp-size.yaml @@ -0,0 +1,14 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: strimzi-cluster-operator +spec: + template: + spec: + volumes: + - name: strimzi-tmp + emptyDir: + sizeLimit: 100Mi + - name: co-config-volume + configMap: + name: strimzi-cluster-operator \ No newline at end of file diff --git a/k8s/overlays/dev/kustomization.yaml b/k8s/overlays/dev/kustomization.yaml new file mode 100644 index 0000000..e4595fd --- /dev/null +++ b/k8s/overlays/dev/kustomization.yaml @@ -0,0 +1,6 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ../../base/kafka-cluster + +