Пространство кучи Java - Ошибка нехватки памяти - Kafka Broker с SASL_SSL - PullRequest
2 голосов
/ 14 октября 2019

, когда я использую приведенную ниже команду «/ usr / bin / kafka-delete-records» в брокере Kafka с портом 9092 PLAIN_TEXT, команда работает нормально, но когда я использую порт 9094 SASL_SSL, команда выдает следующую ошибку,Кто-нибудь знает решение использовать порт брокера Kafka 9094 с SASL_SSL?

$ssh **** ****@<IP address> /usr/bin/kafka-delete-records --bootstrap-server localhost:9094 --offset-json-file /kafka/records.json`

[2019-10-14 04:15:49,891] ERROR Uncaught exception in thread 'kafka-admin-client-thread | adminclient-1': (org.apache.kafka.common.utils.KafkaThread)

java.lang.OutOfMemoryError: Java heap space
    at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57)
    at java.nio.ByteBuffer.allocate(ByteBuffer.java:335)
    at org.apache.kafka.common.memory.MemoryPool$1.tryAllocate(MemoryPool.java:30)
    at org.apache.kafka.common.network.NetworkReceive.readFrom(NetworkReceive.java:112)
    at org.apache.kafka.common.network.KafkaChannel.receive(KafkaChannel.java:390)
    at org.apache.kafka.common.network.KafkaChannel.read(KafkaChannel.java:351)
    at org.apache.kafka.common.network.Selector.attemptRead(Selector.java:609)
    at org.apache.kafka.common.network.Selector.pollSelectionKeys(Selector.java:541)
    at org.apache.kafka.common.network.Selector.poll(Selector.java:467)
    at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:535)
    at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.run(KafkaAdminClient.java:1125)
    at java.lang.Thread.run(Thread.java:748)
Executing records delete operation
Records delete operation completed:

ПРИМЕЧАНИЕ: -Xmx указан как 8 ГБ, также общий объем памяти сервера составляет 16 ГБ

, проверьте текущийЗначение кучи ниже:

$ ps -ef | grep kafka
cp-kafka 11419     1  3 10:07 ?        00:05:27 java -Xms8g -Xmx8g  -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35  ........ io.confluent.support.metrics.SupportedKafka /etc/kafka/server.properties

1 Ответ

2 голосов
/ 14 октября 2019

Скорее всего, исключением OOM является только красная сельдь, см. JIRA KAFKA-4493 . Таким образом, реальная проблема заключается в соединении SASL-SSL, которое ваш клиент не может установить должным образом. Включите отладку SSL на стороне клиента и продолжайте оттуда:

$ export KAFKA_OPTS="-Djavax.net.debug=handshake"
$ /usr/bin/kafka-delete-records ...
...