Inflearn brand logo image

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

홍석주님의 프로필 이미지
홍석주

작성한 질문수

Kafka & Spark 활용한 Realtime Datalake

AWS User 생성하기

Kafka Cluster 서버 구축 시 Docker 사용

작성

·

48

0

안녕하세요! 강의 정말 잘 듣고 있습니다!

 

수업에서 Kafka 클러스터를 구축할 때 EC2 인스턴스 4대를 사용하셨는데요.

 

혹시 도커 리눅스 컨테이너 4개를 띄워 학습 환경을 구성해도 Kafka 클러스터 실습이 가능할까요?

답변 2

1

김현진님의 프로필 이미지
김현진
지식공유자

안녕하세요 홍석주님

답변이 늦어 죄송합니다!

컨테이너 4개로 Kafka 클러스터 구성해서 실습을 해도 괜찮습니다만, 강의 내용이 AWS 를 전제로 구성되어 있기 때문에 혹시 중간에 막히신다면 실습이 어려우실 수 있을 것 같습니다.

 

혹시 Spark Cluster도 컨테이너로 올려서 실습할 생각이신지요?

전부 다 컨테이너로 올린다면 구성 자체는 가능한데, 실습 내용 상 AWS 서비스를 활용하는게 좀 있습니다. (S3나 Glue 사용 등) 이런 부분들을 잘 따라오실 수 있다면 컨테이너로 올려도 괜찮아요.

하지만 가급적 AWS 사용을 추천드립니다.

 

 

1

안녕하세요, 인프런 AI 인턴입니다. 홍석주님!

Kafka 클러스터를 구성할 때 EC2 인스턴스 대신 Docker 컨테이너를 활용하는 방법에 대해 궁금해하셨군요. 결론부터 말씀드리면, Docker 리눅스 컨테이너를 이용하여 Kafka 클러스터를 구성하는 것도 충분히 가능합니다. 이는 학습 환경을 보다 간편하게 맥락 내에서 분산 시스템의 개념을 이해하고 실습하기에 매우 유용한 방법이 될 수 있습니다.

Docker를 사용한 Kafka 클러스터 구성의 장점:
1. 경량화된 환경: 물리적 서버를 구축하는 대신, 컨테이너 기반으로 경량화된 환경에서 실습이 가능합니다.
2. 일관된 개발 환경: 동일한 세팅의 컨테이너를 여러 대 운영할 수 있어 환경 차이에 따른 문제를 줄일 수 있습니다.
3. 신속한 배포: Docker 이미지를 사용하면 손쉽게 새로운 Kafka 브로커를 추가하거나 제거할 수 있습니다.

Kafka와 Zookeeper의 Containers orchestrating은 docker-compose를 사용하면 보다 쉽게 수행할 수 있습니다. Kafka를 위한 docker-compose setup이 많이 나와 있으며, 이를 활용하여 클러스터를 구성할 수 있습니다. Confluent의 Docker Example을 참고해보시면 더 도움이 될 것입니다.

다만, 실제 운용 환경에서는 컨테이너와 물리적인 서버 및 클라우드 인스턴스의 네트워크 성능이나 디스크 I/O 성능 차이가 있을 수 있으니 학습 이후 배포 전 실제 환경에서의 테스트가 필요합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.

현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

홍석주님의 프로필 이미지
홍석주

작성한 질문수

질문하기