Broker 외부에 노출하기
2025. 3. 10. 00:17ㆍk8s/Kafka
Service: node별로 생성
apiVersion: v1
kind: Service
metadata:
name: kafka-0-svc
namespace: kafka
spec:
type: LoadBalancer
ports:
- port: 9092 # Kafka default port
targetPort: 9092
selector:
statefulset.kubernetes.io/pod-name: kafka-0
ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: kafka-external-config
namespace: kafka
data:
kafka-0: "PLAINTEXT://{LoadBalancer1 IP}:9092"
kafka-1: "PLAINTEXT://{LoadBalancer2 IP}:9092"
kafka-2: "PLAINTEXT://{LoadBalancer3 IP}:9092"
StatefulSet
command:
- "/bin/bash"
- "-c"
- |
export KAFKA_ADVERTISED_LISTENERS=$(cat /etc/kafka-external-config/$(hostname))
exec /etc/confluent/docker/run
volumeMounts:
- name: external-config
mountPath: /etc/kafka-external-config
volumes:
- name: external-config
configMap:
name: kafka-external-config
producer
spring:
kafka:
bootstrap-servers: {외부IP1}:9092,{외부IP2}:9092,{외부IP3}:9092,
'k8s > Kafka' 카테고리의 다른 글
org.apache.avro.SchemaParseException: Illegal character in: x-forwarded-for (0) | 2025.03.14 |
---|---|
Avro 설정 (0) | 2025.03.14 |
kafka-ui에 schema registry 연결하기 (0) | 2025.03.09 |
Kafka Topic 생성 및 Producer/Consumer 테스트 (0) | 2025.03.03 |
kafka-ui 설치 (0) | 2025.03.01 |