是否可以在具有 envoy 代理的工作负载和同一命名空间中没有 envoy 代理的另一个工作负载之间进行通信?

问题描述

我是 istio 的新手。

和 title 一样,我在同一个命名空间中部署了一个 pod 注入的 Envoy sidecar 和一个没有 envoy 的 pod。 当我尝试从没有 envoy 的 pod 访问有 envy 的 pod 时,没有任何进展就像被阻止一样。

要访问具有 envy 的工作负载,它必须具有 envy 代理吗?或者有其他方法可以做到这一点吗?

提前致谢。

解决方法

默认情况下,没有 Istio/Sidecar 的 Pod 应该能够访问网格中的 Pod。但是,如果激活了严格的 mTLS,则不会。

默认情况下,sidecar 将被配置为接受 mTLS 和非 mTLS 流量,称为 PERMISSIVE 模式。该模式也可以配置为 STRICT(流量必须为 mTLS)或 DISABLE(流量必须为纯文本)。

https://istio.io/latest/docs/ops/configuration/traffic-management/tls-configuration/