-
Notifications
You must be signed in to change notification settings - Fork 0
Apache Kafka
Mambo edited this page Sep 17, 2024
·
5 revisions
대규모 트래픽을 처리하기 위한 아키텍처에는 왜 Apache Kafka 가 포함되어 있을까?
version: '3'
services:
kafka:
image: confluentinc/confluent-local:7.5.6
hostname: kafka
container_name: kafka
ports:
- "9092:9092"
- "8082:8082"
environment:
KAFKA_NODE_ID: 1
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: 'CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT'
KAFKA_ADVERTISED_LISTENERS: 'PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092'
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
KAFKA_PROCESS_ROLES: 'broker,controller'
KAFKA_CONTROLLER_QUORUM_VOTERS: '1@kafka:29093'
KAFKA_LISTENERS: 'PLAINTEXT://kafka:29092,CONTROLLER://kafka:29093,PLAINTEXT_HOST://0.0.0.0:9092'
KAFKA_INTER_BROKER_LISTENER_NAME: 'PLAINTEXT'
KAFKA_CONTROLLER_LISTENER_NAMES: 'CONTROLLER'
KAFKA_LOG_DIRS: '/tmp/kraft-combined-logs'
KAFKA_REST_HOST_NAME: rest-proxy
KAFKA_REST_BOOTSTRAP_SERVERS: 'kafka:29092'
KAFKA_REST_LISTENERS: "http://0.0.0.0:8082"
CLUSTER_ID: '4L6g3nShT-eMCtK--X86sw'
kafka-ui:
container_name: kafka-ui
image: provectuslabs/kafka-ui:latest
ports:
- "8080:8080"
depends_on:
- kafka
environment:
KAFKA_CLUSTERS_0_NAME: local
KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka:29092
DYNAMIC_CONFIG_ENABLED: 'true' # not necessary, added for tests
KAFKA_CLUSTERS_0_AUDIT_TOPICAUDITENABLED: 'true'
KAFKA_CLUSTERS_0_AUDIT_CONSOLEAUDITENABLED: 'true'- confluent-local : Apache Kafka® in KRaft mode with zero configuration setup.
- kafka-ui : Web Management UI
대부분 wurstmeister/kafka-docker 또는 confluentinc/cp-kafka 로 Kafka 클러스러를 구성한다.
https://github.com/confluentinc/cp-all-in-one/blob/7.5.0-post/cp-all-in-one/docker-compose.yml
- Kafka 이중화로 다양한 장애 상황 완벽 대처하기
- 클라우드 환경에서의 Kafka 운영기
- 카프카, 대규모 클러스터 운영 후기
- 신뢰성 있는 카프카 애플리케이션을 만드는 3가지 방법
- Kafka를 활용한 이벤트 기반 아키텍처 구축
- Kafka Streams를 활용한 이벤트 스트림 처리 삽질기
- 네이버 스케일로 카프카 컨슈머 사용하기
- 바르게, 빠르게! Reactive를 품은 Spring Kafka
- AWS MSK Connect 효과적으로 운영하기
- Amazon MSK에서 올바른 클러스터 유형을 선택하는 방법
- 데이터 싱크를 위한 MSK Connect 도입
- B2B 알림 서비스에 Kafka CDC 적용하기
- Apache Kafka를 사용하여 EDA 적용하기
- 실무 관점에서의 Apache Kafka 활용
- 우리 팀은 카프카를 어떻게 사용하고 있을까
- ksqlDB를 활용한 증권사의 실시간 데이터 처리하기