Как включить MTLS с помощью службы MultiCluster в GKE
Я ищу, как включить mTLS для сервисов, экспортированных через ресурс ServiceExport. В настоящее время у меня есть два кластера в парке, и я хотел бы установить межкластерную служебную связь с mTLS. У меня есть isio mTLSSTRICT
политика применена к пространству имен в кластере 1
apiVersion: security.istio.io/v1beta1
kind: PeerAuthentication
metadata:
name: mcs-mtls-policy
namespace: multi-cluster-demo
spec:
mtls:
mode: STRICT
Однако когда я пытаюсь связаться с сервисом из кластера модулей 2, я получаю следующий ответ:
root@mcs-test:/# curl whereami.multi-cluster-demo.svc.clusterset.local -vk
* Trying 10.32.24.79:80...
* Connected to whereami.multi-cluster-demo.svc.clusterset.local (10.32.24.79) port 80 (#0)
> GET / HTTP/1.1
> Host: whereami.multi-cluster-demo.svc.clusterset.local
> User-Agent: curl/7.74.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 503 Service Unavailable
< content-length: 95
< content-type: text/plain
< date: Tue, 08 Aug 2023 09:50:07 GMT
< server: envoy
<
* Connection #0 to host whereami.multi-cluster-demo.svc.clusterset.local left intact
Если я изменю режим политики mTLS наPERMISSIVE
Я получаю успешный ответ, однако я хотел бы применить mTLS в кластере.
Trying 10.32.24.79:80...
* Connected to whereami.multi-cluster-demo.svc.clusterset.local (10.32.24.79) port 80 (#0)
> GET / HTTP/1.1
> Host: whereami.multi-cluster-demo.svc.clusterset.local
> User-Agent: curl/7.74.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< server: envoy
< date: Tue, 08 Aug 2023 11:06:25 GMT
< content-type: application/json
< content-length: 390
< access-control-allow-origin: *
< x-envoy-upstream-service-time: 5
<
Я предполагаю, что это связано с тем, что трафик отправляется без mTLS, но даже когда я пытаюсь сделать это вручную, как описано здесь , это тоже не работает. Может ли это быть из-за Антоса? или это связано с Traffic Director? Я знаю, что директор трафика поддерживает mTLS, но я не уверен, как настроить это с помощью ресурса ServiceExport.
Пожалуйста, помогите мне, спасибо.