【问题标题】:External F5 load balancer integration with Docker swarm service discovery外部 F5 负载均衡器与 Docker 群服务发现集成
【发布时间】:2017-12-15 19:20:03
【问题描述】:

我打算使用 docker swarm 模式来托管我的应用程序。目前正在寻找一种将 F5 负载均衡器与 docker swarm 模式服务发现集成的方法。是否有实现此目的的用例?我知道我们可以发布带有主机的端口并将流量从 F5 路由到主机 ip,但这将限制我只运行每个主机的任务。

我可以使用 Consul 作为服务发现并拥有服务的主机名,这样我就可以设置绑定 dns 来将 dns 请求转发给 consul?

非常感谢您的建议/想法。

提前致谢。

【问题讨论】:

    标签: docker load-balancing service-discovery f5 docker-swarm-mode


    【解决方案1】:

    在不了解您的预期应用程序的情况下,如果我使用的是服务发现 VIP 而不是 DNSRR,我会将每个广告 VIP 视为 BIG-IP VIP 后面的节点。这样,您可以使用 BIG-IP 的 iControlREST 在 Swarm 的服务发现中添加/修改/删除节点。

    卷曲示例:curl -sk -u 'admin:admin' -H "Content-Type: application/json" -X POST https://x.x.x.x/mgmt/tm/ltm/pool -d '{"name":"test-pool","members":[{"name":"Server-Bob:443","address":"10.0.0.1"}]}'

    使用上述想法,您将拥有一个通过 BIG-IP 发布的应用程序,并且您将通过 Ansible/Python/Whatever 添加/删除 docker 服务发现的 VIP。

    您可以使用 Consul 进行服务发现,但我认为您会创建冗余功能,因为 Swarm 可以完成类似的发现任务。添加绑定 DNS 要求不会使管理变得容易得多。从技术上讲,有很多方法可以做到这一点,但如果你已经建立了 BIG-IP 基础设施,那么这种方法对我来说最有意义。如果我在您的申请要求中遗漏了某些内容,请告诉我,我可以修改答案。

    【讨论】:

      猜你喜欢
      • 2016-12-30
      • 2016-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多