При развертывании Spring-Cloud-Data-Flow на AKS, как указать использование кластера Kafka с внешним размещением - PullRequest
0 голосов
/ 14 июля 2020

Я пробовал развертывание SCDF на основе Helm (https://docs.spring.io/spring-cloud-dataflow-server-kubernetes/docs/current-SNAPSHOT/reference/htmlsingle/#_helm_installation), и оно может использовать либо систему обмена сообщениями RabbitMQ, либо систему обмена сообщениями Kafka - оба варианта можно развернуть в диаграмме Helm. Однако в моем проекте уже есть собственный экземпляр Kafka, работающий в облаке Confluent, который я хотел бы использовать вместо «внутреннего» экземпляра. Затем я также попробовал развернуть SCDF в Kubectl (https://docs.spring.io/spring-cloud-dataflow-server-kubernetes/docs/current-SNAPSHOT/reference/htmlsingle/#_deploying_with_code_kubectl_code) и увидел, что мне нужно снова запустить один из двух компонентов обмена сообщениями. Я хотел бы знать, как лучше всего настроить SCDF для использования моего собственного экземпляра Kafka - может ли кто-нибудь пролить свет на это, пожалуйста?

1 Ответ

0 голосов
/ 14 июля 2020

Ссылки на документы, которые у вас есть выше, довольно старые, и поэтому вы можете захотеть обновить их до последней версии.

Для получения последней информации о SCDF вам необходимо указать здесь Кроме того, есть SCDF микросайт , на который вы также можете ссылаться.

Чтобы ответить на ваш конкретный c вопрос, поскольку Apache Kafka используется в качестве связующего в вашем потоковом приложении, у вас есть два параметры для установки внешней конфигурации кластера Kafka:

  • Установить через конфигурацию сервера Skipper в качестве свойства уровня сервера (поскольку сервер Skipper отвечает за непрерывное развертывание потоковых приложений в SCDF, вам необходимо настроить потоковое приложение соответствующие конфигурации в конфигурации сервера Skipper).

Пример этой конфигурации можно найти здесь . Вы заметите, как свойство environmentVariables K8s deployer используется для настройки свойств Kafka c.

data:
  application.yaml: |-
    spring:
      cloud:
        skipper:
          server:
            platform:
              kubernetes:
                accounts:
                  default:
                    environmentVariables: 'SPRING_CLOUD_STREAM_KAFKA_BINDER_BROKERS=${KAFKA_SERVICE_HOST}:${KAFKA_SERVICE_PORT},SPRING_CLOUD_STREAM_KAFKA_BINDER_ZK_NODES=${KAFKA_ZK_SERVICE_HOST}:${KAFKA_ZK_SERVICE_PORT}'

  • Другой вариант - установить свойства c, указанные в Kafka, в качестве свойств развертывания приложения. во время развертывания потока. Это особенно полезно, если вы хотите переопределить конфигурацию Kafka во время развертывания потока.

Если у вас одинаковая конфигурация Kafka для всех потоков, вы можете выбрать первый вариант и установить Skipper ConfigMap на укажите конфигурацию Kafka как environmentVariables.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...