Já instalei o Istio Ingress Gateway no meu cluster AKS usando o Helm (os gráficos usados são istio/base , istio/istiod , istio/gateway de https://istio-release.storage.googleapis.com/charts ).
Agora quero instalar também um Istio Egress Gateway , mas não sei se existe outro gráfico Helm ou se tenho que instalar novamente o istio/gateway e configurá-lo como Egress.
Alguém pode me ajudar com isso porque não há um guia de instalação claro usando o Helm na documentação do istio?
O que devo instalar e configurar para rotear todo o tráfego do cluster por meio deste Egress Gateway e restringir o acesso a hosts específicos para cada carga de trabalho. por exemplo
apiVersion: networking.istio.io/v1
kind: ServiceEntry
metadata:
name: external-svc-https
namespace: testing
spec:
hosts:
- api.dropboxapi.com
- www.googleapis.com
- api.facebook.com
location: MESH_EXTERNAL
exportTo: "."
ports:
- number: 443
name: https
protocol: TLS
resolution: NONE
Já encontrei uma maneira de permitir acesso apenas a hosts específicos por namespace usando ServiceEntry e alterando a seguinte configuração para instalação do istiod.
meshConfig:
outboundTrafficPolicy:
mode: REGISTRY_ONLY
Encontrei uma solução alternativa para isso. Segui este guia para rotear o tráfego para um gateway de saída. Para restringir o acesso para passar somente por este gateway, as Políticas de Rede precisam ser aplicadas.
NOTA: Este guia explica como instalar o istio gateway usando istioctl. Você pode instalar usando os seguintes comandos.