Istio установлен в одном пространстве имен, но не обязательно работает для всего кластера. На самом деле Istio работает только для тех рабочих нагрузок, в которые вставлена коляска Istio.
Например, следующая команда создаст некоторые развертывания (и, следовательно, стручки), в которые будет вставлена коляска Istio. Эти модули будут включать все функции Istio.
kubectl apply -f <(./bin/istioctl kube-inject -f samples/bookinfo/platform/kube/bookinfo.yaml) -n bookinfo
Однако следующая команда не будет вводить коляску Istio и, как следствие, плоскость управления Istio не изменит их поведение.
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml -n bookinfo
Чтобы управлять входящим / исходящим трафиком в сетку службы istio, вы можете создать шлюзы Istio (край сетки): https://istio.io/docs/reference/config/networking/v1alpha3/gateway/
Также связанный с входом трафика, Istio имеет свой собственный входной путь istio-ingressgate (аналогичный входному ресурсу K8S, но без применения правила трафика по умолчанию):
https://istio.io/docs/tasks/traffic-management/ingress/
Остальной трафик, не проходящий через эти пути, не будет частью трафика, управляемого Istio Service Mesh.
Чтобы проверить это, вы можете легко установить демонстрационную версию Istio bookinfo
по умолчанию без колясок (вторая команда выше) и увидеть, что телеметрия не зарегистрирована и нет данных трассировки. Если вы используете Kiali (www.kiali.io), вы увидите, что график обслуживания показывает пустой и отключенный (это означает, что телеметрия не зарегистрирована).
Кроме того, вы можете открыть любой сервис bookinfo и использовать его без какого-либо взаимодействия с Istio: