Конфигурационные параметры Kafka REST Proxy
Для конфигурации сервиса используйте следующие параметры, доступные в ADCM.
|
ПРИМЕЧАНИЕ
|
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
rest_listener_port |
Порт, который слушает REST Proxy. Указывается в качестве параметра |
8082 |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
LOG_DIR |
Каталог для хранения логов |
/var/log/kafka-rest |
JMX_PORT |
Порт, по которому Kafka REST Proxy отдает JMX-метрики |
9998 |
KAFKAREST_OPTS |
Имя переменной окружения Kafka REST Proxy |
-Djava.security.auth.login.config=/etc/kafka-rest/jaas_config.conf |
KAFKAREST_JMX_OPTS |
Параметры JVM в части опций JMX (авторизация, подключение, ssl) |
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false |
KAFKAREST_HEAP_OPTS |
Размер heap, выделенный процессу Kafka REST Proxy |
-Xmx1024M |
Add property |
Введенные в этом поле параметры и их значения перезаписывают параметры, указанные в пользовательском интерфейсе ADCM. В этом поле также есть возможность определить значения для всех пользовательских параметров, которые не отображаются в интерфейсе, но разрешены в файле конфигурации kafka-rest-env.sh |
— |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
authentication.method |
Способ аутентификации |
BASIC |
authentication.roles |
Список ролей пользователей, разделенных запятыми. Чтобы авторизоваться на сервере Kafka REST Proxy, аутентифицированный пользователь должен принадлежать хотя бы к одной из этих ролей. Подробнее см. Basic-аутентификация |
admin |
authentication.realm |
Cоответствовует разделу в файле jaas_config.file, который определяет, как сервер аутентифицирует пользователей, и должен быть передан как параметр JVM во время запуска сервера |
KafkaRest |
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
id |
Уникальный идентификатор для этого экземпляра сервера REST |
kafka-rest-server |
consumer.threads |
Минимальное количество потоков для выполнения потребительского запроса. Параметр следует установить выше, чем максимальное количество потребителей в одной группе потребителей |
50 |
consumer.request.timeout.ms |
Максимальное общее время ожидания сообщений для запроса, если максимальный размер запроса еще не достигнут (в мс) |
100 |
consumer.request.max.bytes: |
Максимальное количество байтов в ключах сообщений и значениях, возвращаемых одним запросом |
67108864 |
fetch.min.bytes |
Минимальное количество байтов в ключах сообщений и значениях, возвращаемых одним запросом |
-1 |
ssl.endpoint.identification.algorithm |
Алгоритм идентификации конечной точки для проверки сервера c использованием сертификата сервера |
— |
ssl.keystore.location |
Используется для HTTPS. Расположение файла хранилища keystore SSL |
— |
ssl.keystore.type |
Формат файла хранилища keystore |
— |
ssl.keystore.password |
Используется для HTTPS. Пароль для доступа к keystore |
— |
ssl.key.password |
Используется для HTTPS. Пароль ключа, содержащегося в keystore |
— |
ssl.truststore.location |
Используется для HTTPS. Расположение truststore. Требуется только для аутентификации HTTPS-клиентов |
— |
ssl.truststore.type |
Формат файла хранилища truststore |
— |
ssl.truststore.password |
Используется для HTTPS. Пароль для доступа к хранилищу truststore |
— |
client.ssl.keystore.location |
Расположение файла хранилища keystore для использования SSL |
— |
client.ssl.keystore.password |
Пароль для доступа к keystore |
— |
client.ssl.key.password |
Пароль ключа, содержащегося в keystore |
— |
client.ssl.keystore.type |
Формат файла keystore |
— |
client.ssl.truststore.location |
Расположение файла хранилища truststore SSL |
— |
client.ssl.truststore.password |
Пароль для доступа к хранилищу truststore |
— |
client.ssl.truststore.type |
Формат файла хранилища truststore |
— |
client.ssl.endpoint.identification.algorithm |
Алгоритм идентификации конечной точки для проверки сервера |
— |
Add key, value |
Введенные в этом поле параметры и их значения перезаписывают параметры, указанные в пользовательском интерфейсе ADCM. В этом поле также есть возможность определить значения для всех пользовательских параметров, которые не отображаются в интерфейсе, но разрешены в файле конфигурации kafka-rest.properties |
— |
Шаблон пользовательского файла jaas.conf предназначен для указания пользовательских данных подключения клиентов других сервисов к текущему сервису (пути к keytab-файлам, параметр useTicketCache и другие). Подробнее см. Настройка пользовательского jaas.conf.
Значение по умолчанию:
{% if cluster.config.basic_auth_default_config is not none %}
{{ services.kafka_rest.config.basic_auth_properties_content['authentication.realm'] }} {
org.eclipse.jetty.jaas.spi.PropertyFileLoginModule required
file="{{ rest_home_path }}/config/password.properties"
debug="false";
};
{% endif %}
{% 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-rest.service.keytab"
principal="kafka-rest/{{ 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-rest"
password="{{ credential['kafka-rest'] }}";
};
{% endif %}
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
JAAS Entry |
Раздел пользовательского файла jaas.conf, в котором указан список пользователей для аутентификации в Kafka. Подробнее см. Использование kafka-rest-security |
KafkaClient |
Конфигурационные параметры компонента Kafka REST Proxy:
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
log4j.rootLogger |
Настройка уровня ведения логов |
INFO |
Шаблон пользовательского файла log4j_properties предназначен для указания пользовательских параметров логирования.
Значение по умолчанию:
{%- set kafka_rest_server_log4j_properties_configuration = services.kafka_rest.SERVER.config.log4j_properties_configuration %}
log4j.rootLogger={{ kafka_rest_server_log4j_properties_configuration['log4j.rootLogger'] }}, stdout, file
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c:%L)%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.maxBackupIndex=10
log4j.appender.file.maxFileSize=100MB
log4j.appender.file.File=${kafka-rest.log.dir}/kafka-rest.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%d] %p %m (%c)%n
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
jmx_port |
Порт, по которому отправляются JMX-метрики |
9998 |
JMX Exporter Port |
Порт для подключения к Prometheus JMX Exporter |
11204 |
Включает аутентификацию для JMX в сервисе (используется при необходимости защиты доступа к JMX-порту).
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
Username |
Имя пользователя для аутентификации в JMX |
monitoring |
Password |
Пароль пользователя для аутентификации в JMX |
— |