【问题标题】:Create topic in multiple zookeepers with Kafka AdminUtils.CreateTopic JAVA API in Kafka 0.9.0.1 gives Error在 Kafka 0.9.0.1 中使用 Kafka AdminUtils.CreateTopic JAVA API 在多个 zookeepers 中创建主题给出错误
【发布时间】:2017-03-02 22:30:21
【问题描述】:

我正在使用下面的代码 sn-p 使用 Kafka Java API 在多个动物园管理员中创建主题。当我在 zookeeperConnect 变量中指定 2 个 zookeeper IP 时,它只会在 zookeeper 的任何人中创建主题。 Zookeeper 都是 2 个不同的 kafka 集群。任何帮助?

   String zookeeperConnect = zookeeperIPs; // Multiple zookeeper IPs
   int sessionTimeoutMs = 10 * 1000;
   int connectionTimeoutMs = 8 * 1000;

   try {
    ZkClient zkClient = new ZkClient(
                zookeeperConnect,
                sessionTimeoutMs,
                connectionTimeoutMs,
                ZKStringSerializer$.MODULE$);

    boolean isSecureKafkaCluster = false;
    ZkUtils zkUtils = new ZkUtils(zkClient, 
    new ZkConnection(zookeeperConnect), isSecureKafkaCluster);

        String topic1 = "nameofTopictobeCreated";
        int partitions = 1;
        int replication = 1;
        Properties topicConfig = new Properties(); // add per-topic configurations settings here

        AdminUtils.createTopic(zkUtils, topic1, partitions, replication, topicConfig);

【问题讨论】:

    标签: java apache-kafka kafka-consumer-api kafka-producer-api apache-zookeeper


    【解决方案1】:

    AdminUtils 工具假定所有指定 ZK 属于同一个集群,因此与其中一个通信就足够了(因为 ZK 节点会自动同步自己)。

    如果要在两个集群中创建主题,则需要发出两次命令,每次使用不同的 ZK 节点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-21
      • 2016-10-12
      • 2019-11-08
      • 2017-10-18
      • 2018-03-31
      相关资源
      最近更新 更多