2014-01-30 4 views
16

Я использую экземпляр DigiOcean с 512 мегабайтами памяти, я получаю ошибку ниже с помощью kafka. Я не специалист по разработке Java. Как настроить kafka для использования небольшого количества барана. Это отрыв. Я не хочу платить больше за час за большую машину.kafka 8 и память - Недостаточно памяти для Java Runtime Environment для продолжения

# 
# There is insufficient memory for the Java Runtime Environment to continue. 
# Native memory allocation (malloc) failed to allocate 986513408 bytes for committing reserved memory. 
# An error report file with more information is saved as: 
# //hs_err_pid6500.log 
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000bad30000, 986513408, 0) failed; error='Cannot allocate memory' (errno=12) 

ответ

37

Вы можете настроить размер кучи JVM путем редактирования kafka-server-start.sh, zookeeper-server-start.sh и так далее:

export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G" 

Параметр -Xms определяет минимальный размер кучи. Чтобы ваш сервер, по крайней мере, запустился, попробуйте изменить его, чтобы использовать меньше памяти. Учитывая, что у вас есть только 512M, вы должны изменить максимальный размер кучи (-Xmx) тоже:

export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M" 

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

1

Площадь: HotSpot/дс

Синопсис

Crashes due to failure to allocate large pages. 

On Linux, failures when allocating large pages can lead to crashes. When running JDK 7u51 or later versions, the issue can be recognized in two ways: 

    Before the crash happens, one or more lines similar to the following example will have been printed to the log: 

    os::commit_memory(0x00000006b1600000, 352321536, 2097152, 0) failed; 
    error='Cannot allocate memory' (errno=12); Cannot allocate large pages, 
    falling back to regular pages 

    If a file named hs_err is generated, it will contain a line similar to the following example: 

    Large page allocation failures have occurred 3 times 

The problem can be avoided by running with large page support turned off, for example, by passing the "-XX:-UseLargePages" option to the java binary. 
Смежные вопросы