Skip To Content

Записать JSON в Kafka Topic

Выходной коннектор Записать JSON в Kafka Topic может использоваться для записи данных событий, адаптированных и отформатированных как исходный JSON, в Apache Kafka Topic. Для получения информации о работе с Apache Kafka см. раздел Введение в Apache Kafka.

Примечания по использованию

При работе с выходным коннектором Записать JSON в Kafka Topic имейте в виду следующее:

  • Используйте этот выходной коннектор для записи данных, адаптированных и отформатированных как исходный JSON, в раздел Kafka. Этот входной коннектор является производителем для Kafka.
  • Этот выходной коннектор связывает исходящий адаптер исходного JSON с исходящим транспортом Kafka.
  • Запись исходного файла JSON не обязательно должна содержать данные, представляющие геометрию. В раздел Kafka могут записываться непространственные данные.
  • Адаптер будет управлять как отдельными записями JSON, так и записями JSON, организованными в виде массива.
  • Kafka Inbound Transport поддерживает протоколы безопасности TLS 1.2 и SASL для аутентификации с помощью кластера или брокера Kafka.

Параметры

Ниже приведены параметры выходного коннектора Записать JSON в Kafka Topic:

ПараметрОписание

Имя

Описательное имя входного коннектора, используемое для ссылки в GeoEvent Manager.

Заменить пользовательскими свойствами Kafka

Указывает, заменяются ли свойства клиента GeoEvent Server Kafka по умолчанию. По умолчанию Нет.

  • Да – свойства клиента Kafka по умолчанию, предоставляемые транспортом, заменяются. Необходимо указать папку, зарегистрированную на GeoEvent Server, содержащую файл Kafka .properties с правильным форматированием для допустимой конфигурации Kafka. См. раздел Конфигурация Apache Kafka для получения списка поддерживаемых конфигураций и ожидаемого форматирования для указанного файла .properties.
  • Нет – Свойства клиента Kafka по умолчанию, предоставляемые транспортом, не заменяются. Значения Серверы Kafka Bootstrap и ID группы потребителей должны быть указаны.

Серверы Kafka Bootstrap

(Условия)

Список пар hostname:port, используемых для установки исходного подключения к кластеру Kafka. Пары Hostname:port должны быть разделены запятыми, например, broker0.example.com:9092,broker1.example.com:9092,broker2.example.com:9092.

Зарегистрированная папка для файла свойств Kafka

(Условия)

Папка, зарегистрированная на GeoEvent Server, содержащая файл Kafka .properties. Файл Kafka .properties определяет пользовательские свойства Kafka, когда для параметра Заменить пользовательскими свойствами Kafka установлено Да. Убедитесь, что папка, зарегистрированная на GeoEvent Server, является полным путем к местоположению файла Kafka.properties.

Имя файла свойств Kafka

(Условия)

Имя файла Kafka .properties, содержащего пользовательские свойства Kafka для конфигурации клиента. Укажите имя файла без расширения .properties.

  • Если имя пользовательского файла свойств Kafka является sample.properties, укажите это значение параметра как sample.

Название темы

Имя темы Kafka, в которую публикуются данные.

  • topic1

Примечание:

Исходящий транспорт Kafka не поддерживает публикацию данных в нескольких темах.

Включить Доставку только один раз

Указывает, соблюдается ли семантика exactly-once при записи в тему. Для получения дополнительной информации см. Семантика Exactly-once в документации Apache Kafka. По умолчанию – Да.

  • ДаKafka соблюдает семантику exactly-once.
  • НетKafka не соблюдает семантику exactly-once.

Примечание:

Убедитесь, что кластер Kafka поддерживает семантику exactly-once, прежде чем продолжить работу с параметром Включить Доставку только один раз. Включение семантики exactly-once может повлиять на производительность. Дополнительную информацию см. в разделе Конфигурации производителя в соответствии с авторскими правами третьих лиц в документации Apache Kafka.

Форматированный JSON

