web/kafka

Kafka cluster에서 topic 지우기

반응형

카프카 토픽을 지우기 위해 kafka-topic command를 사용해서 시도했다.

[root@f6ed7547e36f /]# kafka-topics --delete --zookeeper centos1:2181,centos2:2181,centos3:2181 --topic wedul
Topic wedul is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.

 

for deletion을 위함 marked가 되었다는 내용가 delete.topic.enable을 true로 하지 않으면 실제 효과가 없다는 알림을 받았다.

이에 /etc/kafka/server.properties에 있는 delete.topic.enable을 true로 지정하고 다시 삭제 하였으나 아래 처럼 이미 marked 되었다는 내용만 보이고 삭제가 안되었다 ㅜㅜ

root@f6ed7547e36f /]# kafka-topics --delete --zookeeper locacentos1:2181,centos2:2181,centos3:2181 --topic wedul
[2021-03-20 12:30:02,089] WARN Session 0x0 for server locacentos1:2181, unexpected error, closing socket connection and attempting reconnect (org.apache.zookeeper.ClientCnxn)
java.nio.channels.UnresolvedAddressException
at sun.nio.ch.Net.checkAddress(Net.java:104)
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:621)
at org.apache.zookeeper.ClientCnxnSocketNIO.registerAndConnect(ClientCnxnSocketNIO.java:277)
at org.apache.zookeeper.ClientCnxnSocketNIO.connect(ClientCnxnSocketNIO.java:287)
at org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:1021)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1064)
Topic wedul is already marked for deletion.

 

그래서 주키퍼 shell을 이용하면 지울 수 있다고 하여 시도해봤다.

[root@f6ed7547e36f /]# zookeeper-shell centos1:2181,centos2:2181,centos3:2181
Connecting to centos1:2181,centos2:2181,centos3:2181
Welcome to ZooKeeper!
JLine support is enabled

WATCHER::

WatchedEvent state:SyncConnected type:None path:null
[zk: centos1:2181,centos2:2181,centos3:2181(CONNECTED) 0] ls /brokers/topics
[wedul, connect-configs, zaiko-data, processed-tweet, connect-status, connect-offsets, tweet, __confluent.support.metrics, __consumer_offsets]

 

실제로 토픽들을 볼 수 있었고 여기서 wedul 토픽을 지웠다.

[zk: centos1:2181,centos2:2181,centos3:2181(CONNECTED) 1] rmr /brokers/topics/wedul

 

그리고 다시한번 topic이 살아있는지 kafka-topics command로 확인해봤다.

[root@f6ed7547e36f /]# kafka-topics --zookeeper centos1:2181,centos2:2181,centos3:2181 --describe --topic wedul

 

드디어 삭제 되었다. 그럼 삭제하려고 했던 이유인 ISR값을 2로 지정해서 다시 topic을 생성해보자.

[root@81dcda36bb45 /]# kafka-topics --zookeeper centos1:2181,centos2:2181,centos3:2181 --create --topic wedul --partitions 3 --replication-factor 3 --config 'min.insync.replicas=2'
Created topic "wedul".

 

성공

반응형