인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
채널톡 아이콘

인프런 커뮤니티 질문&답변

otteu1m님의 프로필 이미지

작성한 질문수 6

[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!

로컬에서 카프카 브로커 실행

주키퍼 없이 사용 문의 드립니다.

작성

·

64

0

안녕하세요 개발자님

 

컨프런트 카프카 사용하다가, 주키퍼 없이 사용 해보고 싶어서 문의 드립니다. Apach Kafka 에서 Kraft 모드 를 사용 하면 주키퍼 없이 사용된다는 글을 보았습니다.

실제로 사용해도 되는지 현재 날짜 기준으로 괜찬은지 궁금 하며, 버전은 무엇을 써야 하는지 금굼 합니다.

 

또 Kraft 모드가 아직 실무에서 적합하지 않다면, 주키퍼를 같이 사용하는 Kafka 오픈소스 버전은 현재 날짜로 기준으로 실무에서 사용하기, connect, stream, ksqldb 등 호환이 잘되는 버전이 궁금합니다,

 

별개로 강의에서 실무에는 최소 3개의 브로커가 사용을 권장 한다고 하셧는데, 브로커 1대의 의미가 물리 디바이스(pc) 를 의미 하는 건가요? 즉 3대의 pc 가 필요 하다는 말인가요?

 

권장 스팩으로 메모리 32Gi 라고 되어있는데, 32gi 이상의 메모리를 탑재 하면, 그 이상의 페이지 캐시가 되는 걸까요? 아니면 설정이 따로 존재 하는 걸까요? 아니면 32gi이상은 효율이 떨어져서 권장 하지 않는 건가요?

답변 1

0

데브원영 DVWY님의 프로필 이미지
데브원영 DVWY
지식공유자

안녕하세요~

아파치 카프카는 3.x버전부터 주키퍼가 없는 채로 운영이 가능한 kraft 모드의 카프카를 제공하고 있습니다. 3점대 초반에는 불안한 모습을 많이 보였으나 3.8.0 이후 버전에서는 꽤 안정적으로 운영되고 있으며 많은 기업에서 도입해서 사용중에 있습니다. 그러나 출시된지 얼마되지 않은지라 일부 트러블 슈팅에서 어려움이 보여서 아직까지도 주키퍼를 포함한 형태로 운영하는 경우도 종종 있는 것으로 알고 있습니다.

kraft와 무관하게 카프카 오픈소스(주키퍼 포함)은 커넥트, 스트림즈와 잘 호환되며 이는 오픈소스 아파치 카프카와 함께 배포되기 때문에 문제가 없습니다. 다만, ksqldb와 같이 confluent에서 사기업이 운영하는 애플리케이션은 버전별 호환성에 대해 개별적으로 알아보시고 확인하는게 좋아보입니다.

추가로 브로커 1대는 1대의 물리적 장비를 뜻하고 실제로 운영할 때는 물리적 장비 3대 이상을 운영하고 각 서버에 1개의 브로커 애플리케이션을 실행하여 운영하는 것이 일방적입니다. 또한, 권장 스펙인 메모리 32GB는 말그대로 '권장 스펙'이기 때문에 실행/운영하시는 환경의 데이터 처리량과 네트워크 가용량, 브로커의 튜닝 상황에 따라 다르게 운영하시면 됩니다. 극단적으로 데이터의 처리가 많지 않다면 8GB 물리 장비로 운영하는 경우도 있다고 볼 수있습니다.