Указывает, имеет ли строка объекта JSON отступ с пробелом и форматированием новой строки. Этот JSON подходит только при записи в системный файл, содержимое которого может быть просмотрено в текстовом редакторе. По умолчанию Нет.

  • Да – объект JSON форматируется (подготавливается).
  • Нет – объект JSON не форматируется.

Необходима аутентификация

Указывает, требуется ли аутентификация для подключения к кластеру Kafka или брокеру Kafka. По умолчанию Нет.

  • Да – для подключения к кластеру или брокеру Kafka требуется аутентификация.
  • Нет – Для подключения к кластеру или брокеру Kafka аутентификация не требуется.

Аутентификация с использованием

(Условия)

Указывает протокол безопасности, используемый для защиты кластера Kafka. Варианты протоколов безопасности: TLS 1.2 и SASL.

  • TLS 1.2 – кластером Kafka используется протокол безопасности TLS 1.2. Убедитесь, что файл PKI кластера Kafka (сертификат x509) импортирован в доверенное хранилище машины ArcGIS Server, с которым настроен ArcGIS GeoEvent Server. Дополнительные сведения см. в разделе Импорт сертификата в ArcGIS Server в руководстве Настройка ArcGIS Server с существующим сертификатом центра сертификации (CA) для получения конкретных инструкций по импорту сертификатов.
  • SASL – кластер Kafka использует протокол безопасности SASL. Поддерживаются только SASL, SSL и Kerberos.

Примечание:

Используя Kerberos, убедитесь, что у учетной записи операционной системы, от имени которой запущен ArcGIS GeoEvent Server, есть права на чтение файла keytab в настройке и конфигурации Kerberos.

Этот параметр показывается, когда для свойства Требуется аутентификация задано Да.

Зарегистрированная папка для файла учетных данных

(Условия)

Папка, зарегистрированная в GeoEvent Server, которая содержит файл PKI кластера Kafka (сертификат x509). Убедитесь, что папка, зарегистрированная на GeoEvent Server, является полным путем к местоположению сертификата кластера Kafka.

Файл конфигурации учетных данных

(Условия)

Имя файла PKI кластера Kafka (сертификат x509). Сертификат и связанный с ним ключ должны храниться в формате PKCS#12, который представлен файлом с расширением .p12 или .pfx. Укажите имя файла в дополнении к расширению.

Примечание:

Для этого параметра поддерживаются только имя файла сертификата и расширение. Не указывайте относительные пути к сертификату для этого параметра. Зарегистрируйте полный путь к файлу сертификата с помощью параметра Зарегистрированная папка для файла учетных данных.

Этот параметр показывается, когда для свойства Требуется аутентификация задано Да. Это применимо только к протоколу TLS 1.2.

Пароль Keystore

(Условия)

Пароль для файлв PKI кластера Kafka (сертификат x509). Он также известен как личный ключ сертификата.

Тип аутентификации SASL

(Условия)

Определяет тип механизма аутентификации SASL, поддерживаемого кластером Kafka. Опции типа аутентификации SASL: SASL GSSAPI (Kerberos) и SASL PLAIN.

  • SASL/GSSAPI (Kerberos) – Кластер Kafka использует аутентификацию SASL/GSSAPI Kerberos.
  • SASL/PLAIN – Кластер Kafka использует аутентификацию SASL/PLAIN.

Участник Kerberos

(Условия)

Участник Kerberos для определенного пользователя, например, GeoEventKafkaClient1@example.com.

Использовать Key Tab

(Условия)

Указывает, используется ли key tab в настройках Kerberos. По умолчанию – Да.

  • Да — key tab используется в настройках Kerberos.
  • Нет – key tab не используется в настройках Kerberos.

Хранить ключ

(Условия)

Указывает, хранится ли ключ в настройках Kerberos. По умолчанию – Да.

  • Да – Ключ хранится в настройках Kerberos.
  • Нет – Ключ не хранится в настройках Kerberos.

Имя пользователя

(Условия)

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

Пароль

(Условия)

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

Советы и ограничения

Выходной коннектор Записать JSON в Kafka Topic является производителем для Kafka. К этому выходному коннектору применяются те же рекомендации, что и к любому другому внешнему производителю для Kafka.