Моя настройка:
- JDK 11.0.6
- Spring Boot 2.2.4.RELEASE
- spring-kafka 2.4.1
Я проверил свое приложение Zookeeper / Kafka / client в PLAINTEXT, все работает нормально. Я также проверил свои хранилища ключей / хранилища доверия с помощью клиентских инструментов Kafka.
Я использую bean-компонент KafkaAdmin для настройки своих тем, похоже, что при SSL-соединении происходит сбой:
@Bean
public KafkaAdmin kafkaAdmin() {
Map<String, Object> configs = new HashMap<>();
configs.put(AdminClientConfig.BOOTSTRAP_SERVERS_CONFIG, getKafkaHost());
configs.put("security.protocol", "SSL");
configs.put("ssl.key.password", "xxx");
configs.put("ssl.keystore.location", "/keystore/client.keystore.jks");
configs.put("ssl.keystore.password", "xxx");
configs.put("ssl.truststore.location", "/keystore/kafka.truststore.jks");
configs.put("ssl.truststore.password", "xxx");
return new KafkaAdmin(configs);
}
мои два JKS-файла находятся в src / main / resources / keystore в моем проекте. /keystore
не работает ... кажется, что их подбирают, если я укажу /src/main/resources/keystore/client.keystore.jks
... это сработает в реальном мире? Во время выполнения в автономном коте будет /src/main/resources/keystore
?
Насколько я понимаю, пути относительно папки target/classes
, нет?