Как контролировать соединение в локальной сети - PullRequest
0 голосов
/ 21 ноября 2018

У меня есть тонна услуг: Node (s), MySQL (s), Redis (s), Elastic (s) ...
Я хочу отслеживать, как они соединяются друг с другом: Скорость соединения, Числоживое соединение ... (Node1 создает 30 соединений с Node2 / MySQL / Redis в секунду ...) как изображение статистики Haproxy, прикрепленное ниже.

Haproxy stat

В настоящее время у меня есть два варианта:

  • Haproxy (прокси): я хочуиспользуйте один сервис Haproxy для архивации этого, но кажется, что ALC очень сложно определить, какое соединение необходимо переслать какой службе.
  • ELK (центр регистрации): мне нужно создавать файлы журналов для каждой службы (Node, MySQL,Redis ...), а затем показать их в центре журнала.Я вижу, что куча работ, чтобы сделать это без встроенной функции, как страница статистики Haproxy.

Как это сделать?Хорошо ли в этом случае бревно?

Ответы [ 2 ]

0 голосов
/ 27 ноября 2018

Проблема

Я думаю, что ваша проблема не в сборе и передаче статистики в Elasticsearch, а в том, чтобы тонну работы извлечь метрики из ваших сервисов, потому что большинство из них не имеют метрикифайлы / журналы.

Затем вам нужно будет экспортировать их с помощью некоторого пользовательского сценария, зарегистрировать их и записать с помощью filebeat, передать в logstash для обработки текста и извлечения метрик, чтобы они были проиндексированы таким образом, чтобы вы могли выполнять какие-тоаналитики, а затем отправьте его вasticsearch.

Мой ответ на вопрос

По крайней мере, для 3 упомянутых вами служб есть Прометей экспортеров легко доступны, и вы можете найти их здесь .Экспортеры - это простые процессы, которые будут запрашивать собственные API-интерфейсы статистики ваших служб и предоставлять API метрики Prometheus для Prometheus to Scrape (опрос).

После того, как Prometheus очистит метрики, вы можете отобразить их в сводных панелях с помощью Grafana (который является де-факто слоем визуализации для Prometheus) или массовый экспорт ваших метрик в любое место (Elasticsearch и т. Д.) Для визуализации и исследования.

Заключение

Преимущества этого подхода:

  1. Prometheus может автоматически обнаруживать новые узлы, которые вы добавляете в свои сети
  2. Легко доступные экспортеры haproxy, redis и mysql для Prometheus
  3. Код не требуется, каждому экспортеру требуется минимальная конфигурация, специфичная для каждой отслеживаемой технологии, его можно легко контейнировать и развертывать, если ваша среда ориентирована на контейнеры, в противном случае вам просто нужно запустить каждый экспортер на правильных компьютерах
  4. Прометей очень, очень легкий тo развернуть
0 голосов
/ 26 ноября 2018

Используйте ELK - эластичный поиск logstash и стек kibana с filebeat. Filebeat - поделится содержимым файла журнала с logstash Logstash - будет сканировать, фильтровать и передавать необходимый контент для упругого поиска Elasticsearch - будет работать как БД,хранить содержимое из logstash в формате json как документы. Kibana - с помощью kibana вы можете искать необходимую информацию.Также вы можете строить графики и другие визуальные эффекты с соответствующими данными.

...