Obsidian/Recognition/Programing/Kafka(AMQP)/물리적인 구성.md

29 lines
1.5 KiB
Markdown
Raw Normal View History

2023-08-14 16:19:25 +00:00
#### 주키퍼
1) 주키퍼 서버 수량
원칙 : 기본적으로 쿼럼(과반수) 구성을 기반으로 동작하여 반드시 홀수로 구성해야 합니다. 최소 3개
예시) 주키퍼 서버 5개가 있다면 과반수인 3을 충족할 수 있는 최대 2대까지의 주키퍼 장애를 허용
2) 주키퍼 하드웨어
높은 하드웨어 리소스가 필요하지 않으므로 주키퍼의 물리적 메모리 크기는 4~8GB로 구성
디스크는 240G 또는 470G SSD - 쓰기 성능이 좋은 SSD / 힙 메모리 크기 1~2GB
과도한 물리 메모리를 장착하는 것은 메모리를 낭비함
#### 카프카
1) 카프카 서버 수량
주키퍼와 다른 점 : 주키퍼 처럼 쿼럼 방식의 구성이 필요하지 않아 홀수일 필요가 없어 4대, 6대 등으로도 구성이 가능, 최소 3대
카프카가 손쉽게 서버 확장을 할 수 있는 장점이 있어 꼭 필요한 수량만큼만 구성
2) 카프카 하드웨어
주키퍼와 다른 점 : 카프카의 CPU 사용률이 높음
프로듀서나 컨슈머의 처리량을 높이기 위해 배치와 압축 기능을 많이 적용하여 많은 리소스가 요구됨
최고의 고성능 CPU만 할 필요 없이 코어 수가 많은 CPU로 구성
메모리 32GB부터 256GB까지 다양하게 선택할 수 있고 카프카에서 사용하는 JVM 힙 크기가 일반적으로 6GB 정도로 이보다 큰 물리 메모리가 요구됨
⇒ 카프카 배치는 주키퍼와 마찬가지로 여러 서버에 분산하여 멀티 가용 영역을 구성하는 것을 권장