当前,我们的GKE集群由在不同名称空间中运行的多个服务组成,每个svc也彼此通信。我们正在使用:
现在,我还希望合并Istio安全策略以加强svc到svc通信的安全性。我了解它的基本概念。现在,我的案例是如何将服务策略放入什么存储库中。
例如:假设我有服务A(客户端)与服务B(服务器)进行通信。 Istio有3种不同的策略执行方式:
由于我们的gke集群仍处于使用Istio的初期阶段,并且我希望在中央管理方面花很少的精力,因此我更喜欢采用服务特定的政策,因此每个服务所有者都可以管理该政策太。
我打算放:
Policy
(服务特定策略)
作为服务器。其背后的原因是Policy
正在将传入的trafficPolicy强制执行到服务(而不是输出)。但是我想知道DestinationRule怎么样? Istio在文章中提供了here
要配置客户端,您需要设置目标规则以使用双向TLS。我
从上面的引用中,我了解到DestinationRule
是强制执行客户端(具有istio侧汽车集装箱)的人。因此,DestionationRule
应该放在客户端服务存储库中(在给定的情况下,它应该在服务A存储库中)。
但是,当然,在服务器端(服务B回购),团队还希望具有某种负载平衡和流量分割机制(canary,稳定,版本控制等),只能由{{1 }}和VirtualService
。
有没有想到这个?是否有人在存储库中围绕服务设计此策略清单(istio yaml文件)方面具有一般模式/方法?