Настройка исходящего трафика

Для настройки правил исходящего трафика необходима настройка следующих объектов: Gateway (egress), VirtualService, ServiceEntry. Примером будет являться istio-integration-producer, сервисом внешней системы будет istio-integration-consumer. В качестве примера, добавление хэддера будет происходить не в самом запросе, который отправляет запрос, а на этапе прохождения через Istio.
Для начала необходимо настроить Gateway (egress):
gateway-egress.yml type=yaml
apiVersion: networking.istio.io/v1beta1
kind: Gateway
metadata:
  name: egress-gateway
  labels:
    app: istio-egressgw
    purpose: egress
spec:
  selector:
    istio: egressgateway
  servers:
    - hosts:
        - '*'
      port:
        name: http
        number: 8080
        protocol: HTTP
Далее в VirtualService необходимо указать, что конкретно и мы хотим добавить/изменить в запросе, а также добавить ServiceEntry.
VirtualService.yml type=yaml
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
  name: autonum-rest-vs
spec:
  hosts:
    - host
  http:
    - headers:
        request:
          add:
            target-service-version: 0.1.0.1
      route:
        - destination:
            host: host
ServiceEntry.yml type=yaml
apiVersion: networking.istio.io/v1beta1
kind: ServiceEntry
metadata:
  name: egress-se-istio-integration
spec:
  exportTo:
    - .
  gateways:
    - ingress-gateway
  hosts:
    - host
  location: MESH_EXTERNAL
  ports:
    - number: 80
      protocol: HTTP
  resolution: DNS
Предыдущий раздел
Расширенные возможности VirtualService и DestinationRul...
Следующий раздел
Типовая проектная область потребителя в Kubernetes
Была ли страница полезной?