본문 바로가기

빅데이터/Kafka

AWS MSK 사용시 인스턴스 유형별 최대 토픽 개수

AWS MSK는 카프카를 SaaS형태로 사용가능한 AWS서비스중 하나입니다. 완전관리형 SaaS는 아니지만 다양한 옵션을 지정할 수 있으며, 추가적인 모니터링 도구를 제공해주기 때문에 아주 편리하게 사용할 수 있습니다. MSK에서는 총 7개의 인스턴스유형을 제공하는데, 각 인스턴스 유형별로 생성할 수 있는 토픽의 개수를 살펴보도록 하겠습니다.

MSK Bestcase 문서에 따르면 적정크기의 클러스터에 대한 내용이 나와 있습니다. 여기서는 MSK클러스터를 생성할 때 브로커 노드의 유형 및 수에 대한 상세한 내용이 나와 있는데 그 중 브로커당 파티션수에 대한 내용이 아래와 같이 정리되어 있습니다.

MSK 브로커당 최대 파티션 수

위 그림에서 보는 것 처럼 t3.small이 가장 작고 m5.24xlarge가 가장 큰 파티션 개수를 가질 수 있는 것을 확인할 수 있습니다. 보통 토픽의 replication-factor를 3으로 지정하므로 해당 replication-factor를 기준으로 역계산하면 각 인스턴스 유형별로 생성 가능한 토픽의 개수를 계산할 수 있습니다.

브로커 인스턴스 유형 브로커당 최대 토픽 수(replication factor 3 인 경우)
t3.small 100개
m5.large 또는 m5.xlarge 333개
m5.2xlarge 666개
m5.4xlarge, m5.12xlarge 또는 m5.24xlarge  1,333개


다만 위 계산은 브로커가 3대인 경우를 가정하여 적은 것입니다. 만약 브로커가 늘어나는 경우 각 브로커당 분배되는 파티션의 개수가 늘어나기 때문에 최대 토픽수는 더욱 늘어나게 되는점을 참고해야합니다.