Получение метрик для микро сервисов, развернутых с использованием Docker Swarm на хостах - PullRequest
0 голосов
/ 22 марта 2019

Я создал несколько микросервисов, использующих инфраструктуру Moleculer, которые взаимодействуют друг с другом.Микро-сервисы были развернуты на разных хостах с использованием Docker Swarm.

Как получить общее количество вызовов, которые каждый сервис делает другому сервису, а также другие показатели (например, объем данных, передаваемых между сервисами)полоса пропускания, используемая каждой службой и т. д.)

Я хочу использовать такую ​​информацию, как общее количество вызовов каждой службы к другой службе, чтобы решить, какие микроуслуги развернуть на том же хосте.(например, развертывание микроуслуг с большинством вызовов между ними на одном хосте)

1 Ответ

2 голосов
/ 22 марта 2019

Вы можете использовать cAdvisor для мониторинга использования полосы пропускания для каждого контейнера и / или службы.Также вы можете экспортировать пользовательские метрики из ваших услуг и Прометей очищать оба.Наконец, вы можете отправлять запросы в Prometheus для проверки количества вызовов и пропускной способности всех ваших сервисов.

cAdvisor считывает различные статистические данные из вашего роевого кластера (процессор, память, пропускная способность и т. Д.) И делает их доступными на конечной точке http.Используя молекулярные метрики и модуль Prometheus, вы также можете предоставлять статистику о вашем приложении, такую ​​как использование памяти, выполненные вызовы и любые другие пользовательские метрики, которые вы хотите использовать в конечной точке http.

Prometheus можно настроить для чтения из нескольких метрикконечные точки и сохраните их в базе данных временных рядов, чтобы вы могли сопоставить все эти данные, выполняя запросы к ним (представьте, что это база данных, и вы выполняете SQL-подобные запросы, чтобы получить различную статистику в вашем кластере).

...