Уменьшение использования памяти боковым автомобилем ISTIO

Мы оцениваем ISTIO для одного из проектов. В проекте около 200 контейнеров и около 200 услуг. Каждый контейнер может быть доставлен с репликой, установленной на 2. Таким образом, всего может быть 400 контейнеров и, следовательно, 400 боковых вагонов ISTIO.

При настройках по умолчанию каждая коляска ISTIO использует до 300 Мбайт. С 400 бортовыми вагонами это даст 120 Гбайт (300 Мбайт * 400) памяти для бортовых вагонов. Кажется, это даже больше, чем требования к памяти, необходимые для приложения.

Есть два наблюдения

  1. Использование памяти, похоже, увеличивается с увеличением количества ядер. В системе, которую мы пытаемся, 88 ядер. Текущее понимание того, что для каждого ядра требуется от 1,5 до 2 Мбит / с.
  2. Использование памяти, похоже, растет с увеличением количества служб. В проекте, над которым мы работаем, мы ожидаем увидеть около 200 сервисов. Кажется, что каждая служба занимает около 3 Мбайт.

По (1) мы нашли (из Google) решение. Решение состоит в том, чтобы установить меньшее число параллелизма посланников.

По (2) есть ли какое-нибудь решение? В нашем проекте не каждый контейнер взаимодействует с каждым другим контейнером / сервисом. Данный контейнер может взаимодействовать с набором целевых сервисов (обычно около 5 или около того). Может ли боковая машина данного контейнера выделить память для служб, которые использует контейнер?

Мне интересно, есть ли у кого-нибудь похожая проблема с ISTIO и как они обошли проблемы с потреблением памяти.


person Srinivasa Addepalli    schedule 01.11.2018    source источник


Ответы (1)


Вы правы, что №2 - проблема. Об этом уже говорилось в списке рассылки Istio: https://groups.google.com/forum/#!topic/istio-users/gRP4roSnHtQ

Суть в том, что текущая реализация, в которой каждая служба настроена для взаимодействия с любой другой службой, - это O (N ^ 2), которая не масштабируется. До сих пор было только некоторое (в основном внутреннее) раннее обсуждение того, какие могут быть различные варианты для сокращения конфигурации sidecar, но я думаю, что, вероятно, относительно скоро начнется некоторая работа в этой области.

ОБНОВЛЕНИЕ Istio 1.1 включает новый Ресурс конфигурации Sidecar, который можно использовать для этой цели.

person Frank B    schedule 01.11.2018