Конфигурационные параметры Kafka Connect

Для конфигурации сервиса используйте следующие параметры, доступные в ADCM.

ПРИМЕЧАНИЕ
  • Некоторые из перечисленных параметров становятся доступны в UI ADCM после установки флага Advanced.

  • Значения, установленные в Custom-параметрах, перепишут текущие значения параметров, даже если они read-only.

Main

 

Параметр Описание Значение по умолчанию

tasks.max

Максимальное количество задач, которые могут быть созданы для этого коннектора

10

offset-syncs.topic.replication.factor

Фактор репликации для внутреннего топика offset-syncs.topic

1

checkpoint.topic.replication.factor:

Фактор репликации для внутреннего топика checkpoint.topic

1

sync.topic.acls.enabled

Включение мониторинга исходного кластера на предмет изменений ACL

false

kafka-connect-env.sh

 

Параметр Описание Значение по умолчанию

LOG_DIR

Каталог для хранения логов

/var/log/kafka-connect

KAFKA_OPTS

Переменные окружения Kafka

 — 

KAFKA_HEAP_OPTS

Размер heap, выделенный серверному процессу KAFKA

-Xms256M -Xmx2G

KAFKA_LOG4J_OPTS

Переменная окружения для конфигурации ведения журнала LOG4J

-Dlog4j.configuration=file:/etc/kafka-connect/config/connect-distributed-log4j.properties

Add property

Введенные в этом поле параметры и их значения перезаписывают параметры, указанные в пользовательском интерфейсе ADCM. В этом поле также есть возможность определить значения для всех пользовательских параметров, которые не отображаются в интерфейсе, но разрешены в файле конфигурации kafka-connect-env.sh

 — 

connect-distributed.properties

 

Параметр Описание Значение по умолчанию

group.id

Уникальная строка, идентифицирующая группу Kafka Connect, которой принадлежит этот коннектор

mm-connect

rest.port

Порт для работы Kafka Connect REST API

8083

plugin.path

Путь к плагину Kafka Connect

Преднастроенные значения:

  • /var/lib/kafka-connect/libs — общий путь к плагину;

  • /usr/lib/kafka-connect/plugins — путь к плагину Iceberg.

config.storage.replication.factor

Фактор репликации для config.storage.topic

1

offset.storage.replication.factor

Фактор репликации для offset.storage.topic

1

status.storage.replication.factor

Фактор репликации для status.storage.topic

1

offset.flush.interval.ms

Интервал, через который можно попытаться зафиксировать смещения для задач (в мс)

10000

key.converter

Преобразователь класса для ключевых данных Connect

org.apache.kafka.connect.converters.ByteArrayConverter

value.converter

Преобразователь класса для значения Connect data

org.apache.kafka.connect.converters.ByteArrayConverter

connector.client.config.override.policy

Имя класса или псевдоним реализации ConnectorClientConfigOverridePolicy

None

Add key, value

Введенные в этом поле параметры и их значения перезаписывают параметры, указанные в пользовательском интерфейсе ADCM. В этом поле также есть возможность определить значения для всех пользовательских параметров, которые не отображаются в интерфейсе, но разрешены в файле конфигурации connect-distributed.properties

 — 

connect-distributed-log4j.properties

 

Параметр Описание Значение по умолчанию

rootLogger

Уровень ведения логов

INFO

MaxBackupIndex

Максимальное количество сохраненых файлов

10

MaxFileSize

Максимальный размер файла

100MB

Настройка структуры файла конфигурации ведения журнала для Kafka Connect

Журнал (логгер) Имена пакетов по умолчанию Уровень события по умолчанию

loggers

org.reflections

ERROR

org.I0Itec.zkclient

ERROR

org.apache.zookeeper

ERROR

Add property

Введенные в этом поле параметры и их значения перезаписывают параметры, указанные в пользовательском интерфейсе ADCM. В этом поле также есть возможность определить значения для всех пользовательских параметров, которые не отображаются в интерфейсе, но разрешены в файле конфигурации connect-distributed-log4j.properties

connect_distributed_log4j_properties_template

 

    Шаблон connect_distributed_log4j_properties предназначен для указания пользовательских параметров логирования

    Значение по умолчанию:

{% set connect_distributed_log4j_properties = services.kafka_connect.config.connect_distributed_log4j_properties_content %}

log4j.rootLogger={{ connect_distributed_log4j_properties['rootLogger'] }}, connectDRFA, connectRFA, stdout

# Send the logs to the console.
#
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

