【问题标题】:Enable HTTPS for Akka-Discovery Endpoints while forming akka-cluster in kubernetes environment在 kubernetes 环境中形成 akka-cluster 时为 Akka-Discovery Endpoints 启用 HTTPS
【发布时间】:2021-05-10 13:47:12
【问题描述】:

我需要使用 DNS-resolver 在 Kubernetes 中设置一个 Akka-Cluster(使用 Akka Classic)。我创建了一个无头服务,它能够为我的 Akka 应用程序的各种 pod 解析地址。 DNS 解析后,我可以获取各种 pod 的地址。现在我的 Akka-Management 运行在 Https 上,

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

【问题讨论】:

    标签: akka akka-http akka-cluster


    【解决方案1】:

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

    你可能应该这样做:

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

    前面的例子取自official documentation,也展示了createHttpsContext(system)方法的工作原理。

    【讨论】:

    • 我的问题更多是关于 akka-cluster-bootstrap 的客户端行为。服务器可以在https上启动,但是如何修改akka cluster bootstrap的客户端使用https
    猜你喜欢
    • 1970-01-01
    • 2020-01-20
    • 1970-01-01
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多