Кафка использует Docker для производственных кластеров - PullRequest
0 голосов
/ 29 октября 2019

Нам нужно построить производственный кластер Kafka с 3-5 узлами в кластере,

У нас есть следующие варианты:

  1. Kafka в контейнерах Docker (кластер Kafkaвключает zookeeper и реестр схем на каждом узле)

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

Поскольку мы говорим о производственном кластере, нам нужна хорошая производительность, поскольку мы имеем высокую скорость чтения / записи на диски (размер диска 10 Т), хорошую производительность ввода-вывода и т. Д.

Так же, как Kafka, использующий Docker, отвечает требованиямдля производственных кластеров?

подробнее - https://www.infoq.com/articles/apache-kafka-best-practices-to-optimize-your-deployment/

1 Ответ

0 голосов
/ 29 октября 2019

Это можно сделать, конечно. У меня нет личного опыта с этим, но если у вас нет опыта управления другими контейнерами с состоянием, я бы посоветовал избегать этого.

Что касается «начала работы» с Kafka в контейнерах, Kubernetes является наиболее документированным способом, и Strimzi (бесплатная, дополнительная коммерческая поддержка Lightbend) или Confluent Operator (коммерческая поддержка Confluent) может сделать это легко, когдаиспользуя Kubernetes или Openshift. Или DC / OS предлагает услугу Kafka через Mesos / Marathon. Если у вас еще нет ни одной из этих служб, то, я думаю, очевидно, что вам следует отказаться от использования контейнеров.

Исходя из того, что я испытал, было бы гораздо проще поддерживать развертывание в «голом металле» или виртуализацию, чем в случае развертывания вручную в контейнерах. Особенно для регистрации, сбора метрик и статически назначенных отображений слушателей Kafka по сети. Confluent предоставляет сценарии Ansible для развертывания в таких средах


Это не означает, что есть компании, которые добились успеха или хотя бы попробовали. IBM, RedHat и Shopify сразу же появляются в моих поисках, например

Вот несколько разговоров о том, что нужно учитывать, когда Кафка находится в контейнерах https://www.confluent.io/kafka-summit-london18/kafka-in-containers-in-docker-in-kubernetes-in-the-cloud

https://kafka -summit.org/sessions/running-kafka-kubernetes-practical-guide/

...