Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.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
Camel Kafka java.io.EOFException-NetworkReceive.readFromReadableChannel_Java_Apache Kafka_Apache Camel_Activemq_Kerberos - Fatal编程技术网

Camel Kafka java.io.EOFException-NetworkReceive.readFromReadableChannel

Camel Kafka java.io.EOFException-NetworkReceive.readFromReadableChannel,java,apache-kafka,apache-camel,activemq,kerberos,Java,Apache Kafka,Apache Camel,Activemq,Kerberos,我正在尝试使用Kerberos从ActiveMQ骆驼桥向Kafka(Cloudera)生成消息 ActiveMQv5.15.4 骆驼:2.21.1 卡夫卡客户端:1.1.0 服务器版本:Apache/2.4.6(CentOS) camel.xml snipet是: <log message="Started The Producer Route" /> <to uri="kafka://10.100.70.00:9092?topic=MyEvents.s1.v1&a

我正在尝试使用Kerberos从ActiveMQ骆驼桥向Kafka(Cloudera)生成消息

  • ActiveMQv5.15.4
  • 骆驼:2.21.1
  • 卡夫卡客户端:1.1.0
  • 服务器版本:Apache/2.4.6(CentOS)
camel.xml snipet是:

<log message="Started The Producer Route" />
<to uri="kafka://10.100.70.00:9092?topic=MyEvents.s1.v1&amp;brokers=10.100.70.00:9092&amp;requestTimeoutMs=305000&amp;retries=3&amp;keySerializerClass=org.apache.kafka.common.serialization.ByteArraySerializer&amp;saslMechanism=GSSAPI&amp;serializerClass=org.apache.kafka.common.serialization.ByteArraySerializer&amp;securityProtocol=PLAINTEXT&amp;saslKerberosServiceName=kafka"/>
日志级别:调试

Jaas文件:

KafkaClient {
    com.sun.security.auth.module.Krb5LoginModule required
    useKeyTab=true
    storeKey=true
    keyTab="./user.keytab"
    useTicketCache=false
    serviceName="kafka"
    principal=" Group/user@DOMAIN.LAN";
};
出口:

KAFKA_OPTS="-Djava.security.auth.login.config=/opt/activemq/conf/Jaas.conf"
当我发送消息时,我在调试级别收到以下日志,但消息未被传递:

    java.io.EOFException
        at org.apache.kafka.common.network.NetworkReceive.readFromReadableChannel(NetworkReceive.java:124)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.common.network.NetworkReceive.readFrom(NetworkReceive.java:93)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.common.network.KafkaChannel.receive(KafkaChannel.java:235)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.common.network.KafkaChannel.read(KafkaChannel.java:196)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.common.network.Selector.attemptRead(Selector.java:557)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.common.network.Selector.pollSelectionKeys(Selector.java:495)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.common.network.Selector.poll(Selector.java:424)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:460)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:239)[kafka-clients-1.1.0.jar:]
        at org.apache.kafka.clients.producer.internals.Sender.run(Sender.java:163)[kafka-clients-1.1.0.jar:]
        at java.lang.Thread.run(Thread.java:748)[:1.8.0_171
INFO级别,我只在日志中看到:

WARN  | [Producer clientId=producer-1] Bootstrap broker 10.100.70.00:9092 (id: -1 rack: null) disconnected | org.apache.kafka.clients.NetworkClient | kafka-producer-network-thread | producer-1

为什么我会犯这个错误?请帮忙

此错误是由未经授权的用户向卡夫卡发送消息造成的

通过验证keytab文件作为先决条件,可以缓解此类问题:

  • 从keytab文件验证服务帐户名:
    klist-k-t
  • 通过Active Directory身份验证:
    kinit-k-t

不得有任何错误。

请避免一次问多个不同的问题。请参阅页面以获取澄清此问题的帮助。
WARN  | [Producer clientId=producer-1] Bootstrap broker 10.100.70.00:9092 (id: -1 rack: null) disconnected | org.apache.kafka.clients.NetworkClient | kafka-producer-network-thread | producer-1