在 kubernetes 环境中形成 akka-cluster 时为 Akka-Discovery Endpoints 启用 HTTPS

Enable HTTPS for Akka-Discovery Endpoints while forming akka-cluster in kubernetes environment

我需要使用 DNS 解析器在 Kubernetes 中设置 Akka 集群(使用 Akka Classic)。我创建了一个无头服务,它能够为我的 Akka 应用程序的各种 pods 解析地址。 DNS 解析后,我能够获得各种 pods 的地址。现在我的 Akka-Management 通过 Https 运行,

因此,当一个 pod 尝试连接到其他各种 pods 的管理端点时,它需要使用“HTTPS”而不是“HTTP”,但 Akka 默认使用“http”。有没有办法在 Java

中修改此行为

是的,有:要启用 HTTPS,您必须通过向其提供 HttpsConnectionContext 对象来实例化您的服务器。

您可能应该这样做:

Http.get(system).newServerAt("localhost", 8080)
    .enableHttps(createHttpsContext(system))
    .bind(app.createRoute());

前面的例子取自official documentation,这也说明了createHttpsContext(system)方法是如何工作的。