前言
最近工作上需要使用Java开发一个操作Kafka的Portal,因为使用命令行去操作比较反人类,尤其是需要进行大量的增删操作的时候。所以研究了一下Apache提供的官方JAVA API应用到了Portal上。在实施的过程中,发现这部分网上可用资料也比较稀少,即便找到几篇也十分的不详细,或者版本比较老旧,或者还在用Zookeeper提供的那一套API,更有甚者干脆互相抄,所以就决定写一个系列希望能帮助到大家了解AdminClient的使用。
Kafka API 相关
【Apache Kafka API AdminClient 获取对象】
【Apache Kafka API AdminClient Topic的创建与删除】
【Apache Kafka API AdminClient Topic信息的查询】
【Apache Kafka API AdminClient 修改Topic参数的操作】
【Apache Kafka API AdminClient 修改Topic的Partition】
【Apache Kafka API AdminClient 账号对Topic权限赋予与移除】
【Apache Kafka API AdminClient 查看账户权限】
【Apache Kafka API AdminClient Group ID 创建、删除、查询】
【Apache Kafka API AdminClient Scram账户的创建与删除】注:此文基于Kafka Scala2.13源码写的Java程序,适用于kafka 2.7.0及其以下版本。
【Apache Kafka API AdminClient Scram账户的操作(增删改查)】 注:此文基于kafka 2.8.0 API所写,适用于kafka 2.7.0及其以上版本。该版本API并不是很完善,创建的账户可能会有无法读写Topic的问题。
安装Kafka服务器相关
【Zookeeper + Centos7 详细安装教程】
【Kafka+ Centos7服务器集群详细安装教程】
【Kafka 如何给集群配置Scram账户认证】
【Kafka 如何给集群配置SSL认证】
附
笔者使用的Porm依赖如下,API官网点击【这里】。为什么要把两个版本都列出来,因为这俩版本用的Scale版本是不一样的,这就又涉及到了一部分权限认证功能的使用,只能说Kafka太变态。
支持kafka版本2.3.x,Scale版本2.12
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.12</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>2.3.0</version>
</dependency>
支持kafka版本2.5.x,Scale版本2.13
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.13</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>2.5.0</version>
</dependency>
支持kafka版本2.7.x,Scale版本2.13
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.13</artifactId>
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>2.7.0</version>
</dependency>
其他
更多Java框架源码内容进入
【Spring解读系列目录】。
【Zookeeper 源码解读系列目录】。