本次我们讲解下Kafka于0.11版本退出的AdminClient和KafkaAdminClient
用于使用编程的方式来管理整个kafka集群.
其可以帮助我们进行
创建topic
查询topic
查询单个topic详情
删除topic
修改config
查询资源config详情
创建ACL
查询ACL
删除ACL
查询整个集群详情
我们会在下面给出一些Demo代码,来帮助大家了解不同功能的使用方式.
无论使用什么函数,都需要先创建一个AdminClient
然后尝试查询整个集群的详情
直接通过封装调用api获取Result即可
获取之后,直接result.clusterId().get()即可获取对应的信息
获取某一topic的所有参数,仍然是需要一个AdminClient
通过调用client.describeConfigs()来进行获取
尝试修改topic级别的参数
则是通过封装一个Config对象,调用alterConfigs接口
删除制定的topic,则是将要删除的topic数组传入deleteTopics,从而进行删除
获取某个topic的详情,比如ISR,leader信息
创建topic
则是封装一个NewTopic对象
来进行调用
获取集群内所有topic的列表
ListTopicsOptions options = new ListTopicOptions();
options.listInternal(true);
ListTopicsResult topics = client.listTopics(options);
Set<String> topicsNames= topics.names().get();