#
# The `%X{connector.context}` parameter in the layout includes connector-specific and task-specific information
# in the log message, where appropriate. This makes it easier to identify those log messages that apply to a
# specific connector. Simply add this parameter to the log layout configuration below to include the contextual information.
#
#log4j.appender.stdout.layout.ConversionPattern=[%d] %p %X{connector.context}%m (%c:%L)%n
log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c:%L)%n
connect.log.pattern=[%d] %p %m (%c:%L)%n

{% for key, value in connect_distributed_log4j_properties['loggers'] | dictsort -%}
log4j.logger.{{ key }}={{ value }}
{% endfor -%}

log4j.appender.connectDRFA=org.apache.log4j.DailyRollingFileAppender
log4j.appender.connectDRFA.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.connectDRFA.File=${kafka.logs.dir}/connect-distributed.log
log4j.appender.connectDRFA.layout=org.apache.log4j.PatternLayout
log4j.appender.connectDRFA.layout.ConversionPattern=${connect.log.pattern}
log4j.appender.connectDRFA.MaxBackupIndex={{ connect_distributed_log4j_properties['MaxBackupIndex'] }}

log4j.appender.connectRFA=org.apache.log4j.RollingFileAppender
log4j.appender.connectRFA.File=${kafka.logs.dir}/connect-distributed.log
log4j.appender.connectRFA.layout=org.apache.log4j.PatternLayout
log4j.appender.connectRFA.layout.ConversionPattern=[%d] %p %m (%c)%n
log4j.appender.connectRFA.Append=true
log4j.appender.connectRFA.MaxBackupIndex={{ connect_distributed_log4j_properties['MaxBackupIndex'] }}
log4j.appender.connectRFA.MaxFileSize={{ connect_distributed_log4j_properties['MaxFileSize'] }}
SSL

 

Параметр Описание Значение по умолчанию

ssl.keystore.location

Расположение файла хранилища ключей keystore. Это необязательно для клиента и может использоваться для двухэтапной аутентификации клиента

 — 

ssl.keystore.password

Пароль хранилища для файла хранилища ключей keystore. Это необязательно для клиента и требуется только в том случае, если настроен параметр ssl.keystore.location

 — 

ssl.key.password

Пароль закрытого ключа в файле хранилища ключей keystore. Это необязательно для клиента

 — 

ssl.keystore.type

Формат файла хранилища ключей keystore. Это необязательно для клиента

 — 

ssl.truststore.location

Расположение файла хранилища truststore

 — 

ssl.truststore.password

Пароль хранилища для файла хранилища truststore. Это необязательно для клиента и требуется только в том случае, если настроен параметр ssl.truststore.location

 — 

ssl.truststore.type

Формат файла хранилища truststore

 — 

JAAS template

 

    Шаблон пользовательского файла jaas.conf предназначен для указания пользовательских данных подключения клиентов других сервисов к текущему сервису (пути к keytab-файлам, параметр useTicketCache и другие). Подробнее см. Настройка пользовательского jaas.conf.

    Значение по умолчанию:

{% if cluster.config.kerberos_client and cluster.config.kerberos_client.enable_kerberos %}
KafkaClient {
    com.sun.security.auth.module.Krb5LoginModule required
    useKeyTab=true
    storeKey=true
    useTicketCache=false
    serviceName="kafka"
    keyTab="{{ cluster.config.kerberos_client.keytab_dir }}/kafka-connect.service.keytab"
    principal="kafka-connect/{{ ansible_fqdn }}@{{ cluster.config.kerberos_client.realm }}";
};
{%- elif cluster.config.sasl_plain_auth_default_config is not none %}
    {%- set credential = cluster.config.sasl_plain_auth_default_config.sasl_plain_users_data %}
KafkaClient {
  org.apache.kafka.common.security.plain.PlainLoginModule required
  username="kafka-connect"
  password="{{ credential['kafka-connect'] }}";
};
{%- endif %}

 

Конфигурационные параметры компонента Kafka Connect Worker:

JMX Monitoring
Параметр Описание Значение по умолчанию

jmx_port

Порт, по которому отправляются JMX-метрики

9996

JMX Exporter Port

Порт для подключения к Prometheus JMX Exporter

11205

JMX Authentication

 
Включает аутентификацию для JMX в сервисе (используется при необходимости защиты доступа к JMX-порту).

Параметр Описание Значение по умолчанию

Username

Имя пользователя для аутентификации в JMX

monitoring

Password

Пароль пользователя для аутентификации в JMX

 — 

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней