我们使用Aiven作为Kafka即服务提供商,它们支持凭据轮换。例如,每24小时一次。
到目前为止,当我们需要轮换时,我们还没有找到在Spring Kafka中创造新的消费者/生产者的方法。基本上,在consumer.poll
上引发TopicAuthorizationException。
我们需要做的基本上是创建一个具有更新信任库和密钥库路径的新消费者。密钥存储和信任存储是从kubernetes机密加载的。
有人知道我们如何做到这一点吗?
侦听器容器将在任何AuthorizationException
之后停止。
您可以添加ApplicationListener
或@EventListener
方法来接收ListenerContainerStoppedEvent
。
您可以等待所有子容器停止,也可以立即停止并发容器;用新的存储位置更新容器的CCD_ 6并重新启动容器。
我目前看不到生产商方面有什么好的解决方案;您需要将生产者工厂bean或KafkaTemplate
替换为存储位置的新覆盖。
我会打开一个问题,让它在那里更容易。