微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Consul 负载均衡南北流量

如何解决Consul 负载均衡南北流量

我正在尝试在 consul 服务网格中运行我的一些微服务。根据 consul 文档,很明显 consul 负责路由、负载平衡和服务发现。但他们的文档也谈到了 3rd 方负载均衡器,如 Nginx、HAProxy 和 F5。

https://learn.hashicorp.com/collections/consul/load-balancing

如果 consul 负责负载均衡,那么这些负载均衡器的目的是什么。

我的假设,

  1. 这些负载均衡器是为了替代consul内置的负载均衡技术,但是LB仍然使用consul服务发现数据。 (为什么有人需要这个!!!)

  2. Consul 只为东西向流量(在服务网格内)提供负载均衡。为了平衡南北流量(互联网流量),我们需要外部负载平衡器。

请告诉我我的哪个假设是正确的

解决方法

我咨询了我的一位同事(完全披露:我为 F5 工作),他提到虽然使用外部服务进行负载平衡不是技术要求,但许多组织已经拥有基础设施,以及以及随之而来的操作要求、政策和程序。

有关 Consul 如何与 F5 BIG-IP 等边缘服务一起工作的一些示例,这里有几篇您可能会感兴趣的文章,可以为您的问题提供上下文。

,

Consul 服务网格默认使用 Envoy 代理来实现网格内连接的东西向和南北向负载平衡。东西向流量通过 sidecar 代理路由,而南北连接通过配置为充当 ingress gateway 的 Envoy 实例路由。

除了 Consul 的原生 Envoy 入口外,Consul 还支持与其他 proxies and API gateways 的集成。如果您需要本机 Ingress 产品中没有的功能,可以使用这些功能。

第三方代理利用 Consul 的服务目录,使用来自 Consul 的端点信息填充其后端/上游成员池。这允许代理始终拥有数据中心中健康和可用服务的最新列表,并且无需在添加/删除服务端点时手动重新配置南北代理。

一些网关,如 Ambassador、F5 和(很快)Traefik(参见 PR https://github.com/traefik/traefik/pull/7407)通过与服务网格集成(参见 Connect custom proxy integration)更进一步,以便它们可以在连接到后端服务时使用 mTLS。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。