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

1.5 KiB

주키퍼

  1. 주키퍼 서버 수량

원칙 : 기본적으로 쿼럼(과반수) 구성을 기반으로 동작하여 반드시 홀수로 구성해야 합니다. 최소 3개 예시) 주키퍼 서버 5개가 있다면 과반수인 3을 충족할 수 있는 최대 2대까지의 주키퍼 장애를 허용

  1. 주키퍼 하드웨어

높은 하드웨어 리소스가 필요하지 않으므로 주키퍼의 물리적 메모리 크기는 4~8GB로 구성 디스크는 240G 또는 470G SSD - 쓰기 성능이 좋은 SSD / 힙 메모리 크기 1~2GB 과도한 물리 메모리를 장착하는 것은 메모리를 낭비함

카프카

  1. 카프카 서버 수량

주키퍼와 다른 점 : 주키퍼 처럼 쿼럼 방식의 구성이 필요하지 않아 홀수일 필요가 없어 4대, 6대 등으로도 구성이 가능, 최소 3대 카프카가 손쉽게 서버 확장을 할 수 있는 장점이 있어 꼭 필요한 수량만큼만 구성

  1. 카프카 하드웨어

주키퍼와 다른 점 : 카프카의 CPU 사용률이 높음 프로듀서나 컨슈머의 처리량을 높이기 위해 배치와 압축 기능을 많이 적용하여 많은 리소스가 요구됨 최고의 고성능 CPU만 할 필요 없이 코어 수가 많은 CPU로 구성 메모리 32GB부터 256GB까지 다양하게 선택할 수 있고 카프카에서 사용하는 JVM 힙 크기가 일반적으로 6GB 정도로 이보다 큰 물리 메모리가 요구됨

⇒ 카프카 배치는 주키퍼와 마찬가지로 여러 서버에 분산하여 멀티 가용 영역을 구성하는 것을 권장