strimzi 0.14:kafka代理身份验证失败

tv6aics1  于 2021-06-04  发布在  Kafka
关注(0)|答案(1)|浏览(474)

我尝试在kubernetes集群中使用strimzi(0.14)构建一个kafka集群。
我使用strimzi附带的示例,即examples/kafka/kafka-persistent.yaml。
此yaml文件如下所示:

apiVersion: kafka.strimzi.io/v1beta1
kind: Kafka
metadata:
  name: my-cluster
spec:
  kafka:
    version: 2.3.0
    replicas: 3
    listeners:
      plain: {}
      tls: {}
    config:
      offsets.topic.replication.factor: 3
      transaction.state.log.replication.factor: 3
      transaction.state.log.min.isr: 2
      log.message.format.version: "2.3"
    storage:
      type: jbod
      volumes:
      - id: 0
        type: persistent-claim
        size: 12Gi
        deleteClaim: false
  zookeeper:
    replicas: 3
    storage:
      type: persistent-claim
      size: 9Gi
      deleteClaim: false
  entityOperator:
    topicOperator: {}
    userOperator: {}
``` `kubectl apply -f examples/kafka/kafka-persistent.yaml` Zookeeper和Kafka经纪人都是从小长大的。
但是,我在kafka代理日志中看到了错误: `[SocketServer brokerId=1] Failed authentication with /10.244.5.94 (SSL handshake failed) (org.apache.kafka.common.network.Selector) [data-plane-kafka-network-thread-1-ListenerName(REPLICATION)-SSL-0]` 有人知道怎么解决这个问题吗?
pn9klfpd

pn9klfpd1#

可能导致这种情况的原因之一是,如果集群对服务域使用不同的dns后缀(默认值为 .cluster.local ). 您需要找到正确的dns后缀并使用环境变量 KUBERNETES_SERVICE_DNS_DOMAIN 在strimzi集群操作符部署中覆盖默认值。
如果你进入一个Kafka或Zookeeper的吊舱 hostname -f 它应该向您显示完整的主机名,您可以从中识别后缀。
(我从评论中粘贴了这个作为完整答案,因为它有助于解决问题。)

相关问题