neshkeev / jmx-demo

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Метрики

Сбор метрик

  1. Загрузить jmx_exporter:
curl -Lo ./jmx-exporter/jmx_prometheus_javaagent.jar https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.20.0/jmx_prometheus_javaagent-0.20.0.jar
  1. Запустить сервисы:
docker compose up
  1. Дождаться, когда во всех строках в колоке STATUS будет написано healthy:
docker compose ps
  1. Открыть localhost:9090

Подключение по JMX через JConsole

  1. Запустить сервисы (если еще не запущено):
docker compose up
  1. Дождаться, когда во всех строках в колоке STATUS будет написано healthy:
docker compose ps
  1. Открыть jconsole
jconsole
  1. Ввести localhost:9010 в поле Remote Process (Username и Password оставить пустыми)
  2. Нажать кнопку Connect
  3. В всплывающем диалоговом окне нажать кнопку Insecure Connection

Подключение по JMX через VisualVM

  1. Запустить сервисы (если еще не запущено):
docker compose up
  1. Дождаться, когда во всех строках в колоке STATUS будет написано healthy:
docker compose ps
  1. Загрузить VisualVM: https://visualvm.github.io/
  2. Установить и запустить VisualVM
  3. В главном меню выбрать File | Add JMX Connection...
  4. Ввести localhost:9010 в поле Connection
  5. Нажать OK
  6. В левой панели Applications двойным кликом мыши выбрать kafka.Kafka

Prometheus

Prometheus - это система сбора и хранения метрик. Для работы с ним необходимо:

  1. Запустить сервисы (если еще не запущено):
docker compose up
  1. Дождаться, когда во всех строках в колоке STATUS будет написано healthy:
docker compose ps
  1. Открыть Prometheus: http://localhost:9090
  2. В верхнем меню Prometheus нажать Status -> Targets
  3. Рядом со словом kafka нажать show more и дождаться, когда в колонке State будет написано Up
  4. В верхнем меню Prometheus нажать Graph
  5. В поле Expression написать gc и выбрать одно из дополнений
  6. Нажать кнопку Execute или клавишу Enter

Grafana

Grafana - это система визуализации метрик. Для работы с Grafana необходимо:

  1. Запустить сервисы (если еще не запущено):
docker compose up
  1. Дождаться, когда во всех строках в колоке STATUS будет написано healthy:
docker compose ps
  1. Запустить нагрузку:
docker compose exec -T kafka kafka-topics --bootstrap-server kafka:9092 --topic test-topic --create
docker compose exec -T kafka kafka-console-producer --bootstrap-server kafka:9092 --topic test-topic <<<$(yes 'Hello, World!' 2>/dev/null | head -n 100)
  1. Открыть Grafana: http://localhost:3000/login
  2. Войти под пользователем admin, пароль admin
  3. Grafana попросит поменять пароль, в качестве нового пароля можно снова указать admin
  4. Развернуть левую панель кнопкой типа "сендвич" (три горизонтальные черточки друг над другом)
  5. Открыть страницу Dashbords: http://localhost:3000/dashboards
  6. Нажать кнопку + Create Dashbord в середине экрана
  7. Нажать кнопку Import dashboard
  8. Ввести 721 в поле Find and import dashboards for common applications at grafana.com/dashboards
  9. Нажать кнопку Load рядом с полем
  10. Выбрать Prometheus в поле Select a Prometheus data source внизу страницы.
  11. Нажать кнопку Import.

About


Languages

Language:Shell 100.0%