Позволяет ли Istio настроить максимальное время отклика для размыкания выключателя? Как? - PullRequest
1 голос
/ 05 апреля 2019

Я проверяю документацию для DestinationRule , где есть несколько примеров конфигурации с прерыванием цепи, например:

apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: bookinfo-app
spec:
  host: bookinfoappsvc.prod.svc.cluster.local
  trafficPolicy:
    connectionPool:
      tcp:
        connectTimeout: 30ms
          ...

Элемент connectionPool.tcp предлагает connectTimeout.Однако мне нужно настроить максимальное время ожидания ответа.Представьте, что я хочу открыть канал, если на ответ службы требуется более 5 секунд.Можно ли настроить это в Istio?Как?

1 Ответ

1 голос
/ 05 апреля 2019

Посмотрите на Задачи -> Управление трафиком -> Настройка времени ожидания запроса:

Время ожидания для запросов http можно указать с помощью поля времени ожидания правило маршрута .По умолчанию время ожидания составляет 15 секунд [...]

Итак, вы должны установить http.timeout в конфигурации VirtualService.Посмотрите на этот пример из официальных документов Виртуальная служба / Назначение :

Следующий VirtualService устанавливает время ожидания 5 с для всех вызовов productpage.prod.svc.cluster.локальная служба в Kubernetes.

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: my-productpage-rule
  namespace: istio-system
spec:
  hosts:
  - productpage.prod.svc.cluster.local # ignores rule namespace
  http:
  - timeout: 5s
    route:
    - destination:
        host: productpage.prod.svc.cluster.local

http.timeout: Тайм-аут для HTTP-запросов.

...