我们的应用程序在 aks 集群中运行,并在单独的命名空间中使用 cert-manager helm chart 来加密证书生成。argocd 命名空间用于处理部署。
我们需要启用 mTLS,这是否也要求 istio 在 argocd、cert-manager 命名空间上进行标记?
而且,我们已经有 azure appgateway ingress 将流量路由到我们的命名空间中运行的部署,因此没有启用 istio ingress。
一旦我在全局级别启用严格选项,从 Azure 应用网关入口到我们的应用程序的路由就无法正常工作。
kubectl apply -n istio-system -f - <<EOF
apiVersion: security.istio.io/v1beta1
kind: PeerAuthentication
metadata:
name: default
spec:
mtls:
mode: STRICT
EOF
并收到 502 错误网关。
如果我删除上面的 peerauthentication 或将其更改为 PERMISSIVE。那么它就可以访问页面而不会出现 502 错误。
如何实现严格模式但没有 istio ingress。
kubectl edit peerauthentication -n istio-system
peerauthentication.security.istio.io/default edited