Могу ли я изменить прокси-сервер посланника конфигурации внедрения ошибок во время выполнения?

Я понимаю, что могу настроить внедрение ошибок в прокси-сервере Envoy с помощью приведенной ниже конфигурации.

config.filter.http.fault.v2.FaultAbort

{
  "http_status": "...",
  "percentage": "{...}"
}

Приведенный выше код не выполнит указанный процент запросов с указанным http_status, например 500.

Могу ли я изменить его во время выполнения? Я хотел бы вставить ошибку в конкретную службу, скажем, на 10 секунд, а затем вернуть ее в нормальное состояние. Это возможно?


person Roger that    schedule 28.01.2020    source источник


Ответы (1)


Да, вы можете изменить такие вещи в Envoy во время работы с помощью одного из двух механизмов:

  1. Горячий перезапуск
  2. Отправка динамических конфигураций с помощью xDS

Механизм горячего перезапуска намного проще для небольших развертываний, поэтому, если это небольшое усилие или тест, я бы порекомендовал его.

Вариант xDS в основном заключается в создании центрального сервера, к которому подключается прокси-сервер Envoy. Затем этот сервер отправляет все конфигурации на прокси, как вы хотите. Это намного сложнее (требуется создание пользовательских интерфейсов, конфигураций по умолчанию, обнаружение сервисов и т. Д. И т. Д.), Но дает много преимуществ, поэтому компании и проекты возникли со своими собственными реализациями.

person justincely    schedule 05.02.2020