Установка кластера kafka и zookeeper с использованием kubernetes - PullRequest
0 голосов
/ 10 мая 2019

Может кто-нибудь поделиться мне файлом yaml для создания кластера kafka с двумя брокерами kafka и кластером zookeeper с 3 серверами. Я новичок в kubernetes.

Ответы [ 3 ]

1 голос
/ 10 мая 2019

Взгляните на https://github.com/Yolean/kubernetes-kafka, Убедитесь, что ограничение памяти брокера составляет 2 ГБ или выше.

Поддержание надежного кластера кафки в Кубернетес все еще остается проблемой, удачи.

0 голосов
/ 10 мая 2019

Я думаю, что вы могли бы взглянуть на проект Strimzi здесь https://strimzi.io/. Он основан на шаблоне оператора Kubernetes и предоставляет простой способ развертывания и управления кластером Kafka в Kubernetes с использованием пользовательских ресурсов. Кластер Kafka описывается с помощью нового файла YAML ресурса "Kafka" для настройки всего, что вам нужно. Оператор позаботится об этом и развернет для вас ансамбль Zookeeper + кластер Kafka. Он также развертывает больше двух операторов для обработки тем и пользователей (но они являются необязательными).

0 голосов
/ 10 мая 2019

Рекомендую попробовать Стримзи Кафка Оператор . Используя его, вы можете определить кластер Kafka так же, как и другой объект Kubernetes - запись файла yaml. Более того, пользователи, темы и кластер Kafka Connect - это просто объекты k8s. Некоторые (не все!) Функции оператора Strimzi Kafka:

  • Безопасная связь между брокерами, а также между брокерами и зоопарком с помощью TLS
  • Возможность выставить кластер вне кластера k8s
  • Развертываемый как рулевой график (он сильно упрощает)
  • Обновление обновлений при изменении конфигурации кластера
  • Плавное масштабирование
  • Готов к мониторингу кластера, используя Прометей и Графана .

Стоит упомянуть отличную документацию .

Создать кластер Kafka так же просто, как применить манифест Kubernetes, например:

apiVersion: kafka.strimzi.io/v1beta1
kind: Kafka
metadata:
  name: my-cluster
spec:
  kafka:
    version: 2.2.0
    replicas: 3
    listeners:
      plain: {}
      tls: {}
    config:
      offsets.topic.replication.factor: 3
      transaction.state.log.replication.factor: 3
      transaction.state.log.min.isr: 2
      log.message.format.version: "2.2"
    storage:
      type: jbod
      volumes:
      - id: 0
        type: persistent-claim
        size: 100Gi
        deleteClaim: false
  zookeeper:
    replicas: 3
    storage:
      type: persistent-claim
      size: 100Gi
      deleteClaim: false
  entityOperator:
    topicOperator: {}
    userOperator: {}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...