Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有Kerberos身份验证的Kafka Java Producer_Java_Apache Kafka_Kafka Producer Api - Fatal编程技术网

具有Kerberos身份验证的Kafka Java Producer

具有Kerberos身份验证的Kafka Java Producer,java,apache-kafka,kafka-producer-api,Java,Apache Kafka,Kafka Producer Api,在发布问题之前,我已经看过了这个问题。它使用0.8.0版本的卡夫卡制作人代码 我们使用的是Kafka 0.9.0.1版本。由于我们的集群是使用Kerberos身份验证的安全集群。如何以编程方式设置Kerberos身份验证详细信息 当我试图发送消息时,消息没有到达卡夫卡主题。我通过从生产者Future获取异步send操作的结果来确认这一点,它抛出了超时异常 示例代码: Properties props = new Properties(); props.put("bootstrap

在发布问题之前,我已经看过了这个问题。它使用0.8.0版本的卡夫卡制作人代码

我们使用的是
Kafka 0.9.0.1版本
。由于我们的集群是使用
Kerberos身份验证的安全集群
。如何以编程方式设置Kerberos身份验证详细信息

当我试图发送消息时,消息没有到达卡夫卡主题。我通过从生产者
Future
获取异步
send
操作的结果来确认这一点,它抛出了超时异常

示例代码:

Properties props = new Properties();
        props.put("bootstrap.servers", "1.2.3.4:6667");
        props.put("acks", "all");
        props.put("retries", 2);
//      props.put("security.inter.broker.protocol","PLAINTEXTSASL");
        props.put("security.protocol", "PLAINTEXTSASL");//WHEN I TRY THIS ITS THROWING ERROR
        props.put("sasl.kerberos.service.name","zookeeper");
        props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
        props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");

        try {
            Producer<String, String> producer = new KafkaProducer<>(props);
            producer.send(new ProducerRecord<String, String>("kafkaTest", "kafka test message"));
            // Thread.sleep(4000);
            // producer.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Failed to update metadata after 60000 ms.
    at org.apache.kafka.clients.producer.KafkaProducer$FutureFailure.<init>(KafkaProducer.java:686)
    at org.apache.kafka.clients.producer.KafkaProducer.send(KafkaProducer.java:449)
    at org.apache.kafka.clients.producer.KafkaProducer.send(KafkaProducer.java:339)
    at com.scb.upv.SimpleKafkaProducer.main(SimpleKafkaProducer.java:26)
Caused by: org.apache.kafka.common.errors.TimeoutException: Failed to update metadata after 60000 ms.

是否遵循设置kerberos身份验证的步骤?是否解决了此问题?是否遵循设置kerberos身份验证的步骤?是否解决了此问题?