【问题标题】:Restricting communication from a service which is consul connect enabled to non consul connect service through intention?通过意图限制从启用了领事连接的服务到非领事连接服务的通信?
【发布时间】:2021-07-22 16:55:16
【问题描述】:

例如,如果我们有两个服务

  • 前端(已启用 consul-connect
  • 后端(未启用 consul-connect)。

是否可以通过意图来限制当时的交流。假设我们使用 Consul-Sync 将 k8s 服务移动到 consul 目录中。然后未启用 consul-connect 的后端将显示意图。我尝试在 前端 -> 后端之间设置拒绝。如果不工作前端正在打后端。我遗漏了一些东西或类似的授权只能在两个启用 consul-connect 的服务之间发生

【问题讨论】:

    标签: kubernetes service consul


    【解决方案1】:

    这个问题最近在https://stackoverflow.com/a/68432317/12384224得到了回答。

    Consul 意图是授权策略,允许您控制服务网格中应用程序之间的访问。为了使用意图,您必须使用 sidecar 代理或 natively integrate your application 与网格。如果您仅使用 Consul 进行服务发现,或者您的应用程序不是服务网格的一部分,则它们不适用。

    【讨论】:

    • 我还有一个问题。那么启用领事同步过程的目的是什么?它将所有 k8 服务导入 consul。这些在我们不能使用的意图的下拉列表中可用,因为没有服务网格的一部分。我什至无需启用同步过程就可以访问所有 k8 服务。那么同步过程的用例是什么?
    • Consul Service Sync 设计为仅在使用 Consul 进行服务发现时使用。它允许您从多个 Kubernetes 集群中获取服务,并将它们注册到 Consul(以及随后的 Consul -> K8s)中,以便在您的所有集群中都可以发现它们。当您使用服务网格时,您应该禁用服务同步,以便 Consul 仅在目录中注册边车,而不是 Kubernetes 服务对象,因为通过网格的连接将路由到边车公开的目标端口,而不是实际的服务港口。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-20
    • 2021-01-18
    • 2016-11-29
    • 1970-01-01
    • 2015-05-09
    • 1970-01-01
    • 2016-08-08
    相关资源
    最近更新 更多