【发布时间】:2019-11-08 19:10:49
【问题描述】:
我尝试在 Kubernetes 集群中使用 Strimzi (0.14) 构建 Kafka 集群。
我使用srimzi自带的例子,即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
动物园管理员和卡夫卡经纪人都长大了。
但是,我在 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]
有人知道如何解决这个问题吗?
【问题讨论】:
-
可能导致此问题的原因之一是您的集群对服务域使用不同的 DNS 后缀(默认为
cluster-local)。但我需要更多日志来确认它。如果是这种情况,则需要找出正确的后缀,并在集群算子部署中使用环境变量KUBERNETES_SERVICE_DNS_DOMAIN覆盖默认值。如果您执行到 Kafka 或 Zookeeper pod 之一并执行hostname -f它应该显示后缀。 -
谢谢雅库布。是后缀问题。重建集群算子后,一切正常。
标签: kubernetes apache-kafka strimzi