devops
- Информация о материале
- Категория: devops
- Просмотров: 744
Простые приложения для работы с Kafka на Kotlin:
https://github.com/cherepakhin/shop_kafka_producer
https://github.com/cherepakhin/shop_kafka_consumer
В Readme.md этих проектов более подробное описание.
Составные части Kafka
Kafka — брокер сообщений, с помощью которого разные микросервисы общаются друг с другом. Также используется для отправки логов (например в Graylog и Elastic), хранения данных и т. д.
Брокер — узел Kafka, отвечает за прием, сохранение и передачу сообщений между продюсерами (Producer) и консюмерами (Consumer)
Консюмер (Consumer) — получатель сообщения
Продюсер (Producer) — отправитель сообщения
Zookepeer — хранит конфигурации, состояния, обнаруживает брокеров, выбирает контроллер кластера, отслеживает состояние узлов и обеспечивает функциональность и надёжность кластера
Контроллер кластера — отвечает за назначение мастеров партиций и отслеживает состояние брокеров
Offset Kafka — это понятие, которое используется для обозначения позиции в потоке сообщений. Offset отслеживает, на каком месте в потоке находится каждый консюмер, чтобы он мог читать сообщения с нужной позиции. Каждый раз, когда потребитель читает сообщение, его позиция сдвигается на одно сообщение вперед.
Партиция (Partition) — единица многопоточности в Kafka. Число партиций в топике можно лишь увеличивать. Партиции это те самые шарды, которые используются для шардирования в Kafka.
Реплика (Replica) — копия партиции. Реплика может быть размещена на другом узле для обеспечения отказоустойчивости. Обеспечивает репликацию данных.
Топик (topic) — служит для записи и чтения сообщений.
Консюмер группа (Consumer group) — группа получателей сообщений
Zookeeper
Перед запуском самого брокера Kafka, нужно запустить Zookeeper (это сервис координации сервисов с базой "ключ-значение"):
- Информация о материале
- Категория: devops
- Просмотров: 159
"Скажи пароль? - Пароль! - Проходи!"
Credentials - это пара user/password для различных доступов (git, deploy и т.п.).
- Информация о материале
- Категория: devops
- Просмотров: 173
Проблема: доступ в интернет или к репозиториям проекта сильно ограничен, практически, околонулевой. Решение - кешировать зависимости.
- Информация о материале
- Категория: devops
- Просмотров: 665
Prometheus - инструмент сбора метрик приложений.
Grafana - отображение собранных статистических данных о работе приложений.
На картинке ниже отображены результат работы двух приложений, расположенных на разных хостах.
- Информация о материале
- Категория: devops
- Просмотров: 185
При разработке на js в linux возможно появление ошибки типа "version `GLIBC_2.28' not found". Причина в том, что Node должен быть согласован с версией linux (точнее с версией glibc). Ниже описано диагностирование и варианты исправление этой проблемы.