ssl - 如何在kafka集群中启用多个监听器
问题描述
我有一个 3 节点的 Kafka 集群。我已启用SASL_PLAINTEXT
,它与 Port 一起工作正常6667
。现在我想为同一个集群中的不同端口启用 SSL。我已启用 trustore 和 Keystore 证书。我从代理端做了以下配置。
listeners : SSL://localhost:6668
security.inter.broker.protocol : SSL
ssl.key.password : xxxx
ssl.keystore.location : /root/kafka.server.keystore.jks
ssl.keystore.password : xxxxx
ssl.truststore.location : /root/kafka.server.truststore.jks
ssl.truststore.password : xxxxxx
ssl.keystore.type : JKS
ssl.truststore.type : JKS
我也给予了许可。我得到以下错误
Caused by: org.apache.kafka.common.KafkaException: org.apache.kafka.common.KafkaException: Failed to load SSL keystore /root/kafka.server.keystore.jks of type JKS
Caused by: org.apache.kafka.common.KafkaException: Failed to load SSL keystore /root/kafka.server.keystore.jks of type JKS
Caused by: java.io.FileNotFoundException: /root/kafka.server.keystore.jks (Permission denied)
解决方案
引起:java.io.FileNotFoundException:/root/kafka.server.keystore.jks(权限被拒绝)
错误跟踪相当清晰。/root/kafka.server.keystore.jks
进程无法访问。请注意,该过程通常在不同的用户上运行,我怀疑密钥库是由不同的用户创建的。
确保运行该进程的用户具有足够的读取权限/root/kafka.server.keystore.jks
。实现此目的的一种方法是更改文件的所有权:
sudo chown -R userWhoRunsTheProcess:userGroup /root/kafka.server.keystore.jks
推荐阅读
- html - 为什么外部 SVG 会超出父 SVG 视图框的范围?
- javascript - Firebase firestore.doc 不返回数据
- analysis - |Θ(f(n)) - O(f(n))| 混乱
- python - Python 不允许将函数作为异常引发,但 PyLint 仍然对其进行检查
- python - 按不是索引变量的列求和(Python)
- python - How do I calculate number of words and number of unique words contained within a list of a column across all rows of my dataframe?
- python - 无法使用python中的函数增加变量的值
- sql - 获取上个月的价值
- angular - 在firebase云函数中部署nestjs
- c++ - 函数调用未被识别