port - 具有动态端口的微服务
问题描述
我有一系列我一直在测试的微服务。最初它使用的是Service Fabric,但我已经改用我更喜欢的Consul、Fabio和Nomad。
在我的机器上的开发中,事情运行良好,但是我遇到了一些问题,实际上让 Fabio 以集群格式工作。
我有一个由 5 个节点组成的集群,每个节点运行 Consul、Fabio、Nomad。每个服务在运行时获取一个动态端口并成功注册自己。在服务运行的节点上,Fabio 正确地转发流量。但是,如果在不同的节点上使用相同的 fabio url,则流量将转发到正确的节点/端口,但是该节点/端口已关闭,因此连接不起作用。
例如,如果 ServiceA 在端口 1234 上的 MachineA 上运行,则http://MachineA:9999/ServiceA可以正常工作。
但是,在 MachineA 尝试在端口 1234 上启动与 MachineB 的连接后,http://MachineB/ServiceA失败。
我想,一个解决方案是添加防火墙规则,但这需要所有服务以管理员身份运行,这是我不想要的。
有没有办法通过法比奥支持这一点?
解决方案
推荐阅读
- python - 两个列表中术语差异的最小总和
- php - 如何比较 preg_match_all 不区分大小写的数组
- javascript - 在 Google Maps API 中创建图像按钮
- node.js - 收到请求时使用 morgan 记录 POST 正文大小
- package - 计算机如何知道将数据包发送到何处,仅使用 ip 而不是 mac
- c - 返回 sizeof()
- wpf - WPF Font Awesome 不能与 Caliburn.Micro 一起使用?
- node.js - 使用 mongoose 保存到 mongodb 失败但未显示错误
- r - R CMD 检查:全局变量没有可见绑定(使用包中的数据/数据集时)
- terraform - 使用 Terraform 创建 vsphere_virtual_machine 资源后展开 Linux 分区