【发布时间】:2020-04-15 02:37:52
【问题描述】:
如果我使用手动 sidecar 注入在我的一些应用程序(但不是所有应用程序)上启用 Istio,我可以在非基于 Istio 的应用程序和基于 Istio 的应用程序之间路由流量吗?如果是,如果我启用 Citadel,它仍然是真的吗?我想知道,因为我想慢慢地在我的应用程序上启用边车注入并迁移过来。基于 Istio 的应用程序和非基于 Istio 的应用程序是否仍然通过普通的 Kubernetes 服务对象相互通信(在集群内)?为了让 Istio 和常规服务能够相互通信,我还需要做些什么吗?
我是 Istio 的新手,所以任何上下文都有帮助。
【问题讨论】:
-
对您的问题的回答很大程度上取决于您当前在启用 Istio/sidecar 的 Pod 中设置的 TLS 模式(身份验证策略),是 STRICT 还是 PERMISSIVE ?你见过这个 mtls 迁移任务吗? istio.io/docs/tasks/security/authentication/mtls-migration
-
感谢@Nepomucen 将我指向该参考。所以看起来,为了允许非边车服务与边车服务通信,我需要创建一个目标规则,并将 tls trafficPolicy 设置为 ISTIO_MUTUAL。而且我需要为每个要启用双向 tls 的 kubernetes 服务创建一个这样的目标规则。
-
你应该像@Nepomucen提到的那样设置PERMISSIVE策略,并为每个tls模式为“NONE”的非istio服务设置一个目标规则。
标签: kubernetes containers istio envoyproxy