728x90
Confluent에서 제공하는 Confluent Platform Reference Architecture)
Confluent Platform Reference Architecture - Confluent
Confluent is building the foundational platform for data in motion so any organization can innovate and win in a digital-first world.
www.confluent.io
- Confluent Platform Architecture
- Large Cluster Reference Architecture
- Small Cluster Reference Architecture
- Capacity Planning
- Hardware Recommendations for On-Premises
- Deployment
- Public Cloud Deployment
Large Cluster Reference Architecture
높은 처리량의 장기적인 확장성을 위해 구축된 Confluent Platform 클러스터 아키텍처

- 이 아키텍처는 확장을 고려해 설계
- 각 구성 요소는 자체 서버를 기반으로 구성
- 노드를 추가하여 독립적으로 확장할 수 있음
- 예로, Confluent REST Proxy를 사용하는 애플리케이션을 추가할 때 REST Proxy는 더 이상 필요한 처리량을 제공하지 못하는 반면 기존 Kafka Broker에는 여전히 여유 용량이 있다면, 이 경우 REST Proxy 노드를 추가하여 확장하면 됨
Small Cluster Reference Architecture
Confluent Platform의 채택 초기 단계에서 주로 사용하는 아키텍처

- 대부분 Kafka를 처음 도입하는 조직은 부하가 제한된 하나의 사용 사례에 대해 Confluent Platform을 채택하는 것으로 시작
- 이 채택이 성공적으로 입증되면 조직은 추가 애플리케이션과 팀을 수용할 수 있도록 클러스터를 확장
- 일반적으로 초기 도입 프로젝트의 성공을 위해 전체 배포에 대한 투자가 필요하지 않은 Confluent Platform 채택의 초기 단계에 이 아키텍처를 권장
- 이러한 경우 더 적은 수의 서버로 시작하고 서버당 여러 구성 요소를 설치하는 것을 권장
- Confluent Control Center 및 Confluent ksqlDB와 같은 리소스 집약적 구성 요소에 대해서는 전용 서버를 구성하는 것을 권장
Hardware Recommendations for On-Premises Deployment Large Cluster
Large Cluster용 HW 권장 사양
| Component | Nodes | Strage | Memory | CPU |
| Zookeeper | 5 (내결함성을 위해) | Transaction log: 512GB SSD Storage: 2 X 1TB SATA, RAID 10 |
32GB | 2-4 cores |
| Kafka Broker | 최소3 (추가 스토리지, 메모리, 네트워크 처리량을 위해서 추가) | 12X1TBdisk,RAID10는 선택사항 | 64GB이상 (많을수록 좋음) | Dual 12-core sockets |
| Kafka Connect | 최소2 (고가용성을 위해) | 설치에 필요한 만큼만 | 0.5-4 GB Heap 사이즈 ( Connector 사용에 따라 다름 ) |
CPU를 많이 사용하지 않음 |
| Confluent Schema Registry | 최소2 (고가용성을 위해) | 설치에 필요한 만큼만 | 1 GB Heap 사이즈 | CPU를 많이 사용하지 않음 |
| Confluent REST Proxy | 최소2 고가용성을 위해 ( 처리량 증가를 위해서 추가 ) | 설치에 필요한 만큼만 | 1GB + 64 MB per Producer + 16 MB per Consumer |
최소 16 cores |
| ksqlDB | 최소2 고가용성을 위해 (처리량 증가를 위해서 추가) | SSD 동시 Query수와 수행되는 집계에 따라 용량이 다름 |
최소20GB | 최소 4 cores |
| Control Center | 1 | 최소 300 GB(SSD 선호) | 32GB이상 | 최소 8 cores |
Small Cluster용 HW 권장 사양
| Component | Nodes | Strage | Memory | CPU |
| Zookeeper + Kafka Broker | 최소3 | 12X1TBdisk 1개의 Transaction log 전용 disk |
64GB 이상 | Dual 12 core sockets |
| Kafka Connect + Confluent Schema Registry + Confluent REST Proxy | 최소2 ( 고가용성을 위해 ) | 설치에 필요한 만큼만 | 1 GB (Connect) 1 GB (Schema Registry) 1GB+64MBper Producer + 16 MB per Consumer(REST Proxy) |
최소 16 cores |
| ksqlDB | 최소2 고가용성을 위해 (처리량 증가를 위해서 추가) | SSD 동시 Query수와 수행되는 집계에 따라 용량이 다름 |
최소20GB | 최소 4 cores |
| Control Center | 1 | 최소 300 GB(SSD 선호) | 32GB이상 | 최소 8 cores |
Public Cloud Deployment AWS, MS Azure, Google Cloud Platform
유의할 점
- Core : Cloud Provider는 시스템 크기를 조정할 때 "가상" Core를 사용 일반적으로 데이터 센터에서 사용하는 최신 Core보다 성능이 낮을 수 있음
- Network : 대부분의 Cloud Provider는 최상위 계층 노드에서만 10GbE를 제공
- 복제 트래픽을 고려한 필요 처리량을 제공하기에 충분한 네트워크 용량 확인
- On-Premises 환경에서 설치시 HW 사양을 Public Cloud 환경에서도 권장
Public Cloud Deployment AWS EC2
| Component | Node Type | Memory | CPU | Storage | Network |
| Zookeeper | m5.large | 8GB | 2 vCPU | 1X32GBSSD | Up to 10 Gbps |
| Kafka Broker | r5.large | 30.5 GB | 4 vCPU | SSD-based EBS Storage EBS Optimized | Up to 10 Gbps |
| Kafka Connect | c5.xlarge | 8GB | 4 vCPU | Use EBS | Up to 10 Gbps |
| Confluent REST Proxy | c5.xlarge | 8GB | 4 vCPU | Use EBS | Up to 10 Gbps |
| Confluent Schema Registry | m5.large | 8GB | 2 vCPU | Use EBS | Up to 10 Gbps |
| Confluent ksqlDB | i3.xlarge or r5.xlarge | 30.5 GB | 4 vCPU | Use EBS(SSD, optimized) | Up to 10 Gbps |
| Confluent Control Center |
m5.2xlarge | 32 GB | 8 vCPU | Use EBS(SSD, optimized) | Up to 10 Gbps |
Google Cloud Compute Engine 최소 사양
| Component | Node Type | Memory | CPU | Storage |
| Zookeeper | n1-standard-2 | 7.5 GB | 2 vCPU | Zonal SSD persistent disks |
| Kafka Broker | n1-highmem-4 | 26 GB | 4 vCPU | Zonal Standard persistent disks |
| Kafka Connect | n1-standard-4 | 15 GB | 4 vCPU | Zonal Standard persistent disks |
| Confluent REST Proxy | n1-standard-4 | 15 GB | 4 vCPU | Zonal Standard persistent disks |
| Confluent Schema Registry | n1-standard-2 | 7.5 GB | 2 vCPU | Zonal Standard persistent disks |
| Confluent ksqlDB | n1-highmem-4 | 26 GB | 4 vCPU | Zonal SSD persistent disks |
| Confluent Control Center |
n1-highmem-8 | 52 GB | 8 vCPU | Zonal SSD persistent disks |
Eventsizer Kafka Sizing을 위한 도구
728x90
'Kafka 완전 정복 : 클러스터 구축부터 MSA 환경 활용까지 > 기본,심화 개념, 아키텍처와 생태계' 카테고리의 다른 글
| Ch03. Apache Kafka 구성 및 관리 - Installation, Cluster Configuration (0) | 2023.05.03 |
|---|---|
| Ch03. Apache Kafka 구성 및 관리 - Kafka in Real Environment (0) | 2023.05.02 |
| Ch02. Apache Kafka 심화 개념 및 이해 - Exactly Once Semantics(EOS) (0) | 2023.04.16 |
| Ch02. Apache Kafka 심화 개념 및 이해 - Kafka Log File (0) | 2023.04.16 |
| Ch02. Apache Kafka 심화 개념 및 이해 - Partition Assignment Strategy (0) | 2023.04.16 |