본문 바로가기
IT일반

카프카 Kafka (AWS MSK) EC2에서 토픽 생성 실패

by xavi2019 2022. 12. 26.

카프카 서버 설정 후, 테스트로 토픽을 생성해보려고 하는데 잘 안되는데 아래 글 보고 성공

AWS문서에서, 토픽 생성하는 예제는 java로 하는데, classpath를 추가하지 않은, 초보적인 실수 였음.

 

EC2에서 토픽 생성할 때 잘 안되는 것을 해결해주는 글

https://aws.amazon.com/ko/blogs/big-data/securing-apache-kafka-is-easy-and-familiar-with-iam-access-control-for-amazon-msk/

 

Securing Apache Kafka is easy and familiar with IAM Access Control for Amazon MSK | Amazon Web Services

This is a guest blog post by AWS Data Hero Stephane Maarek.  AWS launched IAM Access Control for Amazon MSK, which is a security option offered at no additional cost that simplifies cluster authentication and Apache Kafka API authorization using AWS Ident

aws.amazon.com

 

 에러의 에러를 거듭해.. 성공

 

 

에러메시지들

Classpath 설정이 안된 경우

Exception in thread "main" org.apache.kafka.common.config.ConfigException: 

Invalid value software.amazon.msk.auth.iam.IAMClientCallbackHandler 
for configuration sasl.client.callback.handler.class: 
Class software.amazon.msk.auth.iam.IAMClientCallbackHandler could not be found.

at org.apache.kafka.common.config.ConfigDef.parseType(ConfigDef.java:744)
at org.apache.kafka.common.config.ConfigDef.parseValue(ConfigDef.java:490)
at org.apache.kafka.common.config.ConfigDef.parse(ConfigDef.java:483)
at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:108)
at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:142)
at org.apache.kafka.clients.admin.AdminClientConfig.<init>(AdminClientConfig.java:233)
at org.apache.kafka.clients.admin.Admin.create(Admin.java:134)
at kafka.admin.TopicCommand$AdminClientTopicService$.createAdminClient(TopicCommand.scala:229)
at kafka.admin.TopicCommand$AdminClientTopicService$.apply(TopicCommand.scala:233)
at kafka.admin.TopicCommand$.main(TopicCommand.scala:58)
at kafka.admin.TopicCommand.main(TopicCommand.scala)

 

브로커 갯수가 Configuration 값과 다를 경우

AWS가 시키는 대로 하면 안나는 오류

 

브로커 생성시, AWS가 추천한 브로커 갯수 3개.. 혹시 줄이면 돈이 덜 나올까?
비용 아낀다고(아껴지나?) 2로 설정했음.
클러스터 생성 후 Configuration을 지정할 때 막 눌렀더니 안됨.
알고보니, 브로커는 2개로 생성하고 Configuration은 3으로 되어 생기는 오류

Error while executing topic command : Replication factor: 3 larger than available brokers: 2.

default.replication.factor=2 로 수정했더니 됨

auto.create.topics.enable=false
default.replication.factor=2
min.insync.replicas=2
num.io.threads=8
num.network.threads=5
num.partitions=1
num.replica.fetchers=2
replica.lag.time.max.ms=30000
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
socket.send.buffer.bytes=102400
unclean.leader.election.enable=true
zookeeper.session.timeout.ms=18000

댓글