我按照以下说明设置了一个多节点kafka群集。 现在,如何连接到动物园管理员?在JAVA中连接到生产者/消费者端的一个动物园管理员,还是有办法连接所有的动物园管理员节点?在Apache Kafka多节点群集中连接到Zookeeper
设置多节点的Apache ZooKeeper的集群
在群集的每个节点添加下列行到文件卡夫卡/配置/ zookeeper.properties
server.1=zNode01:2888:3888
server.2=zNode02:2888:3888
server.3=zNode03:2888:3888
#add here more servers if you want
initLimit=5
syncLimit=2
在群集的每个节点创建一个文件在由dataDir属性表示的文件夹中调用myid(默认情况下文件夹为/ tmp/zookeeper)。该身份识别码文件应该只包含Z序节点的ID(“1” zNode01,“2” ZNode02,等...)
设置多代理的Apache卡夫卡集群
在群集中的每个节点修改修改从文件卡夫卡/配置/ server.properties属性zookeeper.connect:
zookeeper.connect=zNode01:2181,zNode02:2181,zNode03:2181
在群集的每个节点从文件卡夫卡/配置/ server.properties修改属性host.name: host.name = zNode0x
在群集的每个节点上修改文件kafka/config/server.properties中的属性broker.id(群集中的每个代理应具有唯一的ID)
如何为一个主题创建多个分区?如何才能做到这一点?我们不需要像这样通过ZkClient进行授权吗?这里讨论:http://stackoverflow.com/questions/27036923/how-to-create-a-topic-in-kafka-through-java – amateur
AdminUtils.createTopic(zkUtils,topicName,noOfPartitions,noOfReplication,topicConfiguration); – amateur
您可以使用AdminUtils创建主题..但更好的做法是在节点本身中创建它,并使用命令调用这是一次性任务。命令格式/bin/kafka-topics.sh --zookeeper c6401.ambari.apache.org:2181 --create --topic test_topic --partitions 2 --replication-factor 2创建主题“test_topic”。 – Shettyh